Compare commits

..

3 Commits

Author SHA1 Message Date
Jan-Bulthuis
c991768cc2 chore: Update 2026-02-07 17:12:07 +01:00
Jan-Bulthuis
268879ee01 fix: Add Downloads folder fix preference for workspaces 2026-02-07 17:02:56 +01:00
Jan-Bulthuis
7e9f617965 chore: Update impermanence 2026-02-07 17:02:17 +01:00
9 changed files with 114 additions and 54 deletions

79
flake.lock generated
View File

@ -7,11 +7,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1765794845, "lastModified": 1769524058,
"narHash": "sha256-YD5QWlGnusNbZCqR3pxG8tRxx9yUXayLZfAJRWspq2s=", "narHash": "sha256-zygdD6X1PcVNR2PsyK4ptzrVEiAdbMqLos7utrMDEWE=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "7194cfe5b7a3660726b0fe7296070eaef601cae9", "rev": "71a3fc97d80881e91710fe721f1158d3b96ae14d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -79,11 +79,32 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1765980955, "lastModified": 1770476834,
"narHash": "sha256-rB45jv4uwC90vM9UZ70plfvY/2Kdygs+zlQ07dGQFk4=", "narHash": "sha256-cyxgVsNfHnJ4Zn6G1EOzfTXbjTy7Ds9zMOsZaX7VZWs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "89c9508bbe9b40d36b3dc206c2483ef176f15173", "rev": "6cee0821577643e0b34e2c5d9a90d0b1b5cdca70",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"impermanence",
"nixpkgs"
]
},
"locked": {
"lastModified": 1768598210,
"narHash": "sha256-kkgA32s/f4jaa4UG+2f8C225Qvclxnqs76mf8zvTVPg=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "c47b2cc64a629f8e075de52e4742de688f930dc6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -93,12 +114,16 @@
} }
}, },
"impermanence": { "impermanence": {
"inputs": {
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs"
},
"locked": { "locked": {
"lastModified": 1737831083, "lastModified": 1769548169,
"narHash": "sha256-LJggUHbpyeDvNagTUrdhe/pRVp4pnS6wVKALS782gRI=", "narHash": "sha256-03+JxvzmfwRu+5JafM0DLbxgHttOQZkUtDWBmeUkN8Y=",
"owner": "nix-community", "owner": "nix-community",
"repo": "impermanence", "repo": "impermanence",
"rev": "4b3e914cdf97a5b536a889e939fb2fd2b043a170", "rev": "7b1d382faf603b6d264f58627330f9faa5cba149",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -172,11 +197,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1765779637, "lastModified": 1768564909,
"narHash": "sha256-KJ2wa/BLSrTqDjbfyNx70ov/HdgNBCBBSQP3BIzKnv4=", "narHash": "sha256-Kell/SpJYVkHWMvnhqJz/8DqQg2b6PguxVWOuadbHCc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "1306659b587dc277866c7b69eb97e5f07864d8c4", "rev": "e4bae1bd10c9c57b2cf517953ab70060a828ee6f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -188,11 +213,11 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1765687488, "lastModified": 1767313136,
"narHash": "sha256-7YAJ6xgBAQ/Nr+7MI13Tui1ULflgAdKh63m1tfYV7+M=", "narHash": "sha256-16KkgfdYqjaeRGBaYsNrhPRRENs0qzkQVUooNHtoy2w=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "d02bcc33948ca19b0aaa0213fe987ceec1f4ebe1", "rev": "ac62194c3917d5f474c1a844b6fd6da2db95077d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -202,6 +227,22 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": {
"locked": {
"lastModified": 1770197578,
"narHash": "sha256-AYqlWrX09+HvGs8zM6ebZ1pwUqjkfpnv8mewYwAo+iM=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "00c21e4c93d963c50d4c0c89bfa84ed6e0694df2",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"disko": "disko", "disko": "disko",
@ -210,7 +251,7 @@
"madd": "madd", "madd": "madd",
"nix-minecraft": "nix-minecraft", "nix-minecraft": "nix-minecraft",
"nix-modpack": "nix-modpack", "nix-modpack": "nix-modpack",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs_2",
"nixpkgs-stable": "nixpkgs-stable", "nixpkgs-stable": "nixpkgs-stable",
"secrets": "secrets", "secrets": "secrets",
"sops-nix": "sops-nix" "sops-nix": "sops-nix"
@ -238,11 +279,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1765836173, "lastModified": 1770145881,
"narHash": "sha256-hWRYfdH2ONI7HXbqZqW8Q1y9IRbnXWvtvt/ONZovSNY=", "narHash": "sha256-ktjWTq+D5MTXQcL9N6cDZXUf9kX8JBLLBLT0ZyOTSYY=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "443a7f2e7e118c4fc63b7fae05ab3080dd0e5c63", "rev": "17eea6f3816ba6568b8c81db8a4e6ca438b30b7c",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -29,5 +29,10 @@
nix-modpack.inputs.nixpkgs.follows = "nixpkgs"; nix-modpack.inputs.nixpkgs.follows = "nixpkgs";
}; };
outputs = inputs: import ./glue inputs; outputs =
inputs:
import ./glue {
inherit inputs;
excludeHomeManagerModules = [ "impermanence" ];
};
} }

View File

@ -1,4 +1,7 @@
inputs: {
inputs,
excludeHomeManagerModules ? [ ],
}:
let let
flake = inputs.self; flake = inputs.self;
nixpkgs = inputs.nixpkgs; nixpkgs = inputs.nixpkgs;
@ -113,7 +116,9 @@ let
homeProfiles = collectModules "${flake}/profiles/home"; homeProfiles = collectModules "${flake}/profiles/home";
inputHomeModules = lib.map (flake: flake.outputs.homeManagerModules.default) ( inputHomeModules = lib.map (flake: flake.outputs.homeManagerModules.default) (
lib.filter (flake: lib.hasAttrByPath [ "outputs" "homeManagerModules" "default" ] flake) ( lib.filter (flake: lib.hasAttrByPath [ "outputs" "homeManagerModules" "default" ] flake) (
lib.attrValues inputs lib.attrValues (
lib.attrsets.filterAttrs (name: entry: !(lib.elem name excludeHomeManagerModules)) inputs
)
) )
); );

View File

@ -2,11 +2,11 @@
with lib; with lib;
let let
# cfg = config.modules.impermanence; cfg = config.modules.impermanence;
in in
{ {
options.modules.impermanence = { options.modules.impermanence = {
# enable = mkEnableOption "Impermanence"; enable = mkEnableOption "Impermanence";
directories = mkOption { directories = mkOption {
type = types.listOf types.str; type = types.listOf types.str;
default = [ ]; default = [ ];
@ -23,12 +23,12 @@ in
}; };
}; };
# config = mkIf cfg.enable { config = mkIf cfg.enable {
# home.persistence."/persist/home/${config.home.username}" = { home.persistence."/persist/home" = {
# enable = true; enable = true;
# allowOther = true; hideMounts = true;
# directories = cfg.directories; directories = cfg.directories;
# files = cfg.files; files = cfg.files;
# }; };
# }; };
} }

View File

@ -57,6 +57,9 @@ in
modules.networkmanager.enable = true; modules.networkmanager.enable = true;
# Impermanence # Impermanence
modules.impermanence.directories = [ "/etc/NetworkManager/system-connections" ]; modules.impermanence.directories = [
"/etc/NetworkManager/system-connections"
"/var/lib/bluetooth"
];
}; };
} }

View File

@ -57,25 +57,25 @@ in
directories = cfg.directories; directories = cfg.directories;
files = cfg.files; files = cfg.files;
}; };
"/persist/home" = { # "/persist/home" = {
enable = true; # enable = true;
hideMounts = true; # hideMounts = true;
users = ( # users = (
lib.mapAttrs' ( # lib.mapAttrs' (
name: value: # name: value:
let # let
user = name; # user = name;
homeDir = "/home/${user}"; # homeDir = "/home/${user}";
impConfig = value.modules.impermanence; # impConfig = value.modules.impermanence;
in # in
lib.nameValuePair user { # lib.nameValuePair user {
home = homeDir; # home = homeDir;
directories = impConfig.directories; # directories = impConfig.directories;
files = impConfig.files; # files = impConfig.files;
} # }
) config.home-manager.users # ) config.home-manager.users
); # );
}; # };
}; };
}; };
} }

View File

@ -16,6 +16,7 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
modules = { modules = {
impermanence.enable = true;
# btop.enable = true; # btop.enable = true;
direnv.enable = true; direnv.enable = true;
fish.enable = true; fish.enable = true;

View File

@ -44,7 +44,7 @@ in
two-finger-scrolling-enabled = true; two-finger-scrolling-enabled = true;
}; };
"org/gnome/mutter" = { "org/gnome/mutter" = {
workspaces-only-on-primary = false; workspaces-only-on-primary = true;
}; };
"org/gnome/nautilus/icon-view" = { "org/gnome/nautilus/icon-view" = {
default-zoom-level = "small"; default-zoom-level = "small";

View File

@ -25,7 +25,7 @@ in
thunderbird thunderbird
signal-desktop signal-desktop
prusa-slicer prusa-slicer
freecad-wayland pkgs-stable.freecad-wayland
inkscape inkscape
# ente-auth # ente-auth
audacity audacity
@ -49,6 +49,7 @@ in
# kicad # kicad
vlc vlc
authenticator authenticator
hotspot
podman podman
podman-compose podman-compose
@ -154,6 +155,10 @@ in
}; };
}; };
systemd.user.tmpfiles.rules = [
"d ${config.home.homeDirectory}/Downloads - - - - -"
];
modules = { modules = {
profiles.gnome.enable = true; profiles.gnome.enable = true;