Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2025-02-20 11:43:33 +00:00
parent 7737abc45e
commit 5c75205343
10 changed files with 75 additions and 91 deletions

View File

@@ -1,7 +1,11 @@
{ ... }:
{ pkgs, ... }:
{
services.btrfs.autoScrub = {
enable = true;
interval = "weekly";
};
environment.systemPackages = with pkgs; [
compsize
];
}

View File

@@ -49,7 +49,7 @@ check_key() {
}
set_password_file() {
SOPS_AGE_KEY_FILE="$(realpath "$flake/secrets/$key/key.txt")"
SOPS_AGE_KEY_FILE="$flake/secrets/$key/key.txt"
export SOPS_AGE_KEY_FILE
sops --decrypt --extract "['luks']" "$flake/hosts/$host/secrets/secrets.yaml" > /tmp/installer.key
unset SOPS_AGE_KEY_FILE
@@ -79,7 +79,11 @@ copy_keys() {
}
set_permissions() {
chown -R "$(cat "$flake/hosts/$host/users/$user/uid"):100" "$root/persist/home/$user"
for path in "$flake/hosts/$host/users"/*; do
local user
user=$(basename "$path")
chown -R "$(cat "$flake/hosts/$host/users/$user/uid"):100" "$root/persist/home/$user"
done
}
install() {

View File

@@ -1,17 +0,0 @@
{
user ? throw "user argument is required",
home ? throw "home argument is required",
}:
{
config,
lib,
inputs,
...
}:
{
home-manager.users.${user} = {
imports = lib.lists.optional (
!config.home-manager.useGlobalPkgs
) inputs.nur.modules.homeManager.default;
};
}

View File

@@ -43,32 +43,31 @@
content = {
type = "btrfs";
extraArgs = [ "-f" ];
subvolumes = {
"@" = {
mountpoint = "/";
};
"@persist" = {
mountpoint = "/persist";
subvolumes =
let
mountOptions = [
"compress=zstd"
"compress=zstd:1"
"noatime"
];
in
{
"@" = {
mountpoint = "/";
inherit mountOptions;
};
"@persist" = {
mountpoint = "/persist";
inherit mountOptions;
};
"@nix" = {
mountpoint = "/nix";
inherit mountOptions;
};
"@cache" = {
mountpoint = "/cache";
inherit mountOptions;
};
};
"@nix" = {
mountpoint = "/nix";
mountOptions = [
"compress=zstd"
"noatime"
];
};
"@cache" = {
mountpoint = "/cache";
mountOptions = [
"compress=zstd"
"noatime"
];
};
};
};
};
};

View File

@@ -31,7 +31,6 @@ in
(import ../../../common/configs/user/console/nix-cleanup { inherit user home; })
(import ../../../common/configs/user/console/nix-develop { inherit user home; })
(import ../../../common/configs/user/console/nix-direnv { inherit user home; })
(import ../../../common/configs/user/console/nixpkgs { inherit user home; })
(import ../../../common/configs/user/console/pipewire { inherit user home; })
(import ../../../common/configs/user/console/podman { inherit user home; })
(import ../../../common/configs/user/console/ranger { inherit user home; })

View File

@@ -43,32 +43,31 @@
content = {
type = "btrfs";
extraArgs = [ "-f" ];
subvolumes = {
"@" = {
mountpoint = "/";
};
"@persist" = {
mountpoint = "/persist";
subvolumes =
let
mountOptions = [
"compress=zstd"
"compress=zstd:3"
"noatime"
];
in
{
"@" = {
mountpoint = "/";
inherit mountOptions;
};
"@persist" = {
mountpoint = "/persist";
inherit mountOptions;
};
"@nix" = {
mountpoint = "/nix";
inherit mountOptions;
};
"@cache" = {
mountpoint = "/cache";
inherit mountOptions;
};
};
"@nix" = {
mountpoint = "/nix";
mountOptions = [
"compress=zstd"
"noatime"
];
};
"@cache" = {
mountpoint = "/cache";
mountOptions = [
"compress=zstd"
"noatime"
];
};
};
};
};
};

View File

@@ -30,7 +30,6 @@ in
(import ../../../common/configs/user/console/nix-cleanup { inherit user home; })
(import ../../../common/configs/user/console/nix-develop { inherit user home; })
(import ../../../common/configs/user/console/nix-direnv { inherit user home; })
(import ../../../common/configs/user/console/nixpkgs { inherit user home; })
(import ../../../common/configs/user/console/pipewire { inherit user home; })
(import ../../../common/configs/user/console/podman { inherit user home; })
(import ../../../common/configs/user/console/ranger { inherit user home; })

View File

@@ -35,32 +35,31 @@
content = {
type = "btrfs";
extraArgs = [ "-f" ];
subvolumes = {
"@" = {
mountpoint = "/";
};
"@persist" = {
mountpoint = "/persist";
subvolumes =
let
mountOptions = [
"compress=zstd"
"compress=zstd:5"
"noatime"
];
in
{
"@" = {
mountpoint = "/";
inherit mountOptions;
};
"@persist" = {
mountpoint = "/persist";
inherit mountOptions;
};
"@nix" = {
mountpoint = "/nix";
inherit mountOptions;
};
"@cache" = {
mountpoint = "/cache";
inherit mountOptions;
};
};
"@nix" = {
mountpoint = "/nix";
mountOptions = [
"compress=zstd"
"noatime"
];
};
"@cache" = {
mountpoint = "/cache";
mountOptions = [
"compress=zstd"
"noatime"
];
};
};
};
};
};

View File

@@ -22,7 +22,6 @@ in
(import ../../../common/configs/user/console/nix { inherit user home; })
(import ../../../common/configs/user/console/nix-develop { inherit user home; })
(import ../../../common/configs/user/console/nix-direnv { inherit user home; })
(import ../../../common/configs/user/console/nixpkgs { inherit user home; })
(import ../../../common/configs/user/console/ranger { inherit user home; })
(import ../../../common/configs/user/console/sops { inherit user home; })
(import ../../../common/configs/user/console/ssh { inherit user home; })

View File

@@ -74,7 +74,7 @@ EOF
cat <<'EOF' > "./hosts/$host/format.nix"
{
disko.devices = {
disk.installer = {
disk.main = {
device = ""; # Set this to the device you want to install to
type = "disk";
content = {
@@ -172,7 +172,6 @@ cat <<EOF > "./hosts/$host/default.nix"
networking.hostName = "$host";
i18n.defaultLocale = "en_US.UTF-8";
sops.defaultSopsFile = ./secrets/secrets.yaml;
}
EOF