chore: refactor systems
This commit is contained in:
parent
a57a6fb890
commit
5719c0d2b4
10 changed files with 46 additions and 69 deletions
|
@ -1,4 +1,6 @@
|
|||
{pkgs, ...}: {
|
||||
imports = [./common.nix];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
nil
|
||||
ffmpeg
|
||||
|
|
|
@ -4,12 +4,18 @@
|
|||
config,
|
||||
nixpkgs,
|
||||
agenix,
|
||||
home-manager,
|
||||
vscode-server,
|
||||
...
|
||||
}: let
|
||||
username = "leo";
|
||||
stateVersion = "23.11";
|
||||
in {
|
||||
imports = [
|
||||
agenix.nixosModules.default
|
||||
home-manager.nixosModules.home-manager
|
||||
vscode-server.nixosModules.default
|
||||
|
||||
(lib.mkAliasOptionModule ["hm"] ["home-manager" "users" username])
|
||||
|
||||
../programs/fish.nix
|
||||
|
|
|
@ -3,9 +3,15 @@
|
|||
pkgs,
|
||||
config,
|
||||
catppuccin,
|
||||
lanzaboote,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
catppuccin.nixosModules.catppuccin
|
||||
lanzaboote.nixosModules.lanzaboote
|
||||
|
||||
./client.nix
|
||||
|
||||
../programs/ghostty.nix
|
||||
../programs/gnome.nix
|
||||
../programs/vscode.nix
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
{config, ...}: {
|
||||
imports = [./common.nix];
|
||||
|
||||
_module.args.nixinate = {
|
||||
host = config.networking.hostName;
|
||||
sshUser = "root";
|
||||
|
|
|
@ -1,76 +1,26 @@
|
|||
{
|
||||
lib,
|
||||
self,
|
||||
inputs,
|
||||
...
|
||||
}: let
|
||||
# shamelessly borrowed from https://github.com/getchoo/flake/blob/94dc521310b34b80158d1a0ab65d4daa3a44d81e/systems/default.nix
|
||||
toSystem = builder: name: args:
|
||||
(args.builder or builder) (
|
||||
(builtins.removeAttrs args ["builder"])
|
||||
// {
|
||||
modules =
|
||||
args.modules
|
||||
++ [
|
||||
./${name}
|
||||
./${name}/hardware-configuration.nix
|
||||
toSystem = name: role:
|
||||
inputs.nixpkgs.lib.nixosSystem
|
||||
{
|
||||
modules = [
|
||||
./${name}
|
||||
./${name}/hardware-configuration.nix
|
||||
../configs/${role}.nix
|
||||
|
||||
{networking.hostName = name;}
|
||||
];
|
||||
specialArgs = inputs;
|
||||
}
|
||||
);
|
||||
{networking.hostName = name;}
|
||||
];
|
||||
|
||||
mapNixOS = lib.mapAttrs (toSystem inputs.nixpkgs.lib.nixosSystem);
|
||||
|
||||
_common = with inputs; [
|
||||
../configs/common.nix
|
||||
agenix.nixosModules.default
|
||||
home-manager.nixosModules.home-manager
|
||||
vscode-server.nixosModules.default
|
||||
];
|
||||
|
||||
client = [../configs/client.nix] ++ _common;
|
||||
|
||||
server = [../configs/server.nix] ++ _common;
|
||||
|
||||
desktop = with inputs;
|
||||
[
|
||||
../configs/desktop.nix
|
||||
catppuccin.nixosModules.catppuccin
|
||||
lanzaboote.nixosModules.lanzaboote
|
||||
]
|
||||
++ client;
|
||||
specialArgs = inputs;
|
||||
};
|
||||
in {
|
||||
flake.nixosConfigurations = mapNixOS {
|
||||
fuji = {
|
||||
system = "x86_64-linux";
|
||||
modules = desktop;
|
||||
};
|
||||
|
||||
fuji-wsl = {
|
||||
system = "x86_64-linux";
|
||||
modules =
|
||||
client
|
||||
++ (with inputs; [
|
||||
nixos-wsl.nixosModules.default
|
||||
]);
|
||||
};
|
||||
|
||||
kilimandjaro = {
|
||||
system = "x86_64-linux";
|
||||
modules = desktop;
|
||||
};
|
||||
|
||||
etna = {
|
||||
system = "x86_64-linux";
|
||||
modules =
|
||||
server
|
||||
++ (with inputs; [
|
||||
api-rs.nixosModules.default
|
||||
ukubot-rs.nixosModules.default
|
||||
self.nixosModules.reposilite
|
||||
]);
|
||||
};
|
||||
flake.nixosConfigurations = lib.mapAttrs toSystem {
|
||||
fuji = "desktop";
|
||||
fuji-wsl = "client";
|
||||
kilimandjaro = "desktop";
|
||||
etna = "server";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
_: {
|
||||
{self, ...}: {
|
||||
imports = [self.nixosModules.reposilite];
|
||||
|
||||
cfTunnels."maven.uku3lig.net" = "http://localhost:8080";
|
||||
|
||||
# see exprs/reposilite/module.nix
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{...}: {
|
||||
_: {
|
||||
cfTunnels."uku.moe" = "http://localhost:8081";
|
||||
|
||||
virtualisation.oci-containers.containers.shlink = {
|
||||
|
|
|
@ -1,8 +1,15 @@
|
|||
{
|
||||
config,
|
||||
mkSecrets,
|
||||
api-rs,
|
||||
ukubot-rs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
api-rs.nixosModules.default
|
||||
ukubot-rs.nixosModules.default
|
||||
];
|
||||
|
||||
age.secrets = mkSecrets {
|
||||
apiRsEnv = {};
|
||||
ukubotRsEnv = {};
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
nixos-wsl,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
nixos-wsl.nixosModules.default
|
||||
../../programs/rust.nix
|
||||
];
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
{
|
||||
# intentionally empty
|
||||
nixpkgs.hostPlatform = "x86_64-linux";
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue