Compare commits

1 Commits
Author SHA1 Message Date
msyds 3ad33b734a chore: bump all
build / build (push) Failing after 53s
2026-06-25 05:55:08 -06:00
5 changed files with 69 additions and 67 deletions
+3 -2
View File
@@ -15,14 +15,15 @@ in {
# https://support.mozilla.org/en-US/kb/recovering-important-data-from-an-old-profile. # https://support.mozilla.org/en-US/kb/recovering-important-data-from-an-old-profile.
sydnix.impermanence.directories = [ sydnix.impermanence.directories = [
"${config.xdg.configHome}/mozilla/firefox" "${config.xdg.configHome}/mozilla/firefox"
# "${config.xdg.configHome}/mozilla/firefox" ".cache/mozilla/firefox"
".mozilla"
]; ];
stylix.targets.firefox.profileNames = [ "msyds" ]; stylix.targets.firefox.profileNames = [ "msyds" ];
programs.firefox = { programs.firefox = {
enable = true; enable = true;
configPath = "${config.xdg.configHome}/mozilla/firefox"; # configPath = "${config.xdg.configHome}/mozilla/firefox";
# Available language codes can be found on the releases page: # Available language codes can be found on the releases page:
# https://releases.mozilla.org/pub/firefox/releases/134.0.2/linux-x86_64/xpi/. # https://releases.mozilla.org/pub/firefox/releases/134.0.2/linux-x86_64/xpi/.
-4
View File
@@ -342,10 +342,6 @@ in {
place-within-backdrop = true; place-within-backdrop = true;
} }
]; ];
# debug = {
# wait-for-frame-completion-in-pipewire = {};
# };
}; };
}; };
}; };
@@ -267,19 +267,10 @@ in {
"poweroff" "poweroff"
"lock" "lock"
"suspend" "suspend"
"restart" # "restart"
]; ];
powerMenuDefaultAction = "logout"; powerMenuDefaultAction = "logout";
powerMenuGridLayout = false; powerMenuGridLayout = false;
customPowerActionLock = "";
customPowerActionLogout = "";
customPowerActionSuspend = "";
customPowerActionHibernate = "";
customPowerActionReboot = "";
customPowerActionPowerOff = "";
updaterUseCustomCommand = false;
updaterCustomCommand = "";
updaterTerminalAdditionalParams = "";
displayNameMode = "system"; displayNameMode = "system";
screenPreferences.wallpaper = []; screenPreferences.wallpaper = [];
showOnLastDisplay = {}; showOnLastDisplay = {};
-10
View File
@@ -23,16 +23,6 @@ in {
after = ["xwayland-satellite.service"]; after = ["xwayland-satellite.service"];
}; };
# programs.dank-material-shell.greeter = {
# enable = true;
# compositor.name = "niri";
# # configHome = "/home/msyds";
# logs = {
# save = true;
# path = "/tmp/dms-greeter.log";
# };
# };
# services.greetd.settings.default_session.command = ""; # services.greetd.settings.default_session.command = "";
services.displayManager.dms-greeter = { services.displayManager.dms-greeter = {
+65 -41
View File
@@ -24,51 +24,75 @@ in {
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
boot.initrd.systemd.services.rollback = { boot.initrd.systemd = {
description = '' services.impermance-btrfs-rolling-root = {
Rollback root filesystem to empty while maintaining old roots description = "Archiving existing BTRFS root subvolume and creating a fresh one";
''; unitConfig.DefaultDependencies = false;
wantedBy = [ "initrd.target" ]; serviceConfig = {
before = [ "sysroot.mount" ]; # The script needs to run to completion before this service
path = with pkgs; [ # is done
coreutils Type = "oneshot";
findutils # NOTE: to be able to see errors in your script do this
util-linuxMinimal.bin StandardOutput = "journal+console";
btrfs-progs StandardError = "journal+console";
]; };
unitConfig.DefaultDependencies = "no"; # This service is required for boot to succeed
serviceConfig.Type = "oneshot"; requiredBy = ["initrd.target"];
script = '' # Should complete before any file systems are mounted
# Mount the btrfs filesystem. before = ["sysroot.mount"];
mkdir -p /btrfs-tmp
mount -t btrfs "${cfg.device}" /btrfs-tmp
# If the moribund subvolume exists, send it do 'death row' (old-roots), # Wait until the root device is available
# where live for about three days before its eventual deletion. # If you're altering a different device, specify its device unit explicitly.
if [[ -e "/btrfs-tmp/${cfg.subvolume}" ]]; then # see: systemd-escape(1)
mkdir -p /btrfs-tmp/old-roots requires = ["initrd-root-device.target"];
timestamp=$(date --date="@$(stat -c %Y "/btrfs-tmp/${cfg.subvolume}")" "+%Y-%m-%-d_%H:%M:%S") after = [
mv "/btrfs-tmp/${cfg.subvolume}" "/btrfs-tmp/old-roots/$timestamp" "initrd-root-device.target"
fi # Allow hibernation to resume before trying to alter any data
"local-fs-pre.target"
];
delete_subvolume_recursively() { script = ''
IFS=$'\n' # Mount the btrfs filesystem.
for i in $(btrfs subvolume list -o "$1" | cut -f 9- -d ' '); do mkdir -p /btrfs-tmp
delete_subvolume_recursively "/btrfs-tmp/$i" mount -t btrfs "${cfg.device}" /btrfs-tmp
# If the moribund subvolume exists, send it do 'death row' (old-roots),
# where live for about three days before its eventual deletion.
if [[ -e "/btrfs-tmp/${cfg.subvolume}" ]]; then
mkdir -p /btrfs-tmp/old-roots
timestamp=$(date --date="@$(stat -c %Y "/btrfs-tmp/${cfg.subvolume}")" "+%Y-%m-%-d_%H:%M:%S")
mv "/btrfs-tmp/${cfg.subvolume}" "/btrfs-tmp/old-roots/$timestamp"
fi
delete_subvolume_recursively() {
IFS=$'\n'
for i in $(btrfs subvolume list -o "$1" | cut -f 9- -d ' '); do
delete_subvolume_recursively "/btrfs-tmp/$i"
done
btrfs subvolume delete "$1"
}
# Delete previous roots older than three days.
# TODO: I would prefer archiving the last N previous roots, rather than
# time.
for i in $(find /btrfs-tmp/old-roots/ -maxdepth 1 -mtime +3); do
delete_subvolume_recursively "$i"
done done
btrfs subvolume delete "$1"
}
# Delete previous roots older than three days. btrfs subvolume create "/btrfs-tmp/${cfg.subvolume}"
# TODO: I would prefer archiving the last N previous roots, rather than umount /btrfs-tmp
# time. '';
for i in $(find /btrfs-tmp/old-roots/ -maxdepth 1 -mtime +3); do };
delete_subvolume_recursively "$i" # NOTE: path = [...]; doesnt work for initrd, use full paths in
done # your script or extraBin
extraBin = {
btrfs subvolume create "/btrfs-tmp/${cfg.subvolume}" "mkdir" = "${pkgs.coreutils}/bin/mkdir";
umount /btrfs-tmp "date" = "${pkgs.coreutils}/bin/date";
''; "stat" = "${pkgs.coreutils}/bin/stat";
"mv" = "${pkgs.coreutils}/bin/mv";
"find" = "${pkgs.findutils}/bin/find";
"btrfs" = "${pkgs.btrfs-progs}/bin/btrfs";
};
}; };
}; };
} }