1
Fork 0

Prepare lapetus reinstall

This commit is contained in:
Matei Adriel 2024-01-17 08:31:33 +01:00
parent d806a7077c
commit a67ff67ada
No known key found for this signature in database
7 changed files with 112 additions and 20 deletions

View file

@ -2,10 +2,10 @@
let let
spicePkgs = inputs.spicetify-nix.packages.${pkgs.system}.default; spicePkgs = inputs.spicetify-nix.packages.${pkgs.system}.default;
themeMap = lib.fix (self: { themeMap = lib.fix (self: {
"Catppuccin Mocha" = spicePkgs.themes.catppuccin; "Catppuccin Mocha" = spicePkgs.themes.Comfy;
"Catppuccin Latte" = spicePkgs.themes.catppuccin; "Catppuccin Latte" = spicePkgs.themes.Comfy;
"Catppuccin Frappe" = spicePkgs.themes.catppuccin; "Catppuccin Frappe" = spicePkgs.themes.Comfy;
"Catppuccin Macchiato" = spicePkgs.themes.catppuccin; "Catppuccin Macchiato" = spicePkgs.themes.Comfy;
default.light = self."Catppuccin Latte"; default.light = self."Catppuccin Latte";
default.dark = self."Catppuccin Macchiato"; default.dark = self."Catppuccin Macchiato";
@ -42,7 +42,9 @@ in
wikify # Shows an artist's wikipedia entry wikify # Shows an artist's wikipedia entry
songStats songStats
showQueueDuration showQueueDuration
genre # REASON: broken
# https://github.com/the-argus/spicetify-nix/issues/50
# genre
adblock adblock
savePlaylists # Adds a button to duplicate playlists savePlaylists # Adds a button to duplicate playlists
]; ];

View file

@ -29,7 +29,6 @@
"hyprland": { "branch": "main", "commit": "be665459a21730a6acdfaa9c6352cda5e4763af6" }, "hyprland": { "branch": "main", "commit": "be665459a21730a6acdfaa9c6352cda5e4763af6" },
"idris": { "branch": "main", "commit": "8bff02984a33264437e70fd9fff4359679d910da" }, "idris": { "branch": "main", "commit": "8bff02984a33264437e70fd9fff4359679d910da" },
"inc-rename": { "branch": "main", "commit": "6f9b5f9cb237e12935144cdc535322b8c93c1b25" }, "inc-rename": { "branch": "main", "commit": "6f9b5f9cb237e12935144cdc535322b8c93c1b25" },
"inc-rename.nvim": { "branch": "main", "commit": "a48c7cec5c4f00d7438dce5fadb55f4d715ef9f2" },
"indent-blankline": { "branch": "master", "commit": "7206c77cb931f79885fc47f88ae18f99148392eb" }, "indent-blankline": { "branch": "master", "commit": "7206c77cb931f79885fc47f88ae18f99148392eb" },
"lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" }, "lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" },
"lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" },
@ -37,6 +36,8 @@
"live-command": { "branch": "main", "commit": "d460067d47948725a6f25b20f31ea8bbfdfe4622" }, "live-command": { "branch": "main", "commit": "d460067d47948725a6f25b20f31ea8bbfdfe4622" },
"lspkind.nvim": { "branch": "master", "commit": "57610d5ab560c073c465d6faf0c19f200cb67e6e" }, "lspkind.nvim": { "branch": "master", "commit": "57610d5ab560c073c465d6faf0c19f200cb67e6e" },
"luasnip": { "branch": "master", "commit": "118263867197a111717b5f13d954cd1ab8124387" }, "luasnip": { "branch": "master", "commit": "118263867197a111717b5f13d954cd1ab8124387" },
"mini.base16": { "branch": "main", "commit": "867265505d5147af45d38ca120bbfddaa43e61aa" },
"mini.colors": { "branch": "main", "commit": "a6b594b7cc07a55fd9e9698be2ff5d2194fd4ac6" },
"mini.comment": { "branch": "main", "commit": "3d9c8009615857e982f09bc5357fc95f2a2175f3" }, "mini.comment": { "branch": "main", "commit": "3d9c8009615857e982f09bc5357fc95f2a2175f3" },
"mini.files": { "branch": "main", "commit": "173d73f5d0b2a9abbb2d6533a3770fdbbd0c4dcc" }, "mini.files": { "branch": "main", "commit": "173d73f5d0b2a9abbb2d6533a3770fdbbd0c4dcc" },
"mini.operators": { "branch": "main", "commit": "7a97e2528a4c274e9da8953d3ba22f493c360a9f" }, "mini.operators": { "branch": "main", "commit": "7a97e2528a4c274e9da8953d3ba22f493c360a9f" },
@ -57,7 +58,6 @@
"plenary": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, "plenary": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
"plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
"rust-tools": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" }, "rust-tools": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" },
"rust-tools.nvim": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" },
"scrap": { "branch": "main", "commit": "0f833d8dccaabe49c1ed7a2b24cfd887d9d5003f" }, "scrap": { "branch": "main", "commit": "0f833d8dccaabe49c1ed7a2b24cfd887d9d5003f" },
"smart-splits.nvim": { "branch": "master", "commit": "c970c7a3cc7ba635fd73d43c81b40f04c00f5058" }, "smart-splits.nvim": { "branch": "master", "commit": "c970c7a3cc7ba635fd73d43c81b40f04c00f5058" },
"ssr": { "branch": "main", "commit": "bb323ba621ac647b4ac5638b47666e3ef3c279e1" }, "ssr": { "branch": "main", "commit": "bb323ba621ac647b4ac5638b47666e3ef3c279e1" },

View file

@ -1328,7 +1328,9 @@ let
# }}} # }}}
# {{{ obsidian # {{{ obsidian
obsidian = obsidian =
let vault = "${config.xdg.userDirs.extraConfig.XDG_PROJECTS_DIR}/stellar-sanctum"; let
vault = "${config.xdg.userDirs.extraConfig.XDG_PROJECTS_DIR}/stellar-sanctum";
dateFormat = "%Y-%m-%d";
in in
{ {
package = "epwalsh/obsidian.nvim"; package = "epwalsh/obsidian.nvim";
@ -1346,9 +1348,17 @@ let
opts = { opts = {
dir = vault; dir = vault;
notes_subdir = "chaos"; notes_subdir = "chaos";
daily_notes = { daily_notes = {
folder = "daily"; folder = "daily";
date_format = "%Y-%m-%d"; date_format = dateFormat;
template = "New daily note.md";
};
templates = {
subdir = "templates";
date_format = dateFormat;
time_format = "%H:%M";
}; };
completion = { completion = {

View file

@ -46,6 +46,9 @@ in
services.journald.extraConfig = lib.mkDefault '' services.journald.extraConfig = lib.mkDefault ''
SystemMaxUse=256M SystemMaxUse=256M
''; '';
# Boot using systemd
boot.initrd.systemd.enable = true;
# }}} # }}}
nixpkgs = { nixpkgs = {

View file

@ -9,10 +9,11 @@
type = "table"; type = "table";
format = "gpt"; format = "gpt";
partitions = [ partitions = [
# {{{ Boot
{ {
name = "ESP"; name = "ESP";
start = "0"; start = "0";
end = "64MiB"; end = "512MiB";
fs-type = "fat32"; fs-type = "fat32";
bootable = true; bootable = true;
content = { content = {
@ -21,15 +22,18 @@
mountpoint = "/boot"; mountpoint = "/boot";
}; };
} }
# }}}
# {{{ Main
{ {
name = "zfs"; name = "zfs";
start = "128MiB"; start = "1GiB";
end = "100%"; end = "100%";
content = { content = {
type = "zfs"; type = "zfs";
pool = "zroot"; pool = "zroot";
}; };
} }
# }}}
]; ];
}; };
}; };
@ -43,7 +47,6 @@
postCreateHook = '' postCreateHook = ''
zfs snapshot zroot@blank zfs snapshot zroot@blank
zfs set keylocation="prompt" "zroot";
''; '';
rootFsOptions = { rootFsOptions = {
@ -51,7 +54,7 @@
"com.sun:auto-snapshot" = "false"; "com.sun:auto-snapshot" = "false";
encryption = "aes-256-gcm"; encryption = "aes-256-gcm";
keyformat = "passphrase"; keyformat = "passphrase";
keylocation = "file:///tmp/secret.key"; keylocation = "file:///hermes/secrets/lapetus/disk.key";
}; };
# {{{ Datasets # {{{ Datasets

View file

@ -1,12 +1,88 @@
{ config, ... }: { { config, pkgs, ... }: {
# Configure ZFS # Configure ZFS
boot.supportedFilesystems = [ "zfs" ]; boot.supportedFilesystems = [ "zfs" ];
boot.zfs.extraPools = [ "zroot" ]; boot.zfs.extraPools = [ "zroot" ];
boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages; boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
boot.kernelParams = [ "nohibernate" ]; boot.kernelParams = [ "nohibernate" ];
# Roll back to blank snapshot on boot boot.initrd.systemd.services =
# boot.initrd.postDeviceCommands = lib.mkAfter '' let secretMountpoint = "/hermes";
# zfs rollback -r zroot@blank in
# ''; {
# {{{ Mount usb
mountSecrets = {
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
unitConfig.DefaultDependencies = "no";
wantedBy = [ "initrd.target" ];
before = [ "zfs-mount.service" ];
after = [ "zfs-import.target" ];
script = ''
MOUNTPOINT="${secretMountpoint}"
USB="/dev/sdb"
echo "Waiting for $USB"
for I in {1..20}; do
if [ -e "$USB" ]; then break; fi
echo -n .
sleep 1
done
echo "Found $USB"
sleep 1
if [ -e "$USB" ]; then
echo "Mounting $USB"
mkdir -p $MOUNTPOINT
mount -o ro "$USB" $MOUNTPOINT
if [ $? -eq 0 ]; then
exit 0
else
echo "Error mounting $USB" >&2
fi
else
echo "Cannot find $USB" >&2
fi
'';
};
# }}}
# {{{ Unmount usb
unmountSecrets = {
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
unitConfig.DefaultDependencies = "no";
wantedBy = [ "initrd.target" ];
after = [ "zfs-mount.service" ];
script = ''
MOUNTPOINT="${secretMountpoint}"
if [ -e "$MOUNTPOINT" ]; then
echo "Clearing $MOUNTPOINT"
umount $MOUNTPOINT
rmdir $MOUNTPOINT
echo "Unmounted $MOUNTPOINT"
else
echo "Nothing to unmount"
fi
'';
};
# }}}
# # {{{ Rollback
# rollback = {
# path = [ pkgs.zfs ];
# serviceConfig = {
# Type = "oneshot";
# RemainAfterExit = true;
# };
# unitConfig.DefaultDependencies = "no";
# wantedBy = [ "initrd.target" ];
# after = [ "zfs-import.target" ];
# before = [ "sysroot.mount" ];
# script = "zfs rollback -r zroot@blank";
# };
# # }}}
};
} }

View file

@ -1,8 +1,6 @@
{ inputs, ... }: { { inputs, ... }: {
imports = [ inputs.grub2-themes.nixosModules.default ]; imports = [ inputs.grub2-themes.nixosModules.default ];
boot.initrd.systemd.enable = true;
# Defined [here](https://github.com/vinceliuice/grub2-themes/blob/master/flake.nix#L11) # Defined [here](https://github.com/vinceliuice/grub2-themes/blob/master/flake.nix#L11)
boot.loader.grub2-theme = { boot.loader.grub2-theme = {
enable = true; enable = true;