This commit is contained in:
andromeda
2026-04-16 16:52:00 +02:00
parent a6ad2a25be
commit 055657e082
9 changed files with 160 additions and 41 deletions

145
flake.lock generated
View File

@@ -23,6 +23,28 @@
"type": "github" "type": "github"
} }
}, },
"anki-cli": {
"inputs": {
"fenix": "fenix",
"naersk": "naersk",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1776249700,
"narHash": "sha256-7jqMOITAOGkFumw4iYys8fjGX8d2eGSZZRSufgqvfhQ=",
"ref": "refs/heads/master",
"rev": "4770f441d139ca4d08dd07f1791774273c2c7533",
"revCount": 9,
"type": "git",
"url": "https://git.mtgmonkey.net/Andromeda/anki-cli.git"
},
"original": {
"type": "git",
"url": "https://git.mtgmonkey.net/Andromeda/anki-cli.git"
}
},
"base16": { "base16": {
"inputs": { "inputs": {
"fromYaml": "fromYaml" "fromYaml": "fromYaml"
@@ -129,6 +151,51 @@
"type": "github" "type": "github"
} }
}, },
"fenix": {
"inputs": {
"nixpkgs": [
"anki-cli",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src"
},
"locked": {
"lastModified": 1776153734,
"narHash": "sha256-QvkVX4Go+BnNgQQLc5Ma3WNBZOG5Jpdqsy8Ri0/CbSQ=",
"owner": "nix-community",
"repo": "fenix",
"rev": "a8b0e62fb39299fbeb1aa365f4b57e2c258a178e",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"fenix_2": {
"inputs": {
"nixpkgs": [
"anki-cli",
"naersk",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src_2"
},
"locked": {
"lastModified": 1752475459,
"narHash": "sha256-z6QEu4ZFuHiqdOPbYss4/Q8B0BFhacR8ts6jO/F/aOU=",
"owner": "nix-community",
"repo": "fenix",
"rev": "bf0d6f70f4c9a9cf8845f992105652173f4b617f",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"firefox-gnome-theme": { "firefox-gnome-theme": {
"flake": false, "flake": false,
"locked": { "locked": {
@@ -419,6 +486,28 @@
"type": "github" "type": "github"
} }
}, },
"naersk": {
"inputs": {
"fenix": "fenix_2",
"nixpkgs": [
"anki-cli",
"nixpkgs"
]
},
"locked": {
"lastModified": 1776193198,
"narHash": "sha256-U4w4GpgYt72z8pBKMDaqzlnPJRxI9pn+8tr7SOAxocE=",
"owner": "nix-community",
"repo": "naersk",
"rev": "e4e2ee6c9af67ecd4abb102fc32b9e49c70d92ff",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "naersk",
"type": "github"
}
},
"ndg": { "ndg": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@@ -512,26 +601,6 @@
"type": "github" "type": "github"
} }
}, },
"noshell": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1717396029,
"narHash": "sha256-NPIhvnTYkJZqTY+aabbZ6CAaMAgG6IISvh7GZo1MTfQ=",
"owner": "viperML",
"repo": "noshell",
"rev": "4d194d838a50ea106cd0e47c024e47afc154ab42",
"type": "github"
},
"original": {
"owner": "viperML",
"repo": "noshell",
"type": "github"
}
},
"nur": { "nur": {
"inputs": { "inputs": {
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
@@ -626,18 +695,52 @@
"root": { "root": {
"inputs": { "inputs": {
"agenix": "agenix", "agenix": "agenix",
"anki-cli": "anki-cli",
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"impermanence": "impermanence", "impermanence": "impermanence",
"nix-zulip": "nix-zulip", "nix-zulip": "nix-zulip",
"nixos-mailserver": "nixos-mailserver", "nixos-mailserver": "nixos-mailserver",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"noshell": "noshell",
"nur": "nur", "nur": "nur",
"nvf": "nvf", "nvf": "nvf",
"phoenix": "phoenix", "phoenix": "phoenix",
"stylix": "stylix" "stylix": "stylix"
} }
}, },
"rust-analyzer-src": {
"flake": false,
"locked": {
"lastModified": 1776115521,
"narHash": "sha256-N/R1//Xd8vr84LtyTy8CVz7V2n9NJXXlJEODSunLE9c=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "5205b52ea60dd49c7e33dd2ad1a3e7ef55bb30ec",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"rust-analyzer-src_2": {
"flake": false,
"locked": {
"lastModified": 1752428706,
"narHash": "sha256-EJcdxw3aXfP8Ex1Nm3s0awyH9egQvB2Gu+QEnJn2Sfg=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "591e3b7624be97e4443ea7b5542c191311aa141d",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"stylix": { "stylix": {
"inputs": { "inputs": {
"base16": "base16", "base16": "base16",

View File

@@ -4,6 +4,10 @@
url = "github:ryantm/agenix"; url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
anki-cli = {
url = "git+https://git.mtgmonkey.net/Andromeda/anki-cli.git";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = { home-manager = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@@ -18,10 +22,6 @@
url = "git+https://git.afnix.fr/nix-zulip/nix-zulip"; url = "git+https://git.afnix.fr/nix-zulip/nix-zulip";
flake = false; flake = false;
}; };
noshell = {
url = "github:viperML/noshell";
inputs.nixpkgs.follows = "nixpkgs";
};
nur = { nur = {
url = "github:nix-community/NUR"; url = "github:nix-community/NUR";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@@ -41,12 +41,12 @@
}; };
outputs = { outputs = {
agenix, agenix,
anki-cli,
home-manager, home-manager,
impermanence, impermanence,
nixos-mailserver, nixos-mailserver,
nixpkgs, nixpkgs,
nix-zulip, nix-zulip,
noshell,
nur, nur,
nvf, nvf,
phoenix, phoenix,
@@ -68,7 +68,6 @@
agenix.nixosModules.default agenix.nixosModules.default
impermanence.nixosModules.impermanence impermanence.nixosModules.impermanence
nixos-mailserver.nixosModule nixos-mailserver.nixosModule
noshell.nixosModules.default
nix-zulip'.nixosModules.zulip nix-zulip'.nixosModules.zulip
phoenix.nixosModules.default phoenix.nixosModules.default
({pkgs, ...}: { ({pkgs, ...}: {
@@ -76,6 +75,9 @@
agenix.overlays.default agenix.overlays.default
nur.overlays.default nur.overlays.default
nix-zulip'.overlays.default nix-zulip'.overlays.default
(self: super: {
anki-cli = anki-cli.packages.${machine.system}.default;
})
]; ];
}) })
] ]

View File

@@ -35,6 +35,13 @@
# substitutors # substitutors
./substitutors.nix ./substitutors.nix
{
services.guix = {
enable = true;
stateDir = "/gnu/var";
};
}
]; ];
}; };
"109-199-104-83" = { "109-199-104-83" = {

View File

@@ -10,8 +10,8 @@
]; ];
# allows users to customize shell in `$XDG_CONFIG_HOME/shell` rather than # allows users to customize shell in `$XDG_CONFIG_HOME/shell` rather than
# needing /etc/shells. Useful for home-manager. Falls back. # needing /etc/shells. Useful for home-manager.
programs.noshell.enable = true; # programs.noshell.enable = true;
# cleans /tmp to maintain a tidy system # cleans /tmp to maintain a tidy system
boot.tmp.cleanOnBoot = true; boot.tmp.cleanOnBoot = true;

View File

@@ -7,6 +7,7 @@
"/var/log" "/var/log"
"/var/lib/nixos" "/var/lib/nixos"
"/var/lib/systemd/coredump" "/var/lib/systemd/coredump"
"/gnu"
]; ];
files = [ files = [
"/etc/machine-id" "/etc/machine-id"

View File

@@ -7,7 +7,7 @@
services.blueman.enable = true; services.blueman.enable = true;
# locale # locale
i18n.defaultLocale = "de_DE.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
time.timeZone = "Europe/Berlin"; time.timeZone = "Europe/Berlin";
# networking # networking

View File

@@ -37,10 +37,6 @@
forceSSL = true; forceSSL = true;
enableACME = true; enableACME = true;
}; };
"matrix.${config.networking.domain}" = {
forceSSL = true;
enableACME = true;
};
"${config.networking.domain}" = { "${config.networking.domain}" = {
forceSSL = true; forceSSL = true;
enableACME = true; enableACME = true;

View File

@@ -13,8 +13,9 @@
description = "andromeda"; description = "andromeda";
hashedPasswordFile = builtins.toString config.age.secrets.andromeda-pw.path; hashedPasswordFile = builtins.toString config.age.secrets.andromeda-pw.path;
extraGroups = [ extraGroups = [
"networkmanager" "networkmanager" # network configuration
"wheel" "wheel" # serial
"dialout" # access to serial ports
]; ];
}; };
}; };
@@ -41,7 +42,6 @@
]; ];
files = [ files = [
".bash_history" ".bash_history"
".brush_history"
]; ];
}; };
} }

View File

@@ -18,7 +18,6 @@
}; };
in { in {
imports = [./stylix.nix]; imports = [./stylix.nix];
xdg.configFile."shell".source = lib.getExe pkgs.brush;
xdg.configFile."sway/config".source = lib.mkForce sway_config; xdg.configFile."sway/config".source = lib.mkForce sway_config;
wayland.windowManager.sway.enable = true; wayland.windowManager.sway.enable = true;
home = { home = {
@@ -31,24 +30,30 @@ in {
pkgs.agenix pkgs.agenix
pkgs.alacritty pkgs.alacritty
pkgs.anki pkgs.anki
pkgs.anki-cli
pkgs.brightnessctl pkgs.brightnessctl
pkgs.brush
pkgs.dust pkgs.dust
pkgs.fluffychat pkgs.fluffychat
pkgs.fzf pkgs.fzf
pkgs.gdb
pkgs.geeqie pkgs.geeqie
pkgs.glow pkgs.glow
pkgs.grim pkgs.grim
pkgs.hexdump
pkgs.http-server
pkgs.jmtpfs pkgs.jmtpfs
pkgs.mindustry-wayland pkgs.mindustry-wayland
pkgs.nasm
pkgs.nix-output-monitor pkgs.nix-output-monitor
pkgs.npins pkgs.npins
pkgs.ranger pkgs.ranger
pkgs.rip2 pkgs.rip2
pkgs.ripgrep pkgs.ripgrep
pkgs.slurp pkgs.slurp
pkgs.tokei
pkgs.tree pkgs.tree
pkgs.zoxide pkgs.wget
pkgs.xxd
]; ];
file.${background-path}.source = config.stylix.image; file.${background-path}.source = config.stylix.image;
}; };
@@ -56,6 +61,7 @@ in {
alacritty.enable = true; alacritty.enable = true;
bash = { bash = {
enable = true; enable = true;
enableCompletion = false;
shellAliases = { shellAliases = {
neofetch = "fastfetch"; neofetch = "fastfetch";
ls = lib.mkForce "lsd"; ls = lib.mkForce "lsd";
@@ -67,7 +73,6 @@ in {
}; };
bashrcExtra = '' bashrcExtra = ''
PS1="\u@\h:\w$" PS1="\u@\h:\w$"
eval "$(zoxide init bash)"
''; '';
}; };
btop = { btop = {
@@ -138,6 +143,7 @@ in {
nvf = { nvf = {
enable = true; enable = true;
settings.vim = { settings.vim = {
startPlugins = [pkgs.vimPlugins.parinfer-rust];
autocomplete.nvim-cmp.enable = false; autocomplete.nvim-cmp.enable = false;
formatter.conform-nvim = { formatter.conform-nvim = {
enable = true; enable = true;
@@ -227,6 +233,10 @@ in {
}; };
}; };
ssh.enable = true; ssh.enable = true;
zoxide = {
enable = true;
enableBashIntegration = true;
};
}; };
services.gpg-agent = { services.gpg-agent = {
enable = true; enable = true;