mirror of
https://codeberg.org/leana8959/.files.git
synced 2025-12-06 14:49:14 +00:00
make package set self referential collapse redundant files for package plumbing rework packages overlay and simplify scope update altiosevka font make altiosevka an overlay instead note invert package logic scope overlay unify package overlay logic fix overlay reference
195 lines
5.2 KiB
Nix
195 lines
5.2 KiB
Nix
# 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.rev;
|
|
}
|
|
|
|
#
|
|
# 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") {lix = 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
|
|
|
|
#
|
|
# 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";
|
|
};
|
|
};
|
|
};
|
|
}
|
|
];
|
|
}
|