home-manager wallpaper-changer

This commit is contained in:
Sam 2024-05-11 20:55:27 +01:00
parent f69ffa5f23
commit 67c39715ce
13 changed files with 124 additions and 110 deletions

View File

@ -4,6 +4,11 @@
home.username = "sam";
home.homeDirectory = "/home/sam";
home.stateVersion = "23.11";
imports = [
./git.nix
] ++ (builtins.attrValues outputs.homeManagerModules); # import all homeManagerModules?
home.packages = [
pkgs.firefox
pkgs.neovim
@ -12,18 +17,6 @@
pkgs.xfce.thunar
];
# You can import other home-manager modules here
imports = [
# If you want to use modules your own flake exports (from modules/home-manager):
# outputs.homeManagerModules.example
# Or modules exported from other flakes (such as nix-colors):
# inputs.nix-colors.homeManagerModules.default
# You can also split up your configuration and import pieces of it here:
# ./nvim.nix
] ++ (builtins.attrValues outputs.homeManagerModules); # import all homeManagerModules?
programs.zsh = {
enable = true;
enableCompletion = true;
@ -74,15 +67,6 @@
qt.style.name = "adwaita-dark";
qt.style.package = pkgs.adwaita-qt;
programs.git = {
enable=true;
extraConfig= {
pull.rebase = false;
};
userEmail="samual.shop@proton.me";
userName="sam";
};
home.sessionVariables = {
EDITOR="nvim";
MUSIC="$HOME/mus/music_data/";
@ -94,3 +78,4 @@
programs.home-manager.enable = true;
}

View File

@ -0,0 +1,15 @@
{ pkgs, lib, config, ... }:
{
programs.git = {
enable = true;
package = pkgs.gitAndTools.gitFull;
userName = "Sam";
userEmail = "samual.shop@proton.me";
aliases = { };
extraConfig = {
pull.rebase = false;
init.defaultBranch = "master";
};
ignores = [ ".direnv" "result" ];
};
}

View File

@ -4,7 +4,9 @@
pkgs,
...
}: {
imports = [
../wallpaper-changer/swww-wallpaper-changer
];
wayland.windowManager.hyprland = {

View File

@ -0,0 +1,15 @@
{ pkgs, ... }:
let
scripts = {
swww-wallpaper-changer = pkgs.writeShellApplication {
name = "swww-wallpaper-changer";
text = builtins.readFile ./swww-wallpaper-changer.sh;
};
};
in
{
home.packages = builtins.attrValues {
inherit (scripts)
swww-wallpaper-changer;
};
}

View File

@ -0,0 +1,16 @@
{
lib,
config,
pkgs,
...
}: {
# Let it try to start a few more times
systemd.user.services.waybar = {
Unit.StartLimitBurst = 30;
};
programs.waybar = {
enable = true;
#package = "";
systemd.enable = true;
};
}

View File

@ -5,8 +5,9 @@
...
}: {
imports = [
./global
./features/desktop/hyprland
./common/core
./common/optional/desktop/hyprland
./common/optional/desktop/waybar.nix
];
# ------

View File

@ -0,0 +1,14 @@
{ pkgs, lib, ... }:
{
environment.systemPackages = with pkgs; [
sddm-theme
libsForQt5.qt5.qtgraphicaleffects #required for sugar candy
];
services.displayManager.sddm = {
enable = true;
package = lib.mkForce pkgs.libsForQt5.sddm;
theme = "sugar-candy";
};
services.displayManager.sddm.wayland.enable = true;
}

View File

@ -0,0 +1,8 @@
{ pkgs, ... }:
{
programs.hyprland = {
enable = true;
xwayland.enable = true;
portalPackage = pkgs.xdg-desktop-portal-hyprland;
};
}

View File

@ -0,0 +1,20 @@
{ pkgs, ... }:
{
sound.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
# alsa.support32Bit = true;
pulse.enable = true;
wireplumber.enable = true;
jack.enable = true;
};
environment.systemPackages = [
pkgs.pamixer
pkgs.pavucontrol
];
}

View File

@ -4,41 +4,22 @@
imports =
[
./hardware-configuration.nix
../common/optional/pipewire.nix
../common/optional/hyprland.nix
../common/optional/displayManager/sddm.nix
];
nixpkgs = {
# You can add overlays here
overlays = [
# Add overlays your own flake exports (from overlays and pkgs dir):
outputs.overlays.additions
outputs.overlays.modifications
outputs.overlays.unstable-packages
# You can also add overlays exported from other flakes:
# neovim-nightly-overlay.overlays.default
# Or define it inline, for example:
# (final: prev: {
# hi = final.hello.overrideAttrs (oldAttrs: {
# patches = [ ./change-hello-to-hi.patch ];
# });
# })
];
# Configure your nixpkgs instance
config = {
# Disable if you don't want unfree packages
allowUnfree = true;
};
};
# home-manager = {
# extraSpecialArgs = { inherit inputs; };
# users = {
# sam = import ./home.nix;
# };
# };
nix.settings.experimental-features = [ "nix-command" "flakes" ];
boot.loader.grub.enable = true;
@ -59,8 +40,8 @@
services.printing.enable = true;
sound.enable = true;
hardware.pulseaudio.enable = true;
# sound.enable = true;
# hardware.pulseaudio.enable = true;
services.libinput.enable = true;
@ -72,27 +53,27 @@
users.users.sam.shell = pkgs.zsh;
environment.systemPackages = with pkgs; [
curl
vim
home-manager
tmux
waybar
git
mako
libnotify
wl-clipboard
swww
rofi-wayland
networkmanagerapplet
htop
sddm-theme
sddm
sshfs-fuse
wdisplays
# curl
# vim
# home-manager
# tmux
# waybar
# git
# mako
# libnotify
# wl-clipboard
# swww
# rofi-wayland
# networkmanagerapplet
# htop
# sddm-theme
# sddm
# sshfs-fuse
# wdisplays
wallpaper_changer
#(callPackage ../../nixos_modules/themes/sddm-sugar-candy.nix{}).sddm-sugar-candy-theme
libsForQt5.qt5.qtgraphicaleffects #required for sugar candy
#(import ../../nixos_modules/scripts/wallpaper_changer.nix { inherit pkgs; })
# #(callPackage ../../nixos_modules/themes/sddm-sugar-candy.nix{}).sddm-sugar-candy-theme
# libsForQt5.qt5.qtgraphicaleffects #required for sugar candy
# #(import ../../nixos_modules/scripts/wallpaper_changer.nix { inherit pkgs; })
];
programs.gnupg.agent = {
@ -101,10 +82,6 @@
};
programs.zsh.enable = true;
programs.hyprland = {
enable = true;
xwayland.enable = true;
};
hardware = {
opengl.enable = true;
@ -112,17 +89,6 @@
};
services.openssh.enable = true;
# services.displayManager.sddm = {
# enable = true;
# theme = "sugar-candy";
# };
services.displayManager.sddm = {
enable = true;
package = lib.mkForce pkgs.libsForQt5.sddm;
theme = "sugar-candy";
};
services.displayManager.sddm.wayland.enable = true;
system.stateVersion = "23.11";

View File

@ -1,17 +0,0 @@
{ lib, config, ...}:
let
cfg = config.sddm;
in {
options = {
sddm.enable = lib.mkEnableOption "Enable Module";
dataDir = mkOption {
type = types.path;
description = "sddm theme path";
default = "/usr/share/sddm/themes/${theme}";
};
};
config = lib.mkIf cfg.enable {
#config contents
}
}

View File

@ -1,11 +0,0 @@
# Uses swww to cycle through wallpapers in a random order.
# xpo [local port] [remote host] [remote port]
{
lib,
writeShellApplication,
swww,
}:
(writeShellApplication {
name = "wallpaper-changer";
text = builtins.readFile ./wallpaper-changer.sh;
})