95 lines
2.1 KiB
Nix
95 lines
2.1 KiB
Nix
{
|
|
inputs,
|
|
config,
|
|
...
|
|
}:
|
|
let
|
|
nixosModules = config.flake.modules.nixos;
|
|
homeModules = config.flake.modules.homeManager;
|
|
in
|
|
{
|
|
flake.modules.nixos.polaris =
|
|
{
|
|
config,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
host = {
|
|
isServer = false;
|
|
};
|
|
in
|
|
{
|
|
_module.args.host = host;
|
|
|
|
imports = [
|
|
nixosModules.desktopBase
|
|
nixosModules.steam
|
|
nixosModules.kiri
|
|
nixosModules.ergon
|
|
./_hardware.nix
|
|
]
|
|
++ (with inputs.nixos-hardware.nixosModules; [
|
|
common-pc
|
|
common-pc-ssd
|
|
common-cpu-amd
|
|
common-gpu-amd
|
|
]);
|
|
|
|
system.stateVersion = "24.05";
|
|
|
|
networking.hostName = "polaris";
|
|
|
|
home-manager.users.kiri.imports = with homeModules; [
|
|
nix
|
|
bitwarden
|
|
email
|
|
pim
|
|
mpv
|
|
niri
|
|
clipboard
|
|
localApps
|
|
qbittorrentClient
|
|
vicinae
|
|
xdg
|
|
theme
|
|
noctalia
|
|
];
|
|
|
|
home-manager.users.kiri.programs.niri.settings.outputs = {
|
|
"LG Electronics LG ULTRAGEAR 103NTYT8R290" = {
|
|
"focus-at-startup" = true;
|
|
position = {
|
|
x = 0;
|
|
y = 0;
|
|
};
|
|
};
|
|
|
|
"LG Electronics LG ULTRAGEAR 103NTJJ8R332" = {
|
|
position = {
|
|
x = 2560;
|
|
y = 0;
|
|
};
|
|
};
|
|
};
|
|
|
|
services.hardware.openrgb.enable = true;
|
|
|
|
boot.loader.systemd-boot.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
|
|
'';
|
|
};
|
|
}
|