mirror of
https://github.com/Moe1369/nixos-config.git
synced 2024-10-18 14:14:07 +02:00
Compare commits
2 Commits
5117de6577
...
ca95451f26
Author | SHA1 | Date | |
---|---|---|---|
ca95451f26 | |||
34bb96f9db |
@ -10,6 +10,6 @@ Mirrored on [gitea.chrayed.de](https://gitea.chrayed.de/moe1369/nixos-config)
|
||||
- [X] Bash/ZSH Settings
|
||||
- [ ] ssh key deployment with [agenix](https://github.com/ryantm/agenix)
|
||||
- [ ] alternative way to declare .nix files instead of dumping them into configuration.nix
|
||||
- [x] Multi Host functionality for homelab - preferably [conditional implementation](https://nixos.wiki/wiki/Extend_NixOS#Conditional_Implementation)
|
||||
- [x] Multi Host functionality for homelab
|
||||
- [ ] OCI container for common services
|
||||
- [ ] Fix Home-Manager issues with immutable .config files during rebuild
|
||||
- [ ] Fix Home-Manager issues with immutable .config files during rebuild -> files kglobalshortcutsrc and kwinrc can't be overwritten because of plasma-manager
|
||||
|
62
flake.nix
62
flake.nix
@ -76,24 +76,72 @@
|
||||
in
|
||||
{
|
||||
nixosConfigurations = {
|
||||
# Workstation config
|
||||
workstation =
|
||||
let
|
||||
user = "mo";
|
||||
hostName = "workstation";
|
||||
in
|
||||
lib.nixosSystem {
|
||||
specialArgs = {inherit user; inherit hostName;};
|
||||
system = system;
|
||||
# Device specific NixOS Modules
|
||||
specialArgs = {inherit user; inherit hostName; inherit system;};
|
||||
modules = externalSystemModules ++ baseSystemModules ++ desktopSystemModules ++ displaySystemModules ++ gamingSystemModules ++ [
|
||||
./hosts/${hostName}
|
||||
./modules/system/jovian-${hostName}
|
||||
{
|
||||
# Device specific Home Manager Modules
|
||||
home-manager.users.${user}.imports = baseUserModules ++ desktopUserModules ++ [
|
||||
home-manager.users.${user}.imports = baseUserModules ++ desktopUserModules ++ gamingUserModules ++ [
|
||||
];
|
||||
home-manager.extraSpecialArgs = { inherit user; inherit hostName;};
|
||||
home-manager.sharedModules = externalUserModules;
|
||||
}
|
||||
];
|
||||
};
|
||||
konsole =
|
||||
let
|
||||
user = "deck";
|
||||
hostName = "konsole";
|
||||
in
|
||||
lib.nixosSystem {
|
||||
specialArgs = {inherit user; inherit hostName; inherit system;};
|
||||
modules = externalSystemModules ++ baseSystemModules ++ desktopSystemModules ++ gamingSystemModules ++ [
|
||||
./hosts/${hostName}
|
||||
./modules/system/jovian-${hostName}
|
||||
{
|
||||
home-manager.users.${user}.imports = baseUserModules ++ desktopUserModules ++ gamingUserModules ++ [
|
||||
];
|
||||
home-manager.extraSpecialArgs = { inherit user; inherit hostName;};
|
||||
home-manager.sharedModules = externalUserModules;
|
||||
}
|
||||
];
|
||||
};
|
||||
steamdeck =
|
||||
let
|
||||
user = "deck";
|
||||
hostName = "steamdeck";
|
||||
in
|
||||
lib.nixosSystem {
|
||||
specialArgs = {inherit user; inherit hostName; inherit system;};
|
||||
modules = externalSystemModules ++ baseSystemModules ++ desktopSystemModules ++ gamingSystemModules ++ [
|
||||
./hosts/${hostName}
|
||||
./modules/system/jovian-${hostName}
|
||||
{
|
||||
home-manager.users.${user}.imports = baseUserModules ++ desktopUserModules ++ gamingUserModules ++ [
|
||||
];
|
||||
home-manager.extraSpecialArgs = { inherit user; inherit hostName;};
|
||||
home-manager.sharedModules = externalUserModules;
|
||||
}
|
||||
];
|
||||
};
|
||||
server =
|
||||
let
|
||||
user = "administrator";
|
||||
hostName = "server";
|
||||
in
|
||||
lib.nixosSystem {
|
||||
specialArgs = {inherit user; inherit hostName; inherit system;};
|
||||
modules = externalSystemModules ++ baseSystemModules ++ serverSystemModules ++ [
|
||||
./hosts/${hostName}
|
||||
{
|
||||
home-manager.users.${user}.imports = baseUserModules ++ serverUserModules ++ [
|
||||
];
|
||||
# Issue with Plasma Manager, has to be imported in a special way
|
||||
home-manager.extraSpecialArgs = { inherit user; inherit hostName;};
|
||||
home-manager.sharedModules = externalUserModules;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user