328 current 1970-01-01 01:00:00 23.11.20240518.e7cc617 6.6.30-rt30 *
This commit is contained in:
		| @@ -3,12 +3,11 @@ | ||||
|     ../../modules/home | ||||
|   ]; | ||||
|  | ||||
|   shell.enable = true; | ||||
|   git.enable = true; | ||||
|   music.enable = true; | ||||
|   sway.enable = true; | ||||
|   sway.laptop = true; | ||||
|   myPrograms.enable = true; | ||||
|   myConfig = { | ||||
|     enable = true; | ||||
|     desktop = true; | ||||
|     laptop = true; | ||||
|   }; | ||||
|  | ||||
|   # Home Manager needs a bit of information about you and the paths it should | ||||
|   # manage. | ||||
|   | ||||
| @@ -1,3 +1,26 @@ | ||||
| {...}: { | ||||
| { | ||||
|   lib, | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.myConfig; | ||||
| in { | ||||
|   imports = [./git ./music ./programs ./shell ./sway]; | ||||
|  | ||||
|   options.myConfig = { | ||||
|     enable = lib.mkEnableOption "custom home-manager config"; | ||||
|     desktop = lib.mkEnableOption "custom home-manager config for desktop use"; | ||||
|     laptop = lib.mkEnableOption "extra settings for laptop use"; | ||||
|   }; | ||||
|  | ||||
|   config.myConfig = lib.mkIf cfg.enable { | ||||
|     shell.enable = true; | ||||
|     git.enable = true; | ||||
|  | ||||
|     sway.enable = lib.mkIf cfg.desktop true; | ||||
|     music.enable = lib.mkIf cfg.desktop true; | ||||
|     programs.enable = lib.mkIf cfg.desktop true; | ||||
|  | ||||
|     sway.laptop = lib.mkIf cfg.laptop true; | ||||
|   }; | ||||
| } | ||||
|   | ||||
| @@ -3,16 +3,16 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.git; | ||||
|   cfg = config.myConfig.git; | ||||
| in { | ||||
|   imports = [./lazygit.nix]; | ||||
|  | ||||
|   options = { | ||||
|     git.enable = lib.mkEnableOption "git"; | ||||
|   options.myConfig.git = { | ||||
|     enable = lib.mkEnableOption "git"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|     git.lazygit.enable = lib.mkDefault true; | ||||
|     myConfig.git.lazygit.enable = lib.mkDefault true; | ||||
|  | ||||
|     programs.git = { | ||||
|       enable = true; | ||||
|   | ||||
| @@ -3,10 +3,10 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.git.lazygit; | ||||
|   cfg = config.myConfig.git.lazygit; | ||||
| in { | ||||
|   options = { | ||||
|     git.lazygit.enable = lib.mkEnableOption "lazygit, a git tui"; | ||||
|   options.myConfig.git.lazygit = { | ||||
|     enable = lib.mkEnableOption "lazygit, a git tui"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -4,15 +4,15 @@ | ||||
|   inputs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.music; | ||||
|   cfg = config.myConfig.music; | ||||
| in { | ||||
|   imports = [./mpd.nix]; | ||||
|  | ||||
|   options = { | ||||
|     music.enable = lib.mkEnableOption "make the system ready for listening to music"; | ||||
|   options.myConfig.music = { | ||||
|     enable = lib.mkEnableOption "make the system ready for listening to music"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|     music.mpd.enable = lib.mkDefault true; | ||||
|     myConfig.music.mpd.enable = lib.mkDefault true; | ||||
|   }; | ||||
| } | ||||
|   | ||||
| @@ -4,10 +4,10 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.music.mpd; | ||||
|   cfg = config.myConfig.music.mpd; | ||||
| in { | ||||
|   options = { | ||||
|     music.mpd.enable = lib.mkEnableOption "Music Player Daemon"; | ||||
|   options.myConfig.music.mpd = { | ||||
|     enable = lib.mkEnableOption "Music Player Daemon"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -4,19 +4,21 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.myPrograms; | ||||
|   cfg = config.myConfig.programs; | ||||
| in { | ||||
|   imports = [./foot.nix ./thunderbird.nix ./nextcloud.nix ./udiskie.nix]; | ||||
|  | ||||
|   options = { | ||||
|     myPrograms.enable = lib.mkEnableOption "programs for desktop use"; | ||||
|   options.myConfig.programs = { | ||||
|     enable = lib.mkEnableOption "programs for desktop use"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|     myPrograms.foot.enable = lib.mkDefault true; | ||||
|     myPrograms.thunderbird.enable = lib.mkDefault true; | ||||
|     myPrograms.nextcloud.enable = lib.mkDefault true; | ||||
|     myPrograms.udiskie.enable = lib.mkDefault true; | ||||
|     myConfig.programs = { | ||||
|       foot.enable = lib.mkDefault true; | ||||
|       thunderbird.enable = lib.mkDefault true; | ||||
|       nextcloud.enable = lib.mkDefault true; | ||||
|       udiskie.enable = lib.mkDefault true; | ||||
|     }; | ||||
|  | ||||
|     home.packages = with pkgs; [ | ||||
|       unzip | ||||
|   | ||||
| @@ -3,10 +3,10 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.myPrograms.foot; | ||||
|   cfg = config.myConfig.programs.foot; | ||||
| in { | ||||
|   options = { | ||||
|     myPrograms.foot.enable = lib.mkEnableOption "foot, a lightweight wayland terminal emulator"; | ||||
|   options.myConfig.programs.foot = { | ||||
|     enable = lib.mkEnableOption "foot, a lightweight wayland terminal emulator"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -3,10 +3,10 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.myPrograms.nextcloud; | ||||
|   cfg = config.myConfig.programs.nextcloud; | ||||
| in { | ||||
|   options = { | ||||
|     myPrograms.nextcloud.enable = lib.mkEnableOption "nextcloud client"; | ||||
|   options.myConfig.programs.nextcloud = { | ||||
|     enable = lib.mkEnableOption "nextcloud client"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -3,10 +3,10 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.myPrograms.thunderbird; | ||||
|   cfg = config.myConfig.programs.thunderbird; | ||||
| in { | ||||
|   options = { | ||||
|     myPrograms.thunderbird.enable = lib.mkEnableOption "thunderbird, a email client"; | ||||
|   options.myConfig.programs.thunderbird = { | ||||
|     enable = lib.mkEnableOption "thunderbird, a email client"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -3,10 +3,10 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.myPrograms.udiskie; | ||||
|   cfg = config.myConfig.programs.udiskie; | ||||
| in { | ||||
|   options = { | ||||
|     myPrograms.udiskie.enable = lib.mkEnableOption "auto media mounting"; | ||||
|   options.myConfig.programs.udiskie = { | ||||
|     enable = lib.mkEnableOption "auto media mounting"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -3,10 +3,10 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.shell.bat; | ||||
|   cfg = config.myConfig.shell.bat; | ||||
| in { | ||||
|   options = { | ||||
|     shell.bat.enable = lib.mkEnableOption "bat, a cat replacement with syntax highlighting"; | ||||
|   options.myConfig.shell.bat = { | ||||
|     enable = lib.mkEnableOption "bat, a cat replacement with syntax highlighting"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -4,10 +4,10 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.shell.btop; | ||||
|   cfg = config.myConfig.shell.btop; | ||||
| in { | ||||
|   options = { | ||||
|     shell.btop.enable = lib.mkEnableOption "btop, a system monitor"; | ||||
|   options.myConfig.shell.btop = { | ||||
|     enable = lib.mkEnableOption "btop, a system monitor"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -3,18 +3,20 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.shell; | ||||
|   cfg = config.myConfig.shell; | ||||
| in { | ||||
|   imports = [./zsh.nix ./bat.nix ./btop.nix ./neovim.nix]; | ||||
|  | ||||
|   options = { | ||||
|     shell.enable = lib.mkEnableOption "my shell environment"; | ||||
|   options.myConfig.shell = { | ||||
|     enable = lib.mkEnableOption "my shell environment"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|     shell.zsh.enable = lib.mkDefault true; | ||||
|     shell.neovim.enable = lib.mkDefault true; | ||||
|     shell.btop.enable = lib.mkDefault true; | ||||
|     shell.bat.enable = lib.mkDefault true; | ||||
|     myConfig.shell = { | ||||
|       zsh.enable = lib.mkDefault true; | ||||
|       neovim.enable = lib.mkDefault true; | ||||
|       btop.enable = lib.mkDefault true; | ||||
|       bat.enable = lib.mkDefault true; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
|   | ||||
| @@ -4,10 +4,10 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.shell.neovim; | ||||
|   cfg = config.myConfig.shell.neovim; | ||||
| in { | ||||
|   options = { | ||||
|     shell.neovim.enable = lib.mkEnableOption "neovim"; | ||||
|   options.myConfig.shell.neovim = { | ||||
|     enable = lib.mkEnableOption "neovim"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -4,10 +4,10 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.shell.zsh; | ||||
|   cfg = config.myConfig.shell.zsh; | ||||
| in { | ||||
|   options = { | ||||
|     shell.zsh.enable = lib.mkEnableOption "Zsh, an advanced shell"; | ||||
|   options.myConfig.shell.zsh = { | ||||
|     enable = lib.mkEnableOption "Zsh, an advanced shell"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|   lib, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.sway; | ||||
|   cfg = config.myConfig.sway; | ||||
|  | ||||
|   rotate_lisgd = pkgs.writeShellScriptBin "rotate_lisgd" '' | ||||
|     # PREV_ORIENTATION and ORIENTATION are given by rot8 | ||||
| @@ -44,19 +44,21 @@ | ||||
| in { | ||||
|   imports = [./kanshi.nix ./waybar.nix ./theme.nix ./mako.nix]; | ||||
|  | ||||
|   options = { | ||||
|     sway.enable = lib.mkEnableOption "sway, a lightweight window manager"; | ||||
|     sway.laptop = lib.mkEnableOption "laptop config"; | ||||
|   options.myConfig.sway = { | ||||
|     enable = lib.mkEnableOption "sway, a lightweight window manager"; | ||||
|     laptop = lib.mkEnableOption "laptop config"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|     sway.kanshi.enable = lib.mkDefault true; | ||||
|     sway.waybar.enable = lib.mkDefault true; | ||||
|     sway.theming.enable = lib.mkDefault true; | ||||
|     sway.mako.enable = lib.mkDefault true; | ||||
|     sway.waybar.battery = lib.mkIf cfg.laptop (lib.mkDefault true); | ||||
|     sway.waybar.backlight = lib.mkIf cfg.laptop (lib.mkDefault true); | ||||
|     sway.waybar.squeekboard = lib.mkIf cfg.laptop (lib.mkDefault true); | ||||
|     myConfig.sway = { | ||||
|       kanshi.enable = lib.mkDefault true; | ||||
|       waybar.enable = lib.mkDefault true; | ||||
|       theming.enable = lib.mkDefault true; | ||||
|       mako.enable = lib.mkDefault true; | ||||
|       waybar.battery = lib.mkIf cfg.laptop (lib.mkDefault true); | ||||
|       waybar.backlight = lib.mkIf cfg.laptop (lib.mkDefault true); | ||||
|       waybar.squeekboard = lib.mkIf cfg.laptop (lib.mkDefault true); | ||||
|     }; | ||||
|  | ||||
|     home.packages = with pkgs; [ | ||||
|       swaylock # screen locking | ||||
|   | ||||
| @@ -4,11 +4,11 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.sway.kanshi; | ||||
|   cfg = config.myConfig.sway.kanshi; | ||||
| in { | ||||
|   options = { | ||||
|     sway.kanshi.enable = lib.mkEnableOption "kanshi, a dynamic display recognizer"; | ||||
|     sway.kanshi.laptop = lib.mkEnableOption "laptop workspaces"; | ||||
|   options.myConfig.sway.kanshi = { | ||||
|     enable = lib.mkEnableOption "kanshi, a dynamic display recognizer"; | ||||
|     laptop = lib.mkEnableOption "laptop workspaces"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -3,10 +3,10 @@ | ||||
|   config, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.sway.mako; | ||||
|   cfg = config.myConfig.sway.mako; | ||||
| in { | ||||
|   options = { | ||||
|     sway.mako.enable = lib.mkEnableOption "mako, a notification deamon"; | ||||
|   options.myConfig.sway.mako = { | ||||
|     enable = lib.mkEnableOption "mako, a notification deamon"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.sway.theming; | ||||
|   cfg = config.myConfig.sway.theming; | ||||
|  | ||||
|   # currently, there is some friction between sway and gtk: | ||||
|   # https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland | ||||
| @@ -13,8 +13,8 @@ | ||||
|     gsettings set $gnome_schema gtk-theme 'Dracula' | ||||
|   ''; | ||||
| in { | ||||
|   options = { | ||||
|     sway.theming.enable = lib.mkEnableOption "theming for sway"; | ||||
|   options.myConfig.sway.theming = { | ||||
|     enable = lib.mkEnableOption "theming for sway"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   cfg = config.sway.waybar; | ||||
|   cfg = config.myConfig.sway.waybar; | ||||
|  | ||||
|   schema = "org.gnome.desktop.a11y.applications"; | ||||
|   key = "screen-keyboard-enabled"; | ||||
| @@ -25,12 +25,12 @@ | ||||
|     fi | ||||
|   ''; | ||||
| in { | ||||
|   options = { | ||||
|     sway.waybar.enable = lib.mkEnableOption "waybar, a status bar for wayland compositors"; | ||||
|     sway.waybar.squeekboard = lib.mkEnableOption "squeekboard"; | ||||
|     sway.waybar.mpd = lib.mkEnableOption "mpd"; | ||||
|     sway.waybar.battery = lib.mkEnableOption "battery"; | ||||
|     sway.waybar.backlight = lib.mkEnableOption "backlight"; | ||||
|   options.myConfig.sway.waybar = { | ||||
|     enable = lib.mkEnableOption "waybar, a status bar for wayland compositors"; | ||||
|     squeekboard = lib.mkEnableOption "squeekboard"; | ||||
|     mpd = lib.mkEnableOption "mpd"; | ||||
|     battery = lib.mkEnableOption "battery"; | ||||
|     backlight = lib.mkEnableOption "backlight"; | ||||
|   }; | ||||
|  | ||||
|   config = lib.mkIf cfg.enable { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user