diff --git a/flake.lock b/flake.lock index 52e70c6..8508ae9 100644 --- a/flake.lock +++ b/flake.lock @@ -1,41 +1,5 @@ { "nodes": { - "deploy-rs": { - "inputs": { - "flake-compat": "flake-compat", - "nixpkgs": "nixpkgs", - "utils": "utils" - }, - "locked": { - "lastModified": 1686747123, - "narHash": "sha256-XUQK9kwHpTeilHoad7L4LjMCCyY13Oq383CoFADecRE=", - "owner": "serokell", - "repo": "deploy-rs", - "rev": "724463b5a94daa810abfc64a4f87faef4e00f984", - "type": "github" - }, - "original": { - "owner": "serokell", - "repo": "deploy-rs", - "type": "github" - } - }, - "flake-compat": { - "flake": false, - "locked": { - "lastModified": 1668681692, - "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "009399224d5e398d03b22badca40a37ac85412a1", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, "home-manager": { "inputs": { "nixpkgs": [ @@ -90,18 +54,17 @@ }, "nixpkgs": { "locked": { - "lastModified": 1671417167, - "narHash": "sha256-JkHam6WQOwZN1t2C2sbp1TqMv3TVRjzrdoejqfefwrM=", + "lastModified": 1690548937, + "narHash": "sha256-x3ZOPGLvtC0/+iFAg9Kvqm/8hTAIkGjc634SqtgaXTA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "bb31220cca6d044baa6dc2715b07497a2a7c4bc7", + "rev": "2a9d660ff0f7ffde9d73be328ee6e6f10ef66b28", "type": "github" }, "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" + "id": "nixpkgs", + "ref": "nixos-unstable", + "type": "indirect" } }, "nixpkgs-stable": { @@ -119,45 +82,14 @@ "type": "indirect" } }, - "nixpkgs_2": { - "locked": { - "lastModified": 1690548937, - "narHash": "sha256-x3ZOPGLvtC0/+iFAg9Kvqm/8hTAIkGjc634SqtgaXTA=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "2a9d660ff0f7ffde9d73be328ee6e6f10ef66b28", - "type": "github" - }, - "original": { - "id": "nixpkgs", - "ref": "nixos-unstable", - "type": "indirect" - } - }, "root": { "inputs": { - "deploy-rs": "deploy-rs", "home-manager": "home-manager", "impermanence": "impermanence", "nixos-hardware": "nixos-hardware", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs", "nixpkgs-stable": "nixpkgs-stable" } - }, - "utils": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 4f7cdb3..ce2648c 100644 --- a/flake.nix +++ b/flake.nix @@ -8,7 +8,6 @@ inputs.nixpkgs.follows = "nixpkgs"; }; impermanence.url = "github:nix-community/impermanence"; - deploy-rs.url = "github:serokell/deploy-rs"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; }; @@ -19,25 +18,11 @@ , nixos-hardware , home-manager , impermanence - , deploy-rs }@inputs: let system = "x86_64-linux"; - pkgs = import nixpkgs { inherit system; }; - deployPkgs = import nixpkgs { - inherit system; - overlays = [ - deploy-rs.overlay - (self: super: { - deploy-rs = { - inherit (pkgs) deploy-rs; - lib = deploy-rs.lib; - }; - }) - ]; - }; + pkgs = nixpkgs.legacyPackages.${system}; in - { nixosConfigurations = { trantor = nixpkgs.lib.nixosSystem { @@ -70,49 +55,13 @@ impermanence.nixosModules.impermanence ]; }; - - lb = nixpkgs-stable.lib.nixosSystem { - system = "aarch64-linux"; - specialArgs = { impermanence = impermanence; }; - modules = [ - ./hosts/lb - impermanence.nixosModules.impermanence - ]; - }; - }; - deploy.nodes = { - - capibara = { - hostname = "capibara"; - profiles = { - system = { - sshUser = "rilla"; - user = "root"; - sudo = "doas -u"; - path = deployPkgs.deploy-rs.lib.x86_64-linux.activate.nixos self.nixosConfigurations.capibara; - autoRollback = true; - remoteBuild = false; - }; - }; - }; - - lb = { - hostname = "lb"; - profiles = { - system = { - sshUser = "rilla"; - user = "root"; - sudo = "doas -u"; - path = deployPkgs.deploy-rs.lib.aarch64-linux.activate.nixos self.nixosConfigurations.lb; - autoRollback = true; - # remoteBuild = false; - remoteBuild = true; - }; - }; - }; - }; - checks = builtins.mapAttrs (system: deployLib: deployLib.deployChecks self.deploy) deployPkgs.deploy-rs.lib; + homeConfigurations = { + "rilla@echidna" = home-manager.lib.homeManagerConfiguration { + inherit pkgs; + modules = [ ./home/hosts/echidna.nix ]; + }; + }; }; } diff --git a/hardware-configuration/lb.nix b/hardware-configuration/lb.nix deleted file mode 100644 index b94dcfb..0000000 --- a/hardware-configuration/lb.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ config, lib, pkgs, modulesPath, ... }: - -{ - imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; - - boot.initrd.availableKernelModules = [ "usbhid" "usb_storage" "sr_mod" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ ]; - boot.extraModulePackages = [ ]; - - # Enables DHCP on each ethernet and wireless interface. In case of scripted networking - # (the default) this is the recommended approach. When using systemd-networkd it's - # still possible to use this option, but it's recommended to use it in conjunction - # with explicit per-interface declarations with `networking.interfaces..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enu1u1.useDHCP = lib.mkDefault true; - # networking.interfaces.wlan0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; - powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand"; -} diff --git a/home/capibara.nix b/home/capibara.nix deleted file mode 100644 index 0cdb483..0000000 --- a/home/capibara.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ config, pkgs, ... }: - -{ - imports = [ ./common.nix ./desktop-river ./theming ]; -} diff --git a/home/hosts/capibara.nix b/home/hosts/capibara.nix new file mode 100644 index 0000000..9fde48c --- /dev/null +++ b/home/hosts/capibara.nix @@ -0,0 +1,9 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ./common.nix + ../modules/desktop-river + ./theming + ]; +} diff --git a/home/common.nix b/home/hosts/common.nix similarity index 100% rename from home/common.nix rename to home/hosts/common.nix diff --git a/home/hosts/echidna.nix b/home/hosts/echidna.nix new file mode 100644 index 0000000..54b1c27 --- /dev/null +++ b/home/hosts/echidna.nix @@ -0,0 +1,90 @@ +{ config, pkgs, ... }: + +{ + home.username = "rilla"; + home.homeDirectory = "/home/rilla"; + + home.stateVersion = "23.05"; + programs.home-manager.enable = true; + + nixpkgs.config = { allowUnfree = true; }; + + imports = [ + ../modules/cheat + ../modules/foot + ../modules/dav + ../modules/fonts + ../modules/git + ../modules/gpg + ../modules/lf + ../modules/mail + ../modules/neovim + ../modules/pass + ../modules/rss + ../modules/ssh + ../modules/tmux + ../modules/vitetris + ../modules/xdg + ../modules/zsh + ]; + + home.sessionVariables = { + EDITOR = "${pkgs.neovim}/bin/nvim"; + VISUAL = "${pkgs.neovim}/bin/nvim"; + BROWSER = "${pkgs.firefox}/bin/firefox"; + # OPENER = "todo"; # todo + TERMINAL = "${pkgs.alacritty}/bin/alacritty"; + CM_LAUNCHER = "rofi"; # for clipmenu + LEDGER_FILE = "${config.home.homeDirectory}/finance/2021.journal"; + }; + + home.packages = with pkgs; [ + R + ansible + bind.dnsutils + docker-compose + file + just + gnumake + html-tidy + htop + inetutils # telnet + j2cli + jq + killall + kubectl + libnotify + mosh + neofetch + pandoc + podman-compose + pv + ripgrep + sassc + screen + shellcheck + signify + unzip + wget + ]; + + programs.bat = { + enable = true; + config = { theme = "gruvbox-dark"; }; + }; + + programs.fzf = { + enable = true; + enableZshIntegration = true; + # defaultOptions = [ + # "--preview --preview 'bat --color=always --style=header,grid --line-range :300 {}'" + # ]; + tmux.enableShellIntegration = true; + }; + + programs.direnv = { + enable = true; + enableZshIntegration = true; + nix-direnv.enable = true; + }; +} diff --git a/home/hosts/trantor.nix b/home/hosts/trantor.nix new file mode 100644 index 0000000..e6b062f --- /dev/null +++ b/home/hosts/trantor.nix @@ -0,0 +1,9 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ./common.nix + ../modules/desktop-river + ../modules/theming/trantor.nix + ]; +} diff --git a/home/alacritty/capibara.nix b/home/modules/alacritty/capibara.nix similarity index 100% rename from home/alacritty/capibara.nix rename to home/modules/alacritty/capibara.nix diff --git a/home/alacritty/common.nix b/home/modules/alacritty/common.nix similarity index 100% rename from home/alacritty/common.nix rename to home/modules/alacritty/common.nix diff --git a/home/alacritty/trantor.nix b/home/modules/alacritty/trantor.nix similarity index 100% rename from home/alacritty/trantor.nix rename to home/modules/alacritty/trantor.nix diff --git a/home/arduino/default.nix b/home/modules/arduino/default.nix similarity index 100% rename from home/arduino/default.nix rename to home/modules/arduino/default.nix diff --git a/home/barrier/default.nix b/home/modules/barrier/default.nix similarity index 100% rename from home/barrier/default.nix rename to home/modules/barrier/default.nix diff --git a/home/browsers/default.nix b/home/modules/browsers/default.nix similarity index 100% rename from home/browsers/default.nix rename to home/modules/browsers/default.nix diff --git a/home/browsers/firefox/default.nix b/home/modules/browsers/firefox/default.nix similarity index 100% rename from home/browsers/firefox/default.nix rename to home/modules/browsers/firefox/default.nix diff --git a/home/cheat/default.nix b/home/modules/cheat/default.nix similarity index 100% rename from home/cheat/default.nix rename to home/modules/cheat/default.nix diff --git a/home/dav/davsync.nix b/home/modules/dav/davsync.nix similarity index 100% rename from home/dav/davsync.nix rename to home/modules/dav/davsync.nix diff --git a/home/dav/default.nix b/home/modules/dav/default.nix similarity index 100% rename from home/dav/default.nix rename to home/modules/dav/default.nix diff --git a/home/desktop-river/bemenu.nix b/home/modules/desktop-river/bemenu.nix similarity index 100% rename from home/desktop-river/bemenu.nix rename to home/modules/desktop-river/bemenu.nix diff --git a/home/desktop-river/default.nix b/home/modules/desktop-river/default.nix similarity index 100% rename from home/desktop-river/default.nix rename to home/modules/desktop-river/default.nix diff --git a/home/desktop-river/foot.nix b/home/modules/desktop-river/foot.nix similarity index 100% rename from home/desktop-river/foot.nix rename to home/modules/desktop-river/foot.nix diff --git a/home/desktop-river/init.nix b/home/modules/desktop-river/init.nix similarity index 100% rename from home/desktop-river/init.nix rename to home/modules/desktop-river/init.nix diff --git a/home/desktop-river/kanshi.nix b/home/modules/desktop-river/kanshi.nix similarity index 100% rename from home/desktop-river/kanshi.nix rename to home/modules/desktop-river/kanshi.nix diff --git a/home/desktop-river/kile/default.nix b/home/modules/desktop-river/kile/default.nix similarity index 100% rename from home/desktop-river/kile/default.nix rename to home/modules/desktop-river/kile/default.nix diff --git a/home/desktop-river/kile/layout.kl b/home/modules/desktop-river/kile/layout.kl similarity index 100% rename from home/desktop-river/kile/layout.kl rename to home/modules/desktop-river/kile/layout.kl diff --git a/home/desktop-river/mako.nix b/home/modules/desktop-river/mako.nix similarity index 100% rename from home/desktop-river/mako.nix rename to home/modules/desktop-river/mako.nix diff --git a/home/desktop-river/screenshot.nix b/home/modules/desktop-river/screenshot.nix similarity index 100% rename from home/desktop-river/screenshot.nix rename to home/modules/desktop-river/screenshot.nix diff --git a/home/desktop-river/swaybg.nix b/home/modules/desktop-river/swaybg.nix similarity index 100% rename from home/desktop-river/swaybg.nix rename to home/modules/desktop-river/swaybg.nix diff --git a/home/desktop-river/swaylock.nix b/home/modules/desktop-river/swaylock.nix similarity index 100% rename from home/desktop-river/swaylock.nix rename to home/modules/desktop-river/swaylock.nix diff --git a/home/desktop-river/waybar.nix b/home/modules/desktop-river/waybar.nix similarity index 100% rename from home/desktop-river/waybar.nix rename to home/modules/desktop-river/waybar.nix diff --git a/home/desktop-river/zathura.nix b/home/modules/desktop-river/zathura.nix similarity index 100% rename from home/desktop-river/zathura.nix rename to home/modules/desktop-river/zathura.nix diff --git a/home/desktop-xmonad/autorandr/capibara.nix b/home/modules/desktop-xmonad/autorandr/capibara.nix similarity index 100% rename from home/desktop-xmonad/autorandr/capibara.nix rename to home/modules/desktop-xmonad/autorandr/capibara.nix diff --git a/home/desktop-xmonad/autorandr/common.nix b/home/modules/desktop-xmonad/autorandr/common.nix similarity index 100% rename from home/desktop-xmonad/autorandr/common.nix rename to home/modules/desktop-xmonad/autorandr/common.nix diff --git a/home/desktop-xmonad/autorandr/trantor.nix b/home/modules/desktop-xmonad/autorandr/trantor.nix similarity index 100% rename from home/desktop-xmonad/autorandr/trantor.nix rename to home/modules/desktop-xmonad/autorandr/trantor.nix diff --git a/home/desktop-xmonad/capibara.nix b/home/modules/desktop-xmonad/capibara.nix similarity index 100% rename from home/desktop-xmonad/capibara.nix rename to home/modules/desktop-xmonad/capibara.nix diff --git a/home/desktop-xmonad/common.nix b/home/modules/desktop-xmonad/common.nix similarity index 100% rename from home/desktop-xmonad/common.nix rename to home/modules/desktop-xmonad/common.nix diff --git a/home/desktop-xmonad/desktop_config.nix b/home/modules/desktop-xmonad/desktop_config.nix similarity index 100% rename from home/desktop-xmonad/desktop_config.nix rename to home/modules/desktop-xmonad/desktop_config.nix diff --git a/home/desktop-xmonad/hmonitors.nix b/home/modules/desktop-xmonad/hmonitors.nix similarity index 100% rename from home/desktop-xmonad/hmonitors.nix rename to home/modules/desktop-xmonad/hmonitors.nix diff --git a/home/desktop-xmonad/icons/3cols.xpm b/home/modules/desktop-xmonad/icons/3cols.xpm similarity index 100% rename from home/desktop-xmonad/icons/3cols.xpm rename to home/modules/desktop-xmonad/icons/3cols.xpm diff --git a/home/desktop-xmonad/icons/float.xpm b/home/modules/desktop-xmonad/icons/float.xpm similarity index 100% rename from home/desktop-xmonad/icons/float.xpm rename to home/modules/desktop-xmonad/icons/float.xpm diff --git a/home/desktop-xmonad/icons/full.xpm b/home/modules/desktop-xmonad/icons/full.xpm similarity index 100% rename from home/desktop-xmonad/icons/full.xpm rename to home/modules/desktop-xmonad/icons/full.xpm diff --git a/home/desktop-xmonad/icons/grid.xpm b/home/modules/desktop-xmonad/icons/grid.xpm similarity index 100% rename from home/desktop-xmonad/icons/grid.xpm rename to home/modules/desktop-xmonad/icons/grid.xpm diff --git a/home/desktop-xmonad/icons/mtall.xpm b/home/modules/desktop-xmonad/icons/mtall.xpm similarity index 100% rename from home/desktop-xmonad/icons/mtall.xpm rename to home/modules/desktop-xmonad/icons/mtall.xpm diff --git a/home/desktop-xmonad/icons/tabs.xpm b/home/modules/desktop-xmonad/icons/tabs.xpm similarity index 100% rename from home/desktop-xmonad/icons/tabs.xpm rename to home/modules/desktop-xmonad/icons/tabs.xpm diff --git a/home/desktop-xmonad/icons/tall.xpm b/home/modules/desktop-xmonad/icons/tall.xpm similarity index 100% rename from home/desktop-xmonad/icons/tall.xpm rename to home/modules/desktop-xmonad/icons/tall.xpm diff --git a/home/desktop-xmonad/misc.nix b/home/modules/desktop-xmonad/misc.nix similarity index 100% rename from home/desktop-xmonad/misc.nix rename to home/modules/desktop-xmonad/misc.nix diff --git a/home/desktop-xmonad/obtoxmd.nix b/home/modules/desktop-xmonad/obtoxmd.nix similarity index 100% rename from home/desktop-xmonad/obtoxmd.nix rename to home/modules/desktop-xmonad/obtoxmd.nix diff --git a/home/desktop-xmonad/rofi.nix b/home/modules/desktop-xmonad/rofi.nix similarity index 100% rename from home/desktop-xmonad/rofi.nix rename to home/modules/desktop-xmonad/rofi.nix diff --git a/home/desktop-xmonad/trantor.nix b/home/modules/desktop-xmonad/trantor.nix similarity index 100% rename from home/desktop-xmonad/trantor.nix rename to home/modules/desktop-xmonad/trantor.nix diff --git a/home/desktop-xmonad/xmonad/lib/Bindings.hs b/home/modules/desktop-xmonad/xmonad/lib/Bindings.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/Bindings.hs rename to home/modules/desktop-xmonad/xmonad/lib/Bindings.hs diff --git a/home/desktop-xmonad/xmonad/lib/DefaultConfig.hs b/home/modules/desktop-xmonad/xmonad/lib/DefaultConfig.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/DefaultConfig.hs rename to home/modules/desktop-xmonad/xmonad/lib/DefaultConfig.hs diff --git a/home/desktop-xmonad/xmonad/lib/Layouts.hs b/home/modules/desktop-xmonad/xmonad/lib/Layouts.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/Layouts.hs rename to home/modules/desktop-xmonad/xmonad/lib/Layouts.hs diff --git a/home/desktop-xmonad/xmonad/lib/ManageHook.hs b/home/modules/desktop-xmonad/xmonad/lib/ManageHook.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/ManageHook.hs rename to home/modules/desktop-xmonad/xmonad/lib/ManageHook.hs diff --git a/home/desktop-xmonad/xmonad/lib/Polybar.hs b/home/modules/desktop-xmonad/xmonad/lib/Polybar.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/Polybar.hs rename to home/modules/desktop-xmonad/xmonad/lib/Polybar.hs diff --git a/home/desktop-xmonad/xmonad/lib/Prompts.hs b/home/modules/desktop-xmonad/xmonad/lib/Prompts.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/Prompts.hs rename to home/modules/desktop-xmonad/xmonad/lib/Prompts.hs diff --git a/home/desktop-xmonad/xmonad/lib/Utils.hs b/home/modules/desktop-xmonad/xmonad/lib/Utils.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/Utils.hs rename to home/modules/desktop-xmonad/xmonad/lib/Utils.hs diff --git a/home/desktop-xmonad/xmonad/lib/Xmobar.hs b/home/modules/desktop-xmonad/xmonad/lib/Xmobar.hs similarity index 100% rename from home/desktop-xmonad/xmonad/lib/Xmobar.hs rename to home/modules/desktop-xmonad/xmonad/lib/Xmobar.hs diff --git a/home/desktop-xmonad/xmonad/xmonad.hs b/home/modules/desktop-xmonad/xmonad/xmonad.hs similarity index 100% rename from home/desktop-xmonad/xmonad/xmonad.hs rename to home/modules/desktop-xmonad/xmonad/xmonad.hs diff --git a/home/drawterm/default.nix b/home/modules/drawterm/default.nix similarity index 100% rename from home/drawterm/default.nix rename to home/modules/drawterm/default.nix diff --git a/home/fonts/default.nix b/home/modules/fonts/default.nix similarity index 100% rename from home/fonts/default.nix rename to home/modules/fonts/default.nix diff --git a/home/modules/foot/default.nix b/home/modules/foot/default.nix new file mode 100644 index 0000000..7f8c2a8 --- /dev/null +++ b/home/modules/foot/default.nix @@ -0,0 +1,47 @@ +{ config, pkgs, ... }: + +let + font-name = "Hack Nerd Font"; + font-size = "10"; +in +{ + programs.foot = { + enable = true; + server.enable = true; + settings = { + main = { + shell = "${pkgs.tmux}/bin/tmux -u"; + font = "${font-name}:size=${font-size}:style=Regular"; + font-bold = "${font-name}:size=${font-size}:style=Bold"; + font-italic = "${font-name}:size=${font-size}:style=Italic"; + font-bold-italic = "${font-name}:size=${font-size}:style=Bold Italic"; + dpi-aware = "no"; + selection-target = "both"; + }; + colors = { + alpha = 0.9; + background = "282828"; + foreground = "ebdbb2"; + + regular0 = "282828"; # black + regular1 = "cc241d"; # red + regular2 = "98971a"; # green + regular3 = "d79921"; # yellow + regular4 = "458588"; # blue + regular5 = "b16286"; # magenta + regular6 = "689d6a"; # cyan + regular7 = "ebdbb2"; # white + + bright0 = "928374"; # black + bright1 = "fb4934"; # red + bright2 = "b8bb26"; # green + bright3 = "fabd2f"; # yellow + bright4 = "83a598"; # blue + bright5 = "d3869b"; # magenta + bright6 = "8ec07c"; # cyan + bright7 = "ebdbb2"; # white + }; + }; + }; + +} diff --git a/home/gcloud/default.nix b/home/modules/gcloud/default.nix similarity index 100% rename from home/gcloud/default.nix rename to home/modules/gcloud/default.nix diff --git a/home/git/default.nix b/home/modules/git/default.nix similarity index 100% rename from home/git/default.nix rename to home/modules/git/default.nix diff --git a/home/git/woodpecker-cli.nix b/home/modules/git/woodpecker-cli.nix similarity index 100% rename from home/git/woodpecker-cli.nix rename to home/modules/git/woodpecker-cli.nix diff --git a/home/gotify/default.nix b/home/modules/gotify/default.nix similarity index 100% rename from home/gotify/default.nix rename to home/modules/gotify/default.nix diff --git a/home/gpg/default.nix b/home/modules/gpg/default.nix similarity index 100% rename from home/gpg/default.nix rename to home/modules/gpg/default.nix diff --git a/home/idasen/default.nix b/home/modules/idasen/default.nix similarity index 100% rename from home/idasen/default.nix rename to home/modules/idasen/default.nix diff --git a/home/lf/cleaner.nix b/home/modules/lf/cleaner.nix similarity index 100% rename from home/lf/cleaner.nix rename to home/modules/lf/cleaner.nix diff --git a/home/lf/default.nix b/home/modules/lf/default.nix similarity index 100% rename from home/lf/default.nix rename to home/modules/lf/default.nix diff --git a/home/lf/lf-wrapper.nix b/home/modules/lf/lf-wrapper.nix similarity index 100% rename from home/lf/lf-wrapper.nix rename to home/modules/lf/lf-wrapper.nix diff --git a/home/lf/pv.nix b/home/modules/lf/pv.nix similarity index 100% rename from home/lf/pv.nix rename to home/modules/lf/pv.nix diff --git a/home/mail/default.nix b/home/modules/mail/default.nix similarity index 100% rename from home/mail/default.nix rename to home/modules/mail/default.nix diff --git a/home/mail/mailsync.nix b/home/modules/mail/mailsync.nix similarity index 100% rename from home/mail/mailsync.nix rename to home/modules/mail/mailsync.nix diff --git a/home/maker/default.nix b/home/modules/maker/default.nix similarity index 100% rename from home/maker/default.nix rename to home/modules/maker/default.nix diff --git a/home/minidisc/atracdenc.nix b/home/modules/minidisc/atracdenc.nix similarity index 100% rename from home/minidisc/atracdenc.nix rename to home/modules/minidisc/atracdenc.nix diff --git a/home/minidisc/default.nix b/home/modules/minidisc/default.nix similarity index 100% rename from home/minidisc/default.nix rename to home/modules/minidisc/default.nix diff --git a/home/minidisc/linux-minidisc.nix b/home/modules/minidisc/linux-minidisc.nix similarity index 100% rename from home/minidisc/linux-minidisc.nix rename to home/modules/minidisc/linux-minidisc.nix diff --git a/home/mpd/default.nix b/home/modules/mpd/default.nix similarity index 100% rename from home/mpd/default.nix rename to home/modules/mpd/default.nix diff --git a/home/msg/default.nix b/home/modules/msg/default.nix similarity index 100% rename from home/msg/default.nix rename to home/modules/msg/default.nix diff --git a/home/music/default.nix b/home/modules/music/default.nix similarity index 100% rename from home/music/default.nix rename to home/modules/music/default.nix diff --git a/home/neovim/default.nix b/home/modules/neovim/default.nix similarity index 100% rename from home/neovim/default.nix rename to home/modules/neovim/default.nix diff --git a/home/pass/default.nix b/home/modules/pass/default.nix similarity index 100% rename from home/pass/default.nix rename to home/modules/pass/default.nix diff --git a/home/rss/default.nix b/home/modules/rss/default.nix similarity index 100% rename from home/rss/default.nix rename to home/modules/rss/default.nix diff --git a/home/rss/rsssync.nix b/home/modules/rss/rsssync.nix similarity index 100% rename from home/rss/rsssync.nix rename to home/modules/rss/rsssync.nix diff --git a/home/snapcast/default.nix b/home/modules/snapcast/default.nix similarity index 100% rename from home/snapcast/default.nix rename to home/modules/snapcast/default.nix diff --git a/home/sound/default.nix b/home/modules/sound/default.nix similarity index 100% rename from home/sound/default.nix rename to home/modules/sound/default.nix diff --git a/home/ssh/default.nix b/home/modules/ssh/default.nix similarity index 100% rename from home/ssh/default.nix rename to home/modules/ssh/default.nix diff --git a/home/ssh/id_rsa_gpg-cert.pub b/home/modules/ssh/id_rsa_gpg-cert.pub similarity index 100% rename from home/ssh/id_rsa_gpg-cert.pub rename to home/modules/ssh/id_rsa_gpg-cert.pub diff --git a/home/ssh/id_rsa_gpg.pub b/home/modules/ssh/id_rsa_gpg.pub similarity index 100% rename from home/ssh/id_rsa_gpg.pub rename to home/modules/ssh/id_rsa_gpg.pub diff --git a/home/syncthing/default.nix b/home/modules/syncthing/default.nix similarity index 100% rename from home/syncthing/default.nix rename to home/modules/syncthing/default.nix diff --git a/home/theming/common.nix b/home/modules/theming/common.nix similarity index 100% rename from home/theming/common.nix rename to home/modules/theming/common.nix diff --git a/home/theming/default.nix b/home/modules/theming/default.nix similarity index 100% rename from home/theming/default.nix rename to home/modules/theming/default.nix diff --git a/home/theming/trantor.nix b/home/modules/theming/trantor.nix similarity index 100% rename from home/theming/trantor.nix rename to home/modules/theming/trantor.nix diff --git a/home/tmux/default.nix b/home/modules/tmux/default.nix similarity index 100% rename from home/tmux/default.nix rename to home/modules/tmux/default.nix diff --git a/home/vitetris/default.nix b/home/modules/vitetris/default.nix similarity index 100% rename from home/vitetris/default.nix rename to home/modules/vitetris/default.nix diff --git a/home/wallets/default.nix b/home/modules/wallets/default.nix similarity index 100% rename from home/wallets/default.nix rename to home/modules/wallets/default.nix diff --git a/home/wine/akai_lpk25_editor.nix b/home/modules/wine/akai_lpk25_editor.nix similarity index 100% rename from home/wine/akai_lpk25_editor.nix rename to home/modules/wine/akai_lpk25_editor.nix diff --git a/home/wine/default.nix b/home/modules/wine/default.nix similarity index 100% rename from home/wine/default.nix rename to home/modules/wine/default.nix diff --git a/home/xdg/default.nix b/home/modules/xdg/default.nix similarity index 100% rename from home/xdg/default.nix rename to home/modules/xdg/default.nix diff --git a/home/zsh/default.nix b/home/modules/zsh/default.nix similarity index 98% rename from home/zsh/default.nix rename to home/modules/zsh/default.nix index 40c88d5..3be0139 100644 --- a/home/zsh/default.nix +++ b/home/modules/zsh/default.nix @@ -21,7 +21,8 @@ in { truncation_symbol = "…/"; read_only = ""; }; - aws = { disabled = true; }; + aws.disabled = true; + container.disabled = true; line_break = { disabled = true; }; gcloud = { disabled = true; }; python = { disabled = true; }; diff --git a/home/trantor.nix b/home/trantor.nix deleted file mode 100644 index c1a366b..0000000 --- a/home/trantor.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ config, pkgs, ... }: - -{ - imports = [ ./common.nix ./desktop-river ./theming/trantor.nix ]; -} diff --git a/hosts/lb/default.nix b/hosts/lb/default.nix deleted file mode 100644 index 44f3abb..0000000 --- a/hosts/lb/default.nix +++ /dev/null @@ -1,105 +0,0 @@ -{ config, pkgs, impermanence, ... }: - -{ - imports = [ - ../../hardware-configuration/lb.nix - ../../common - ]; - - boot.loader = { - grub.enable = false; - raspberryPi = { - enable = true; - version = 3; - firmwareConfig = '' - gpu_mem=16 - ''; - }; - }; - boot.readOnlyNixStore = true; - boot.kernelParams = [ "console=tty1" ]; - boot.tmp.cleanOnBoot = true; - - fileSystems = { - - "/" = { - device = "tmpfs"; - fsType = "tmpfs"; - options = [ "size=500M" "mode=755" ]; - }; - - "/boot" = { - device = "/dev/mmcblk0p1"; - fsType = "vfat"; - options = [ "ro" ]; - }; - - "/nix" = { - device = "/dev/mmcblk0p2"; - fsType = "ext4"; - }; - - "/state" = { - device = "/dev/mmcblk0p3"; - fsType = "btrfs"; - options = [ "subvol=state" "compress=zstd" "ro" ]; - neededForBoot = true; - }; - - "/mnt/btr_pool" = { - device = "/dev/mmcblk0p3"; - fsType = "btrfs"; - options = [ "subvolid=5" "compress=zstd" ]; - }; - - "/mnt/data" = { - device = "/dev/mmcblk0p3"; - fsType = "btrfs"; - options = [ "subvol=data" "compress=zstd" ]; - }; - - "/srv/certs" = { - device = "/dev/mmcblk0p3"; - fsType = "btrfs"; - options = [ "subvol=certs" "compress=zstd" ]; - }; - - }; - - swapDevices = [ ]; - - environment.persistence."/state" = { - files = [ - "/etc/machine-id" - "/etc/nix/id_rsa" - "/etc/ssh/ssh_host_ed25519_key" - "/etc/ssh/ssh_host_ed25519_key.pub" - "/etc/ssh/ssh_host_ed25519_key-cert.pub" - "/etc/ssh/user_ca.pub" - "/etc/nixos" - ]; - }; - - networking.hostName = "lb"; - networking.firewall.allowedTCPPorts = [ 80 443 ]; - - services.nginx = { - enable = true; - virtualHosts = { - - "homer.monotremata.xyz" = { - sslCertificate = "/srv/certs/acme/monotremata.xyz/fullchain.pem"; - sslCertificateKey = "/srv/certs/acme/monotremata.xyz/key.pem"; - onlySSL = true; - locations."/" = { - recommendedProxySettings = true; - proxyWebsockets = true; - proxyPass = "http://narwhal:8020/"; - }; - }; - - }; - }; - - system.stateVersion = "23.05"; -} diff --git a/justfile b/justfile new file mode 100644 index 0000000..ccbf809 --- /dev/null +++ b/justfile @@ -0,0 +1,2 @@ +echidna: + home-manager switch --flake .#rilla@echidna diff --git a/hosts/capibara/default.nix b/nixos/hosts/capibara/default.nix similarity index 93% rename from hosts/capibara/default.nix rename to nixos/hosts/capibara/default.nix index e149370..64efda0 100644 --- a/hosts/capibara/default.nix +++ b/nixos/hosts/capibara/default.nix @@ -1,8 +1,4 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page -# and in the NixOS manual (accessible by running ‘nixos-help’). - -{ config, pkgs, stablePkgs, impermanence, ... }: +{ config, pkgs, stablePkgs, ... }: let home = "/home/rilla"; @@ -25,17 +21,14 @@ let in { imports = [ - ../../hardware-configuration/capibara.nix - ../../common - ../../common/desktop.nix + ./hardware-configuration/capibara.nix + ../../modules/common + ../../modules/common/desktop.nix ]; - home-manager = { - users.rilla.imports = [ - ../../home/capibara.nix - "${impermanence}/home-manager.nix" - ]; - }; + home-manager.users.rilla.imports = [ + ../../../home/hosts/capibara.nix + ]; fileSystems = { "/" = { @@ -147,7 +140,6 @@ in }; environment.variables = { - NIXOS_CONFIG = "${home}/configs/nix-config/capibara.nix"; LV2_PATH = "${home}/.nix-profile/lib/lv2:${home}/Audio/plugins/lv2:/run/current-system/sw/lib/lv2"; LXVST_PATH = @@ -310,10 +302,6 @@ in }; }; - services.xserver.deviceSection = '' - Option "TearFree" "true" - ''; - xdg.portal = { enable = true; wlr.enable = true; diff --git a/hardware-configuration/capibara.nix b/nixos/hosts/capibara/hardware-configuration.nix similarity index 100% rename from hardware-configuration/capibara.nix rename to nixos/hosts/capibara/hardware-configuration.nix diff --git a/hosts/trantor/default.nix b/nixos/hosts/trantor/default.nix similarity index 82% rename from hosts/trantor/default.nix rename to nixos/hosts/trantor/default.nix index 3ffd749..e6fee11 100644 --- a/hosts/trantor/default.nix +++ b/nixos/hosts/trantor/default.nix @@ -2,23 +2,19 @@ # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). -{ config, pkgs, stablePkgs, impermanence, ... }: +{ config, pkgs, stablePkgs, ... }: let home = "/home/rilla"; in { imports = [ - ../../hardware-configuration/trantor.nix - ../../common - ../../common/desktop.nix + ./hardware-configuration/trantor.nix + ../../modules/common + ../../modules/common/desktop.nix ]; - home-manager = { - users.rilla.imports = [ - ../../home/trantor.nix - "${impermanence}/home-manager.nix" - ]; - extraSpecialArgs.stablePkgs = stablePkgs; - }; + home-manager.users.rilla.imports = [ + ../../../home/hosts/trantor.nix + ]; fileSystems = { @@ -180,45 +176,16 @@ in { "user" = { device = "/dev/disk/by-uuid/d8e9b35d-704a-4f66-bc19-0dd3e158de36"; keyFile = "/user_keyfile.bin"; - # yubikey = { - # slot = 2; - # twoFactor = false; - # gracePeriod = 30; - # keyLength = 64; - # saltLength = 16; - # storage = { - # device = "/dev/nvme0n1p1"; - # fsType = "vfat"; - # path = "/crypt-storage/default"; - # }; - # }; }; }; }; secrets = { - # "/system_keyfile.bin" = "/boot/system_keyfile.bin"; - # "/user_keyfile.bin" = "/boot/user_keyfile.bin"; "/system_keyfile.bin" = "/etc/luks-keys/system.bin"; "/user_keyfile.bin" = "/etc/luks-keys/user.bin"; }; }; }; - # services.beesd.filesystems = { - # system = { - # spec = "/dev/mapper/system"; - # hashTableSizeMB = 256; - # verbosity = "info"; - # extraOptions = [ "--loadavg-target" "2.0" ]; - # }; - # user = { - # spec = "/dev/mapper/user"; - # hashTableSizeMB = 256; - # verbosity = "info"; - # extraOptions = [ "--loadavg-target" "2.0" ]; - # }; - # }; - # todo: target and/or archive services.btrbk = { sshAccess = [{ diff --git a/hardware-configuration/trantor.nix b/nixos/hosts/trantor/hardware-configuration.nix similarity index 100% rename from hardware-configuration/trantor.nix rename to nixos/hosts/trantor/hardware-configuration.nix diff --git a/common/default.nix b/nixos/modules/common/default.nix similarity index 100% rename from common/default.nix rename to nixos/modules/common/default.nix diff --git a/common/desktop.nix b/nixos/modules/common/desktop.nix similarity index 100% rename from common/desktop.nix rename to nixos/modules/common/desktop.nix