From b5236bf14564c0e14ab5298ab1d0ba8e6aedf56f Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Sun, 22 May 2022 21:01:37 -0500 Subject: [PATCH 1/9] Add direnv flake alias --- home/xonsh.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/home/xonsh.nix b/home/xonsh.nix index 98692c0..7b7ccc2 100644 --- a/home/xonsh.nix +++ b/home/xonsh.nix @@ -41,6 +41,7 @@ in { devroles = "cd ~/src/ansible_collections/devroles"; molcol = "molecule -c ../../tests/molecule.yml"; pa = "cd ~/src/packaging"; + dirflake = "nix flake new -t github:nix-community/nix-direnv"; }; configHeader = '' From cc98e529f5eaf3957caf661ed1a2fc1976f4d9c1 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Mon, 23 May 2022 23:58:40 -0500 Subject: [PATCH 2/9] Update Firefox and stateVersion Set home-manager stateVersion to 21.11 Move to newer method of integrating Firefox with Gnome Add tree-style-tab plugin for Firefox --- home/gui/firefox.nix | 7 ++++++- home/home.nix | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/home/gui/firefox.nix b/home/gui/firefox.nix index a79cfd5..d5513a0 100644 --- a/home/gui/firefox.nix +++ b/home/gui/firefox.nix @@ -13,11 +13,16 @@ in with lib; { programs.firefox = { enable = true; - enableGnomeExtensions = true; + package = pkgs.firefox-wayland.override { + cfg = { + enableGnomeExtensions = true; + }; + }; extensions = with pkgs.nur.repos.rycee.firefox-addons; [ keepassxc-browser octotree refined-github + tree-style-tab ublock-origin ]; profiles = { diff --git a/home/home.nix b/home/home.nix index 8ecf54a..62cd5b3 100644 --- a/home/home.nix +++ b/home/home.nix @@ -18,4 +18,5 @@ in { home.username = name; home.homeDirectory = if name == "root" then "/root" else "/home/${name}"; + home.stateVersion = "21.11"; } From ac9d5fad068a7b719206cbb20ec1677d83e1b66b Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 25 May 2022 00:15:11 -0500 Subject: [PATCH 3/9] Add onlyoffice to distro --- home/gui/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/home/gui/default.nix b/home/gui/default.nix index 5cffb04..95f8ffc 100644 --- a/home/gui/default.nix +++ b/home/gui/default.nix @@ -1,4 +1,4 @@ -{ ... }: +{ pkgs, ... }: { imports = [ @@ -6,4 +6,8 @@ ./firefox.nix ./terminal.nix ]; + + home.packages = with pkgs; [ + onlyoffice-bin + ]; } From 5e1eaac35cacd2f474f156c8c1c3dc7c1707a427 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Wed, 25 May 2022 01:32:08 -0500 Subject: [PATCH 4/9] Tidy up flake args --- flake.nix | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/flake.nix b/flake.nix index 77a65e6..c114d0a 100644 --- a/flake.nix +++ b/flake.nix @@ -15,28 +15,29 @@ nur.url = "github:nix-community/NUR"; }; - outputs = inputs: + outputs = {nixpkgs, nixunstable, agenix, home-manager, nur, self}@inputs: let local_overlay = import ./overlays; mods = hostname: [ - { nixpkgs.overlays = [ inputs.nur.overlay local_overlay ]; } - inputs.agenix.nixosModule + { nixpkgs.overlays = [ nur.overlay local_overlay ]; } + agenix.nixosModule ./modules ./profiles/base ./hosts/${hostname} - inputs.home-manager.nixosModules.home-manager { + home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; home-manager.users.greg = import ./home/home.nix "greg"; home-manager.users.root = import ./home/home.nix "root"; home-manager.extraSpecialArgs = { - nixunstable = inputs.nixunstable; + inherit nixunstable; }; } ]; - machine = system: name: inputs.nixpkgs.lib.nixosSystem { - system = system; + machine = system: name: nixpkgs.lib.nixosSystem { + inherit system; specialArgs = inputs; modules = mods name; }; From b3179604d9d4bd239a0af01be1e59c8215eb9a88 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Fri, 27 May 2022 13:53:02 -0500 Subject: [PATCH 5/9] Add ansible config files --- home/ansible.nix | 28 ++++++++++++++++++++++++++++ home/home.nix | 1 + 2 files changed, 29 insertions(+) create mode 100644 home/ansible.nix diff --git a/home/ansible.nix b/home/ansible.nix new file mode 100644 index 0000000..f4df8b6 --- /dev/null +++ b/home/ansible.nix @@ -0,0 +1,28 @@ +{ ... }: + +{ + home.file.".ansible.cfg".text = '' +[defaults] +forks=10 +host_key_checking=False +# Also available: profile_roles +callback_enabled=timer,profile_tasks +stdout_callback=yaml +nocows=1 +cow_selection=tux +collections_path=~/src + +[ssh_connection] +pipelining=True +ssh_args = -o ControlMaster=auto -o ControlPersist=600s -o IdentitiesOnly=yes -o GSSAPIAuthentication=no -o StrictHostKeyChecking=no +control_path=%(directory)s/%%h-%%r +control_path_dir=/tmp + +[callback_profile_tasks] +sort_order=descending + +[galaxy] +role_skeleton_ignore = ^.git$,^.*/.git_keep$,\..*.swp +role_skeleton = ~/src/ansible_collections/meta_ansible_templates/role +''; +} diff --git a/home/home.nix b/home/home.nix index 62cd5b3..55fc169 100644 --- a/home/home.nix +++ b/home/home.nix @@ -7,6 +7,7 @@ let in { imports = [ ./modules + ./ansible.nix ./bash.nix ./direnv.nix ./git.nix From eb17fb1d3c993368d5fe4b8125f1268c30ce5be1 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 2 Jun 2022 08:20:45 -0500 Subject: [PATCH 6/9] Upgrade to 22.05 --- flake.lock | 34 +++++++++++++++++----------------- flake.nix | 4 ++-- home/direnv.nix | 1 - 3 files changed, 19 insertions(+), 20 deletions(-) diff --git a/flake.lock b/flake.lock index 1dab8b7..a11ff8a 100644 --- a/flake.lock +++ b/flake.lock @@ -5,11 +5,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1648942457, - "narHash": "sha256-i29Z1t3sVfCNfpp+KAfeExvpqHQSbLO1KWylTtfradU=", + "lastModified": 1652712410, + "narHash": "sha256-hMJ2TqLt0DleEnQFGUHK9sV2aAzJPU8pZeiZoqRozbE=", "owner": "ryantm", "repo": "agenix", - "rev": "0d5e59ed645e4c7b60174bc6f6aac6a203dc0b01", + "rev": "7e5e58b98c3dcbf497543ff6f22591552ebfe65b", "type": "github" }, "original": { @@ -25,16 +25,16 @@ ] }, "locked": { - "lastModified": 1649887911, - "narHash": "sha256-Af0Ppb1RZ7HWuxUvF0/O7h3cy8tqU2eKFyVwyA1ZD+w=", + "lastModified": 1654113405, + "narHash": "sha256-VpK+0QaWG2JRgB00lw77N9TjkE3ec0iMYIX1TzGpxa4=", "owner": "nix-community", "repo": "home-manager", - "rev": "7244c6715cb8f741f3b3e1220a9279e97b2ed8f5", + "rev": "ac2287df5a2d6f0a44bbcbd11701dbbf6ec43675", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-21.11", + "ref": "release-22.05", "repo": "home-manager", "type": "github" } @@ -57,27 +57,27 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1650244918, - "narHash": "sha256-DsS5nxjTpnoUC4pNXJI1rit7TnDTij8vQDa5PtcDCD0=", + "lastModified": 1654005557, + "narHash": "sha256-J6elwUzPoco+r5qWPHhvS2EHVWomUtNcxzkfdAQOwEU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "7b38b03d76ab71bdc8dc325e3f6338d984cc35ca", + "rev": "08950a6e29cf7bddee466592eb790a417550f7f9", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-21.11", + "ref": "nixos-22.05", "repo": "nixpkgs", "type": "github" } }, "nixunstable": { "locked": { - "lastModified": 1651007983, - "narHash": "sha256-GNay7yDPtLcRcKCNHldug85AhAvBpTtPEJWSSDYBw8U=", + "lastModified": 1653931853, + "narHash": "sha256-O3wncIouj9x7gBPntzHeK/Hkmm9M1SGlYq7JI7saTAE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e10da1c7f542515b609f8dfbcf788f3d85b14936", + "rev": "f1c167688a6f81f4a51ab542e5f476c8c595e457", "type": "github" }, "original": { @@ -89,11 +89,11 @@ }, "nur": { "locked": { - "lastModified": 1651053120, - "narHash": "sha256-PKbB7MK6jwG4G3A/2RR0ZA8YSNanwi5R+Bvv/LwzKwo=", + "lastModified": 1654123271, + "narHash": "sha256-xM85/VFYu8I8jZiZ7U0CmZO/98sHO7+f7PIMxQVZXCM=", "owner": "nix-community", "repo": "NUR", - "rev": "2eb8999947487d915d6a1100d672284a1989c905", + "rev": "4c83235ccca7cfcf34fee9f49023f21c0e9db128", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index c114d0a..b90f021 100644 --- a/flake.nix +++ b/flake.nix @@ -5,11 +5,11 @@ description = "Greg's machines!"; inputs = { - nixpkgs.url = "github:nixos/nixpkgs/nixos-21.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05"; nixunstable.url = "github:nixos/nixpkgs/nixos-unstable"; agenix.url = "github:ryantm/agenix"; home-manager = { - url = "github:nix-community/home-manager/release-21.11"; + url = "github:nix-community/home-manager/release-22.05"; inputs.nixpkgs.follows = "nixpkgs"; }; nur.url = "github:nix-community/NUR"; diff --git a/home/direnv.nix b/home/direnv.nix index 4659ff4..b6d26ad 100644 --- a/home/direnv.nix +++ b/home/direnv.nix @@ -4,7 +4,6 @@ programs.direnv = { enable = true; nix-direnv.enable = true; - nix-direnv.enableFlakes = true; }; home.packages = [ From 36f5000e3c88be2f67c0c650d4f961a822296ee2 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 2 Jun 2022 09:34:20 -0500 Subject: [PATCH 7/9] Add unzip as general tool --- profiles/base/programs.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/profiles/base/programs.nix b/profiles/base/programs.nix index b37d479..3c188fb 100644 --- a/profiles/base/programs.nix +++ b/profiles/base/programs.nix @@ -20,6 +20,7 @@ in { pwgen tmux transcrypt + unzip vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. wget yamllint # Used in vim From 6c87da8ce5ce752854bda2fe2aa5501ef10c52d0 Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Thu, 2 Jun 2022 09:34:37 -0500 Subject: [PATCH 8/9] Add virutalbox --- hosts/jude/virt.nix | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/hosts/jude/virt.nix b/hosts/jude/virt.nix index 02a6e88..accf728 100644 --- a/hosts/jude/virt.nix +++ b/hosts/jude/virt.nix @@ -12,14 +12,20 @@ # Give my user access to the libvirtd process users.users.greg.extraGroups = [ "libvirtd" ]; - virtualisation.libvirtd = { - enable = true; - onBoot = "ignore"; # Do not auto-restart VMs on boot, unless they are marked autostart + virtualisation = { + libvirtd = { + enable = true; + onBoot = "ignore"; # Do not auto-restart VMs on boot, unless they are marked autostart + }; + + waydroid = { + enable = true; + }; + + virtualbox.host.enable = true; }; - virtualisation.waydroid = { - enable = true; - }; + users.extraGroups.vboxusers.members = [ "greg" ]; boot.extraModprobeConfig = "options kvm_amd nested=1"; } From 899cfba9ebab7ff15c66521ca0a2ddbfdacf7e5c Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Fri, 3 Jun 2022 15:41:45 -0500 Subject: [PATCH 9/9] Add printers --- hosts/jude/default.nix | 1 + hosts/jude/printing.nix | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 hosts/jude/printing.nix diff --git a/hosts/jude/default.nix b/hosts/jude/default.nix index 090d99c..342e027 100644 --- a/hosts/jude/default.nix +++ b/hosts/jude/default.nix @@ -5,6 +5,7 @@ ./boot.nix ./hardware-configuration.nix ./podman.nix + ./printing.nix ./virt.nix ]; networking.hostName = "jude"; diff --git a/hosts/jude/printing.nix b/hosts/jude/printing.nix new file mode 100644 index 0000000..07d237f --- /dev/null +++ b/hosts/jude/printing.nix @@ -0,0 +1,12 @@ +{ pkgs, ... }: + +{ + # ipp://printer.thehellings.lan:631/ - generic postscript printer + services.printing = { + enable = true; + drivers = with pkgs; [ + gutenprint + gutenprintBin + ]; + }; +}