2025-12-01 13:23:24 +07:00
|
|
|
/*---------------------------------------------------
|
|
|
|
|
|
|
|
|
|
▗▖ ▗▖▗▄▄▄▖▗▄▄▖ ▗▄▖ ▗▖ ▗▖▗▄▄▄▖▗▄▄▖ ▗▄▖
|
|
|
|
|
▐▌▗▞▘ █ ▐▌ ▐▌▐▌ ▐▌ x ▐▌▗▞▘ █ ▐▌ ▐▌▐▌ ▐▌
|
|
|
|
|
▐▛▚▖ █ ▐▛▀▚▖▐▛▀▜▌ x ▐▛▚▖ █ ▐▛▀▚▖▐▛▀▜▌
|
|
|
|
|
▐▌ ▐▌▗▄█▄▖▐▌ ▐▌▐▌ ▐▌ ▐▌ ▐▌▗▄█▄▖▐▌ ▐▌▐▌ ▐▌
|
|
|
|
|
|
|
|
|
|
Nixos daily PC, I want it to < Just Works™ >
|
|
|
|
|
|
|
|
|
|
---------------------------------------------------*/
|
|
|
|
|
{ inputs, den, ... }:
|
|
|
|
|
|
|
|
|
|
let
|
|
|
|
|
hostname = "kirakira";
|
|
|
|
|
username = "kirbara";
|
|
|
|
|
platform = "nixos";
|
|
|
|
|
architecture = "x86_64-linux";
|
|
|
|
|
autologin = true;
|
|
|
|
|
session = "xfce-wayland";
|
|
|
|
|
# ----
|
|
|
|
|
in
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
den.homes.${architecture}.${username} = { };
|
|
|
|
|
den.hosts.${architecture} = {
|
|
|
|
|
${hostname} = {
|
|
|
|
|
class = platform;
|
|
|
|
|
users.${username} = { };
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
den.aspects = {
|
|
|
|
|
${hostname} = {
|
|
|
|
|
${platform} = {
|
|
|
|
|
networking.hostName = hostname;
|
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
|
nixpkgs.overlays = [ inputs.self.overlays.default ];
|
|
|
|
|
imports = with den.aspects; [
|
|
|
|
|
# -------------------------------------------------
|
|
|
|
|
base.nixos
|
|
|
|
|
desktop.nixos
|
|
|
|
|
font.nixos
|
|
|
|
|
software-tty.nixos
|
|
|
|
|
antimicrox.nixos
|
|
|
|
|
gaming.nixos
|
|
|
|
|
tool-gui.nixos
|
|
|
|
|
# -----
|
|
|
|
|
desktop-session-modular.nixos
|
|
|
|
|
desktop-session-enlightenment.nixos
|
|
|
|
|
# -----
|
|
|
|
|
deploy-rs.nixos
|
|
|
|
|
home-manager-standalone.nixos
|
|
|
|
|
# -----
|
|
|
|
|
audio.nixos
|
|
|
|
|
bluetooth.nixos
|
|
|
|
|
cachy-kernel.nixos
|
|
|
|
|
netbird.nixos
|
|
|
|
|
fhs-compatible.nixos
|
|
|
|
|
open-tablet.nixos
|
|
|
|
|
# -----
|
|
|
|
|
ssh-desktop.nixos
|
|
|
|
|
sops.nixos
|
|
|
|
|
# -----
|
|
|
|
|
ollama.nixos
|
|
|
|
|
claude-code.nixos
|
|
|
|
|
opencode.nixos
|
|
|
|
|
antigravity.nixos
|
|
|
|
|
gemini-cli.nixos
|
|
|
|
|
# -----
|
|
|
|
|
uv.nixos
|
|
|
|
|
python.nixos
|
|
|
|
|
nodejs.nixos
|
|
|
|
|
# -----
|
|
|
|
|
syncthing.nixos
|
|
|
|
|
veracrypt.nixos
|
|
|
|
|
# -----
|
|
|
|
|
libvirtd-host.nixos
|
|
|
|
|
vmware-host.nixos
|
|
|
|
|
podman.nixos
|
|
|
|
|
virtualbox-host.nixos
|
|
|
|
|
wine.nixos
|
|
|
|
|
# -----
|
|
|
|
|
nix-flatpak.nixos
|
|
|
|
|
gimp.flatpak
|
|
|
|
|
krita.flatpak
|
|
|
|
|
bottles.flatpak
|
|
|
|
|
jdownloader.flatpak
|
|
|
|
|
inkscape.flatpak
|
|
|
|
|
kdenlive.flatpak
|
|
|
|
|
] ++ [ # ---- nixos home-manager
|
|
|
|
|
inputs.home-manager.nixosModules.home-manager {
|
|
|
|
|
home-manager.extraSpecialArgs = { inherit inputs; }; # fix infinite recursion
|
|
|
|
|
home-manager.backupFileExtension = "backup"; # important
|
|
|
|
|
home-manager.users.${username} = {
|
|
|
|
|
nixpkgs.overlays = [ inputs.self.overlays.default ];
|
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
|
imports = with den.aspects; [
|
|
|
|
|
# -----
|
|
|
|
|
base.homeManager
|
|
|
|
|
desktop.homeManager
|
|
|
|
|
font.homeManager
|
|
|
|
|
software-tty.homeManager
|
|
|
|
|
antimicrox.homeManager
|
|
|
|
|
gaming.homeManager
|
|
|
|
|
tool-gui.homeManager
|
|
|
|
|
# -----
|
2025-12-01 15:22:04 +07:00
|
|
|
home-manager.homeManager
|
2025-12-01 13:23:24 +07:00
|
|
|
home-file-kirakira.homeManager
|
|
|
|
|
unison.homeManager
|
|
|
|
|
# -----
|
|
|
|
|
code-editor-gui.homeManager
|
|
|
|
|
code-editor-tty.homeManager
|
|
|
|
|
version-control.homeManager
|
|
|
|
|
# -----
|
|
|
|
|
konsole.homeManager
|
|
|
|
|
wezterm.homeManager
|
|
|
|
|
# -----
|
|
|
|
|
dolphin.homeManager
|
|
|
|
|
ark-archiver.homeManager
|
|
|
|
|
yazi.homeManager
|
|
|
|
|
# -----
|
|
|
|
|
obsidian.homeManager
|
|
|
|
|
shotcut.homeManager
|
|
|
|
|
blender-hip-latest.homeManager
|
|
|
|
|
affinity.homeManager
|
|
|
|
|
audacity.homeManager
|
|
|
|
|
obs-studio.homeManager
|
|
|
|
|
haruna.homeManager
|
|
|
|
|
# -----
|
|
|
|
|
brave.homeManager
|
|
|
|
|
librewolf.homeManager
|
|
|
|
|
# -----
|
|
|
|
|
qbittorrent.homeManager
|
|
|
|
|
protonvpn-gui.homeManager
|
|
|
|
|
protonvpn-cli.homeManager
|
|
|
|
|
];};}];
|
|
|
|
|
# ----- additional nixos config
|
|
|
|
|
services = {
|
|
|
|
|
displayManager = {
|
|
|
|
|
autoLogin.user = "${username}";
|
|
|
|
|
autoLogin.enable = autologin;
|
|
|
|
|
defaultSession = "${session}";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
}
|