# Entry point to cherry pick modules let sources = import ../sources.nix; hostname = "tungsten"; username = "leana"; in { config, lib, ... }: let inherit (lib.modules) mkAliasOptionModule; in { imports = [ # # Shorthands # (mkAliasOptionModule ["me"] ["users" "users" username]) (mkAliasOptionModule ["hm"] ["home-manager" "users" username]) # # hostname # {_module.args = {inherit hostname;};} # # nixpkgs # { nixpkgs = { overlays = map import [ ../overlays/agenix.nix ../overlays/disko.nix ../overlays/nur.nix ../overlays/wired-notify.nix ../overlays/nix-tree.nix ../packages/overlay.nix ]; # Set NIX_PATH and flake registry at the same time # https://github.com/NixOS/nixpkgs/pull/254405 flake.source = sources.nixpkgs; }; system.nixos.version = lib.substring 0 8 sources.nixpkgs.revision; } # # NixOS modules # ./tungsten/nixos/hardware-configuration.nix # generated ./tungsten/nixos/fs.nix ./tungsten/nixos/restic.nix ./tungsten/nixos/battery.nix ./tungsten/nixos/audio.nix ./tungsten/nixos/connectivity.nix ./tungsten/nixos/input.nix ./tungsten/nixos/misc.nix ./tungsten/nixos/display.nix ./tungsten/nixos/gui.nix ./tungsten/nixos/locale.nix ./tungsten/nixos/unfree-predicate.nix ./tungsten/nixos/programs.nix ../nixosModules/common/disable-command-not-found.nix ../nixosModules/common/network.nix ../nixosModules/common/sudo-conf.nix ../nixosModules/common/system-nixconf.nix ../nixosModules/extra/layouts ../nixosModules/extra/zram.nix ../nixosModules/extra/leana.nix ../nixosModules/extra/macbook-swap-fn-ctrl.nix ../nixosModules/extra/macbook-swap-cmd-opt.nix # # Extern modules # (sources.disko + "/module.nix") ../disko/tungsten/btrfs.nix (sources.agenix + "/modules/age.nix") (import sources.url-eater).nixosModules.default (sources.nixos-hardware + "/apple/macbook-air/6") (import (sources.lix-module + "/module.nix") {inherit (sources) lix;}) # # home-manager # (sources.home-manager + "/nixos") { home-manager = { useGlobalPkgs = true; useUserPackages = true; sharedModules = [{home.stateVersion = lib.mkDefault config.system.stateVersion;}]; }; hm.imports = [ # # hostname # {_module.args = {inherit hostname;};} # # home modules # ./tungsten/home/programs.nix ./tungsten/home/misc.nix ./tungsten/home/firefox.nix ./tungsten/home/xmobar.nix # Language server packages, etc ./tungsten/home/dev.nix ../homeModules/common/btop ../homeModules/common/cmus ../homeModules/common/fcitx5 ../homeModules/common/fish ../homeModules/common/ranger ../homeModules/common/starship ../homeModules/common/tmux ../homeModules/common/vim ../homeModules/common/wired ../homeModules/common/atuin.nix ../homeModules/common/battery-notify.nix ../homeModules/common/direnv.nix ../homeModules/common/feh.nix ../homeModules/common/firefox.nix ../homeModules/common/fzf.nix ../homeModules/common/git.nix ../homeModules/common/gpg.nix ../homeModules/common/kitty.nix ../homeModules/common/leana.nix ../homeModules/common/locale.nix ../homeModules/common/neovim.nix ../homeModules/common/packages.nix ../homeModules/common/password-store.nix ../homeModules/common/sioyek.nix ../homeModules/common/user-nixconf.nix ../homeModules/extra/tmux-fish-integration.nix # # Extern modules # (sources.agenix + "/modules/age-home.nix") (import sources.wired-notify).homeManagerModules.default ]; } # # Secrets # { age.secrets = { wpa_password.file = "${../secrets/wpa_password.age}"; restic_backblaze_pwd.file = "${../secrets/restic_backblaze_pwd.age}"; restic_backblaze_repo.file = "${../secrets/restic_backblaze_repo.age}"; restic_backblaze_env.file = "${../secrets/restic_backblaze_env.age}"; four_pwd.file = "${../secrets/four_pwd.age}"; restic_four_pwd.file = "${../secrets/restic_four_pwd.age}"; sgbk_pwd.file = "${../secrets/sgbk_pwd.age}"; restic_sgbk_pwd.file = "${../secrets/restic_sgbk_pwd.age}"; two_pwd.file = "${../secrets/two_pwd.age}"; }; hm = { age.secrets = { sshconfig = { file = "${../secrets/sshconfig.age}"; path = "/home/leana/.ssh/config"; }; ltex_dict = { file = "${../secrets/ltex_dict.age}"; path = "/home/leana/.config/ltex_dict"; }; }; }; } ]; }