diff options
author | Tim Keller <tjk@tjkeller.xyz> | 2024-10-02 22:07:10 -0500 |
---|---|---|
committer | Tim Keller <tjk@tjkeller.xyz> | 2024-10-02 22:07:10 -0500 |
commit | 4730b215fdc4095800fedfdf690c12fec994bb6b (patch) | |
tree | 3c746ece0089625a8093d4ae6bf1149ea903b7dc | |
parent | 34b0bb8df42194a0ea433592e3cac27546f0af4e (diff) | |
download | nixos-4730b215fdc4095800fedfdf690c12fec994bb6b.tar.xz nixos-4730b215fdc4095800fedfdf690c12fec994bb6b.zip |
more reorganizing and modularizing
-rw-r--r-- | configuration.nix | 74 | ||||
-rw-r--r-- | flake.nix | 10 | ||||
-rw-r--r-- | home.nix | 119 | ||||
-rw-r--r-- | modules/home/default.nix | 16 | ||||
-rw-r--r-- | modules/home/firefox.nix | 63 | ||||
-rw-r--r-- | modules/home/git.nix | 7 | ||||
-rw-r--r-- | modules/home/initial-home-setup.nix | 18 | ||||
-rw-r--r-- | modules/home/resources/activation-scripts/clone-repos.sh (renamed from home-config/activation-scripts/clone-repos.sh) | 0 | ||||
-rw-r--r-- | modules/home/resources/firefox/uiCustomization.json (renamed from home-config/firefox/uiCustomization.json) | 0 | ||||
-rw-r--r-- | modules/home/resources/firefox/userChrome.css (renamed from home-config/firefox/userChrome.css) | 0 | ||||
-rw-r--r-- | modules/home/theme.nix | 46 | ||||
-rw-r--r-- | modules/hosts/T430/configuration.nix | 27 | ||||
-rw-r--r-- | modules/hosts/T430/hardware-configuration.nix (renamed from hardware-configuration.nix) | 0 | ||||
-rw-r--r-- | modules/root/awesome.nix (renamed from modules/awesome.nix) | 0 | ||||
-rw-r--r-- | modules/root/cups.nix (renamed from modules/cups.nix) | 0 | ||||
-rw-r--r-- | modules/root/default.nix (renamed from modules/default.nix) | 8 | ||||
-rw-r--r-- | modules/root/doas.nix (renamed from modules/doas.nix) | 0 | ||||
-rw-r--r-- | modules/root/docker.nix (renamed from modules/docker.nix) | 0 | ||||
-rw-r--r-- | modules/root/grub.nix (renamed from modules/grub.nix) | 0 | ||||
-rw-r--r-- | modules/root/home-manager.nix | 11 | ||||
-rw-r--r-- | modules/root/hosts.nix (renamed from modules/hosts.nix) | 0 | ||||
-rw-r--r-- | modules/root/localization.nix (renamed from modules/localization.nix) | 0 | ||||
-rw-r--r-- | modules/root/nix.nix (renamed from modules/nix.nix) | 0 | ||||
-rw-r--r-- | modules/root/pipewire.nix (renamed from modules/pipewire.nix) | 0 | ||||
-rw-r--r-- | modules/root/software/default.nix (renamed from modules/software/default.nix) | 0 | ||||
-rw-r--r-- | modules/root/software/desktop-extra.nix (renamed from modules/software/desktop-extra.nix) | 1 | ||||
-rw-r--r-- | modules/root/software/desktop.nix (renamed from modules/software/desktop.nix) | 0 | ||||
-rw-r--r-- | modules/root/software/dev-extra.nix (renamed from modules/software/dev-extra.nix) | 2 | ||||
-rw-r--r-- | modules/root/software/dev.nix (renamed from modules/software/dev.nix) | 0 | ||||
-rw-r--r-- | modules/root/software/utils.nix (renamed from modules/software/utils.nix) | 0 | ||||
-rw-r--r-- | modules/root/virtualisation.nix | 10 | ||||
-rw-r--r-- | modules/root/wifi.nix (renamed from modules/wifi.nix) | 0 | ||||
-rw-r--r-- | modules/root/x11/default.nix (renamed from modules/x11/default.nix) | 0 | ||||
-rw-r--r-- | modules/root/x11/xinit-startx-xdg.patch (renamed from modules/x11/xinit-startx-xdg.patch) | 0 |
34 files changed, 209 insertions, 203 deletions
diff --git a/configuration.nix b/configuration.nix deleted file mode 100644 index fecb7e6..0000000 --- a/configuration.nix +++ /dev/null @@ -1,74 +0,0 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page, on -# https://search.nixos.org/options and in the NixOS manual (`nixos-help`). - -{ config, lib, pkgs, ... }: - -{ - imports = - [ # Include the results of the hardware scan. - ./hardware-configuration.nix - ]; - - # networking.hostName = "nixos"; # Define your hostname. - - # Define a user account. Don't forget to set a password with ‘passwd’. - users.users.timmy = { - description = "Tim Keller"; - isNormalUser = true; - extraGroups = [ "wheel" "docker" ]; # Enable ‘sudo’ for the user. - packages = with pkgs; [ - ]; - }; - - - # TODO this does not function - boot.initrd.systemd.extraBin = { - sh = "${pkgs.dash}/bin/dash"; - vim = "${pkgs.neovim}/bin/nvim"; - }; - - # Some programs need SUID wrappers, can be configured further or are - # started in user sessions. - #programs.mtr.enable = true; - # programs.gnupg.agent = { - # enable = true; - # enableSSHSupport = true; - # }; - - # List services that you want to enable: - - # Enable the OpenSSH daemon. - - # Open ports in the firewall. - # networking.firewall.allowedTCPPorts = [ ... ]; - # networking.firewall.allowedUDPPorts = [ ... ]; - # Or disable the firewall altogether. - # networking.firewall.enable = false; - - # Copy the NixOS configuration file and link it from the resulting system - # (/run/current-system/configuration.nix). This is useful in case you - # accidentally delete configuration.nix. - # system.copySystemConfiguration = true; - - # This option defines the first version of NixOS you have installed on this particular machine, - # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. - # - # Most users should NEVER change this value after the initial install, for any reason, - # even if you've upgraded your system to a new NixOS release. - # - # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, - # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how - # to actually do that. - # - # This value being lower than the current NixOS release does NOT mean your system is - # out of date, out of support, or vulnerable. - # - # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, - # and migrated your data accordingly. - # - # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . - system.stateVersion = "24.05"; # Did you read the comment? - -} - @@ -12,29 +12,27 @@ arkenfox = { url = "github:dwarfmaster/arkenfox-nixos"; inputs.nixpkgs.follows = "nixpkgs"; - #inputs.home-manager.follows = "home-manager"; }; }; outputs = { nixpkgs, home-manager, arkenfox, ... }@inputs : - # HOSTNAME NIXOS let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; in { - nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { + nixosConfigurations.T430 = nixpkgs.lib.nixosSystem { inherit system; specialArgs = { inherit inputs; }; modules = [ - ./configuration.nix - ./modules + ./modules/hosts/T430/configuration.nix + ./modules/root ]; }; homeConfigurations.timmy = home-manager.lib.homeManagerConfiguration { inherit pkgs; modules = [ - ./home.nix + ./modules/home inputs.arkenfox.hmModules.arkenfox ]; }; diff --git a/home.nix b/home.nix deleted file mode 100644 index f34d6c0..0000000 --- a/home.nix +++ /dev/null @@ -1,119 +0,0 @@ -{ config, lib, pkgs, ... }: { - home = { - username = "timmy"; - homeDirectory = "/home/timmy"; - stateVersion = "24.05"; - activation = { - cloneRepos = lib.hm.dag.entryAfter ["writeBoundary"] '' - export PATH="${config.home.path}/bin:$PATH" - ${builtins.readFile ./home-config/activation-scripts/clone-repos.sh} - ''; - linkZshProfile = lib.hm.dag.entryAfter ["writeBoundary"] '' - run ln -sf $VERBOSE_ARG $HOME/.config/zsh/zprofile $HOME/.zprofile - ''; - cleanupHome = lib.hm.dag.entryAfter ["writeBoundary"] '' - run rm -f $VERBOSE_ARG $HOME/{.zcompdump,.zshrc,.zsh_history,.bash_history} - ''; - mimewiz = lib.hm.dag.entryAfter ["writeBoundary"] '' - export PATH="$HOME/.local/bin/misc:$PATH" - run mimewiz # already verbose - ''; - }; - }; - - programs = { - git = { - enable = true; - userName = "Tim Keller"; # TODO set to user description - userEmail = "tjk@tjkeller.xyz"; # TODO set to user email - }; - firefox = { - # TODO see if there is way to login to moz account in profile - enable = true; - arkenfox = { - enable = true; - }; - profiles = let - search = { - engines = { - "Timmy Search" = { - urls = [{ template = "https://search.tjkeller.xyz/search?q={searchTerms}"; }]; # Don't know how to do w/ POST but I prefer GET anyways - iconURI = "https://search.tjkeller.xyz/static/themes/simple/img/favicon.svg"; # TODO doesn't seem to work - }; - }; - default = "Timmy Search"; - privateDefault = "Timmy Search"; - }; - userChrome = builtins.readFile ./home-config/firefox/userChrome.css; - arkenfox = { - enable = true; - enableAllSections = true; - "0100"."0102"."browser.startup.page".value = 3; # 0=blank, 1=home, 2=last visited page, 3=resume previous session - "0100"."0103"."browser.startup.homepage".enable = false; - "0100"."0104"."browser.newtabpage.enabled".enable = false; - }; - settings = { - "toolkit.legacyUserProfileCustomizations.stylesheets" = true; - "browser.compactmode.show" = true; - "browser.uidensity" = 1; # Compact - "browser.download.dir" = /home/timmy/dls; # FF will create this dir if it doesn't exist - "browser.aboutConfig.showWarning" = false; # arkenfox does - "app.normandy.first_run" = false; - "browser.uiCustomization.state" = builtins.readFile ./home-config/firefox/uiCustomization.json; # Toolbar etc. - "browser.newtabpage.activity-stream.feeds.section.topstories" = false; - "browser.newtabpage.activity-stream.feeds.topsites" = false; - "general.smoothScroll" = false; - "devtools.toolbox.host" = "window"; - #identity.fxaccounts.account.device.name = "timmy’s Firefox on nixos"; # HOSTNAME - }; - in { - Personal = { - id = 0; - isDefault = true; - inherit search; - inherit userChrome; - inherit arkenfox; - inherit settings; - }; - Work = { - id = 1; - inherit search; - }; - Test = { - id = 2; - inherit search; - inherit arkenfox; - inherit userChrome; - inherit settings; - }; - }; - }; - }; - - gtk = { - enable = true; - theme = { - package = pkgs.cinnamon.mint-themes; - name = "Mint-Y-Dark-Aqua"; - }; - iconTheme = { - package = pkgs.cinnamon.mint-y-icons; - name = "Mint-Y-Aqua"; - }; - cursorTheme = { - name = "Adwaita"; - }; - gtk3.bookmarks = [ - "file:///home/timmy/dls Downloads" - "file:///home/timmy/docs Documents" - "file:///home/timmy/docs/src/sites sites" - "file:///home/timmy/docs/src/scripts scripts" - "file:///home/timmy/docs/src/programs programs" - ]; - gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc"; - }; - qt = { - enable = true; - platformTheme.name = "gtk3"; - }; -} diff --git a/modules/home/default.nix b/modules/home/default.nix new file mode 100644 index 0000000..bce93ba --- /dev/null +++ b/modules/home/default.nix @@ -0,0 +1,16 @@ +{ lib, ... }: { + home = { + username = "timmy"; + homeDirectory = "/home/timmy"; + stateVersion = "24.05"; + }; + + imports = [ + ./firefox.nix + ./git.nix + ./initial-home-setup.nix + ./theme.nix + ]; + + theme.mint.enable = lib.mkDefault true; +} diff --git a/modules/home/firefox.nix b/modules/home/firefox.nix new file mode 100644 index 0000000..3ae1278 --- /dev/null +++ b/modules/home/firefox.nix @@ -0,0 +1,63 @@ +{ + programs.firefox = { + # TODO see if there is way to login to moz account in profile + enable = true; + arkenfox = { + enable = true; + }; + profiles = let + search = { + engines = { + "Timmy Search" = { + urls = [{ template = "https://search.tjkeller.xyz/search?q={searchTerms}"; }]; # Don't know how to do w/ POST but I prefer GET anyways + iconURI = "https://search.tjkeller.xyz/static/themes/simple/img/favicon.svg"; # TODO doesn't seem to work + }; + }; + default = "Timmy Search"; + privateDefault = "Timmy Search"; + }; + userChrome = builtins.readFile ./resources/firefox/userChrome.css; + arkenfox = { + enable = true; + enableAllSections = true; + "0100"."0102"."browser.startup.page".value = 3; # 0=blank, 1=home, 2=last visited page, 3=resume previous session + "0100"."0103"."browser.startup.homepage".enable = false; + "0100"."0104"."browser.newtabpage.enabled".enable = false; + }; + settings = { + "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + "browser.compactmode.show" = true; + "browser.uidensity" = 1; # Compact + "browser.download.dir" = /home/timmy/dls; # FF will create this dir if it doesn't exist + "browser.aboutConfig.showWarning" = false; # arkenfox does + "app.normandy.first_run" = false; + "browser.uiCustomization.state" = builtins.readFile ./resources/firefox/uiCustomization.json; # Toolbar etc. + "browser.newtabpage.activity-stream.feeds.section.topstories" = false; + "browser.newtabpage.activity-stream.feeds.topsites" = false; + "general.smoothScroll" = false; + "devtools.toolbox.host" = "window"; + #identity.fxaccounts.account.device.name = "timmy’s Firefox on nixos"; # HOSTNAME + }; + in { + Personal = { + id = 0; + isDefault = true; + inherit search; + inherit userChrome; + inherit arkenfox; + inherit settings; + }; + Work = { + id = 1; + inherit search; + }; + Test = { + id = 2; + inherit search; + inherit arkenfox; + inherit userChrome; + inherit settings; + }; + }; + }; +} diff --git a/modules/home/git.nix b/modules/home/git.nix new file mode 100644 index 0000000..e1a36c3 --- /dev/null +++ b/modules/home/git.nix @@ -0,0 +1,7 @@ +{ + programs.git = { + enable = true; + userName = "Tim Keller"; # TODO set to user description + userEmail = "tjk@tjkeller.xyz"; # TODO set to user email + }; +} diff --git a/modules/home/initial-home-setup.nix b/modules/home/initial-home-setup.nix new file mode 100644 index 0000000..a7119b9 --- /dev/null +++ b/modules/home/initial-home-setup.nix @@ -0,0 +1,18 @@ +{ config, lib, ... }: { + home.activation = { + cloneRepos = lib.hm.dag.entryAfter ["writeBoundary"] '' + export PATH="${config.home.path}/bin:$PATH" + ${builtins.readFile ./resources/activation-scripts/clone-repos.sh} + ''; + linkZshProfile = lib.hm.dag.entryAfter ["writeBoundary"] '' + run ln -sf $VERBOSE_ARG $HOME/.config/zsh/zprofile $HOME/.zprofile + ''; + cleanupHome = lib.hm.dag.entryAfter ["writeBoundary"] '' + run rm -f $VERBOSE_ARG $HOME/{.zcompdump,.zshrc,.zsh_history,.bash_history} + ''; + mimewiz = lib.hm.dag.entryAfter ["writeBoundary"] '' + export PATH="$HOME/.local/bin/misc:$PATH" + run mimewiz # already verbose + ''; + }; +} diff --git a/home-config/activation-scripts/clone-repos.sh b/modules/home/resources/activation-scripts/clone-repos.sh index 8ebdbe4..8ebdbe4 100644 --- a/home-config/activation-scripts/clone-repos.sh +++ b/modules/home/resources/activation-scripts/clone-repos.sh diff --git a/home-config/firefox/uiCustomization.json b/modules/home/resources/firefox/uiCustomization.json index 339b716..339b716 100644 --- a/home-config/firefox/uiCustomization.json +++ b/modules/home/resources/firefox/uiCustomization.json diff --git a/home-config/firefox/userChrome.css b/modules/home/resources/firefox/userChrome.css index af302c5..af302c5 100644 --- a/home-config/firefox/userChrome.css +++ b/modules/home/resources/firefox/userChrome.css diff --git a/modules/home/theme.nix b/modules/home/theme.nix new file mode 100644 index 0000000..c49b8f5 --- /dev/null +++ b/modules/home/theme.nix @@ -0,0 +1,46 @@ +{ config, lib, pkgs, ... }: { + options = { + theme.mint = { + enable = lib.mkEnableOption "enables mint theme"; + theme.color = lib.mkOption { + type = lib.types.str; + default = "Dark-Aqua"; + description = "mint-y theme color eg. 'Dark-Aqua' or 'Red'"; + }; + icons.color = lib.mkOption { + type = lib.types.str; + default = "Aqua"; + description = "mint-y icons color eg. 'Aqua' or 'Red'"; + }; + }; + }; + + config = { + gtk = { + enable = true; + theme = lib.mkIf config.theme.mint.enable { + package = pkgs.cinnamon.mint-themes; + name = "Mint-Y-${config.theme.mint.theme.color}"; + }; + iconTheme = lib.mkIf config.theme.mint.enable { + package = pkgs.cinnamon.mint-y-icons; + name = "Mint-Y-${config.theme.mint.icons.color}"; + }; + cursorTheme = { + name = "Adwaita"; + }; + gtk3.bookmarks = [ + "file:///home/timmy/dls Downloads" + "file:///home/timmy/docs Documents" + "file:///home/timmy/docs/src/sites sites" + "file:///home/timmy/docs/src/scripts scripts" + "file:///home/timmy/docs/src/programs programs" + ]; + gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc"; + }; + qt = { + enable = true; + platformTheme.name = "gtk3"; + }; + }; +} diff --git a/modules/hosts/T430/configuration.nix b/modules/hosts/T430/configuration.nix new file mode 100644 index 0000000..a8744ba --- /dev/null +++ b/modules/hosts/T430/configuration.nix @@ -0,0 +1,27 @@ +{ config, lib, pkgs, ... }: { + imports = [ ./hardware-configuration.nix ]; + networking.hostName = "T430"; + + # Define a user account. Don't forget to set a password with ‘passwd’. + users.users.timmy = { + description = "Tim Keller"; + isNormalUser = true; + extraGroups = [ "wheel" "docker" ]; # Enable ‘sudo’ for the user. + packages = with pkgs; [ + ]; + }; + + # TODO this does not function + boot.initrd.systemd.extraBin = { + sh = "${pkgs.dash}/bin/dash"; + vim = "${pkgs.neovim}/bin/nvim"; + }; + + # Open ports in the firewall. + # networking.firewall.allowedTCPPorts = [ ... ]; + # networking.firewall.allowedUDPPorts = [ ... ]; + # Or disable the firewall altogether. + # networking.firewall.enable = false; + + system.stateVersion = "24.05"; +} diff --git a/hardware-configuration.nix b/modules/hosts/T430/hardware-configuration.nix index 206a525..206a525 100644 --- a/hardware-configuration.nix +++ b/modules/hosts/T430/hardware-configuration.nix diff --git a/modules/awesome.nix b/modules/root/awesome.nix index 4db5230..4db5230 100644 --- a/modules/awesome.nix +++ b/modules/root/awesome.nix diff --git a/modules/cups.nix b/modules/root/cups.nix index 39f8434..39f8434 100644 --- a/modules/cups.nix +++ b/modules/root/cups.nix diff --git a/modules/default.nix b/modules/root/default.nix index 1f878d9..dd518d2 100644 --- a/modules/default.nix +++ b/modules/root/default.nix @@ -5,11 +5,13 @@ ./doas.nix ./docker.nix ./grub.nix + ./home-manager.nix ./hosts.nix ./localization.nix ./nix.nix ./pipewire.nix - ./software.nix + ./software + ./virtualisation.nix ./wifi.nix ./x11 ]; @@ -17,7 +19,7 @@ cups.enable = lib.mkDefault true; doas.enable = lib.mkDefault true; docker = { - enable = lib.mkDefault true; + enable = lib.mkDefault false; btrfsSupport = lib.mkDefault true; }; grub = { @@ -25,7 +27,9 @@ mode = lib.mkDefault "bios"; biosDevice = lib.mkDefault "/dev/sda"; }; + home-manager.enable = lib.mkDefault true; pipewire.enable = lib.mkDefault true; + virtualisation.enable = lib.mkDefault false; wifi.enable = lib.mkDefault true; xserver.awesome.enable = lib.mkDefault true; xserver.enable = lib.mkDefault true; diff --git a/modules/doas.nix b/modules/root/doas.nix index 2af324e..2af324e 100644 --- a/modules/doas.nix +++ b/modules/root/doas.nix diff --git a/modules/docker.nix b/modules/root/docker.nix index d4b6272..d4b6272 100644 --- a/modules/docker.nix +++ b/modules/root/docker.nix diff --git a/modules/grub.nix b/modules/root/grub.nix index 47227d1..47227d1 100644 --- a/modules/grub.nix +++ b/modules/root/grub.nix diff --git a/modules/root/home-manager.nix b/modules/root/home-manager.nix new file mode 100644 index 0000000..d271523 --- /dev/null +++ b/modules/root/home-manager.nix @@ -0,0 +1,11 @@ +{ pkgs, lib, config, ... }: { + options = { + home-manager.enable = lib.mkEnableOption "enables home-manager"; + }; + + config = lib.mkIf config.home-manager.enable { + environment.systemPackages = with pkgs; [ + home-manager + ]; + }; +} diff --git a/modules/hosts.nix b/modules/root/hosts.nix index 17e9cac..17e9cac 100644 --- a/modules/hosts.nix +++ b/modules/root/hosts.nix diff --git a/modules/localization.nix b/modules/root/localization.nix index 8313f07..8313f07 100644 --- a/modules/localization.nix +++ b/modules/root/localization.nix diff --git a/modules/nix.nix b/modules/root/nix.nix index ff8dd28..ff8dd28 100644 --- a/modules/nix.nix +++ b/modules/root/nix.nix diff --git a/modules/pipewire.nix b/modules/root/pipewire.nix index fd97d42..fd97d42 100644 --- a/modules/pipewire.nix +++ b/modules/root/pipewire.nix diff --git a/modules/software/default.nix b/modules/root/software/default.nix index 0ceef7f..0ceef7f 100644 --- a/modules/software/default.nix +++ b/modules/root/software/default.nix diff --git a/modules/software/desktop-extra.nix b/modules/root/software/desktop-extra.nix index 5347696..a3bf8fb 100644 --- a/modules/software/desktop-extra.nix +++ b/modules/root/software/desktop-extra.nix @@ -11,7 +11,6 @@ qbittorrent qdirstat ungoogled-chromium - virt-manager ]; }; } diff --git a/modules/software/desktop.nix b/modules/root/software/desktop.nix index 195d742..195d742 100644 --- a/modules/software/desktop.nix +++ b/modules/root/software/desktop.nix diff --git a/modules/software/dev-extra.nix b/modules/root/software/dev-extra.nix index 259ae98..b027b37 100644 --- a/modules/software/dev-extra.nix +++ b/modules/root/software/dev-extra.nix @@ -1,6 +1,6 @@ { pkgs, lib, config, ... }: { options = { - software.dev.enable = lib.mkEnableOption "enables dev apps"; + software.dev.extra.enable = lib.mkEnableOption "enables extra dev apps"; }; config = lib.mkIf config.software.dev.extra.enable { diff --git a/modules/software/dev.nix b/modules/root/software/dev.nix index b0dabcc..b0dabcc 100644 --- a/modules/software/dev.nix +++ b/modules/root/software/dev.nix diff --git a/modules/software/utils.nix b/modules/root/software/utils.nix index 1efdb18..1efdb18 100644 --- a/modules/software/utils.nix +++ b/modules/root/software/utils.nix diff --git a/modules/root/virtualisation.nix b/modules/root/virtualisation.nix new file mode 100644 index 0000000..d57d43e --- /dev/null +++ b/modules/root/virtualisation.nix @@ -0,0 +1,10 @@ +{ lib, config, ... }: { + options = { + virtualisation.enable = lib.mkEnableOption "enables virtualisation and virt-manager"; + }; + + config = lib.mkIf config.virtualisation.enable { + virtualisation.libvirtd.enable = true; + programs.virt-manager.enable = true; + }; +} diff --git a/modules/wifi.nix b/modules/root/wifi.nix index 54f9089..54f9089 100644 --- a/modules/wifi.nix +++ b/modules/root/wifi.nix diff --git a/modules/x11/default.nix b/modules/root/x11/default.nix index 8fa1d27..8fa1d27 100644 --- a/modules/x11/default.nix +++ b/modules/root/x11/default.nix diff --git a/modules/x11/xinit-startx-xdg.patch b/modules/root/x11/xinit-startx-xdg.patch index c1bca97..c1bca97 100644 --- a/modules/x11/xinit-startx-xdg.patch +++ b/modules/root/x11/xinit-startx-xdg.patch |