36 lines
1.1 KiB
Nix
36 lines
1.1 KiB
Nix
{ ... }:
|
|
{
|
|
flake.modules.nixos.standard-boot =
|
|
{ config, pkgs, ... }:
|
|
{
|
|
boot = {
|
|
loader = {
|
|
efi.canTouchEfiVariables = true;
|
|
systemd-boot = {
|
|
enable = true;
|
|
consoleMode = "auto";
|
|
configurationLimit = 5;
|
|
extraInstallCommands = ''
|
|
ENTRIES="${config.boot.loader.efi.efiSysMountPoint}/loader/entries"
|
|
PROFILES="/nix/var/nix/profiles"
|
|
|
|
for file in "$ENTRIES"/nixos-generation-*.conf; do
|
|
generation=$(${pkgs.coreutils}/bin/basename "$file" | ${pkgs.gnugrep}/bin/grep -o -E '[0-9]+')
|
|
timestamp=$(${pkgs.coreutils}/bin/stat -c %y "$PROFILES/system-$generation-link" 2>/dev/null | ${pkgs.coreutils}/bin/cut -d. -f1)
|
|
|
|
if [ -z "$timestamp" ]; then
|
|
timestamp="Unknown Date"
|
|
fi
|
|
|
|
${pkgs.gnused}/bin/sed -i "s/^version .*/version Generation $generation - $timestamp/" "$file"
|
|
done
|
|
'';
|
|
};
|
|
};
|
|
|
|
tmp.cleanOnBoot = true;
|
|
kernelPackages = pkgs.linuxPackages_latest;
|
|
};
|
|
};
|
|
}
|