mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 17:17:22 +01:00
This commit is contained in:
parent
d0f432b717
commit
355cf03bd1
49 changed files with 3232 additions and 3897 deletions
|
|
@ -1,13 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.amdcpu = lib.mkEnableOption "is this a host with amd cpu";
|
||||
config = lib.mkIf config.swarselprofiles.amdcpu {
|
||||
swarselmodules = {
|
||||
optional = {
|
||||
amdcpu = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.amdgpu = lib.mkEnableOption "is this a host with amd gpu";
|
||||
config = lib.mkIf config.swarselprofiles.amdgpu {
|
||||
swarselmodules = {
|
||||
optional = {
|
||||
amdgpu = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.btrfs = lib.mkEnableOption "is this a host using btrfs";
|
||||
config = lib.mkIf config.swarselprofiles.btrfs {
|
||||
swarselmodules = {
|
||||
optional = {
|
||||
btrfs = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -3,46 +3,46 @@
|
|||
options.swarselprofiles.chaostheatre = lib.mkEnableOption "is this a chaostheatre host";
|
||||
config = lib.mkIf config.swarselprofiles.chaostheatre {
|
||||
swarselmodules = {
|
||||
packages = lib.mkDefault true;
|
||||
general = lib.mkDefault true;
|
||||
home-manager = lib.mkDefault true;
|
||||
xserver = lib.mkDefault true;
|
||||
users = lib.mkDefault true;
|
||||
sops = lib.mkDefault true;
|
||||
env = lib.mkDefault true;
|
||||
security = lib.mkDefault true;
|
||||
systemdTimeout = lib.mkDefault true;
|
||||
hardware = lib.mkDefault true;
|
||||
pulseaudio = lib.mkDefault true;
|
||||
pipewire = lib.mkDefault true;
|
||||
network = lib.mkDefault true;
|
||||
time = lib.mkDefault true;
|
||||
stylix = lib.mkDefault true;
|
||||
programs = lib.mkDefault true;
|
||||
zsh = lib.mkDefault true;
|
||||
syncthing = lib.mkDefault true;
|
||||
blueman = lib.mkDefault true;
|
||||
networkDevices = lib.mkDefault true;
|
||||
gvfs = lib.mkDefault true;
|
||||
interceptionTools = lib.mkDefault true;
|
||||
swayosd = lib.mkDefault true;
|
||||
ppd = lib.mkDefault true;
|
||||
yubikey = lib.mkDefault false;
|
||||
ledger = lib.mkDefault true;
|
||||
keyboards = lib.mkDefault true;
|
||||
login = lib.mkDefault true;
|
||||
nix-ld = lib.mkDefault true;
|
||||
impermanence = lib.mkDefault true;
|
||||
nvd = lib.mkDefault true;
|
||||
gnome-keyring = lib.mkDefault true;
|
||||
sway = lib.mkDefault true;
|
||||
xdg-portal = lib.mkDefault true;
|
||||
distrobox = lib.mkDefault true;
|
||||
appimage = lib.mkDefault true;
|
||||
lid = lib.mkDefault true;
|
||||
lowBattery = lib.mkDefault true;
|
||||
lanzaboote = lib.mkDefault true;
|
||||
autologin = lib.mkDefault true;
|
||||
packages = lib.mkForce true;
|
||||
general = lib.mkForce true;
|
||||
home-manager = lib.mkForce true;
|
||||
xserver = lib.mkForce true;
|
||||
users = lib.mkForce true;
|
||||
sops = lib.mkForce true;
|
||||
env = lib.mkForce true;
|
||||
security = lib.mkForce true;
|
||||
systemdTimeout = lib.mkForce true;
|
||||
hardware = lib.mkForce true;
|
||||
pulseaudio = lib.mkForce true;
|
||||
pipewire = lib.mkForce true;
|
||||
network = lib.mkForce true;
|
||||
time = lib.mkForce true;
|
||||
stylix = lib.mkForce true;
|
||||
programs = lib.mkForce true;
|
||||
zsh = lib.mkForce true;
|
||||
syncthing = lib.mkForce true;
|
||||
blueman = lib.mkForce true;
|
||||
networkDevices = lib.mkForce true;
|
||||
gvfs = lib.mkForce true;
|
||||
interceptionTools = lib.mkForce true;
|
||||
swayosd = lib.mkForce true;
|
||||
ppd = lib.mkForce true;
|
||||
yubikey = lib.mkForce false;
|
||||
ledger = lib.mkForce true;
|
||||
keyboards = lib.mkForce true;
|
||||
login = lib.mkForce true;
|
||||
nix-ld = lib.mkForce true;
|
||||
impermanence = lib.mkForce true;
|
||||
nvd = lib.mkForce true;
|
||||
gnome-keyring = lib.mkForce true;
|
||||
sway = lib.mkForce true;
|
||||
xdg-portal = lib.mkForce true;
|
||||
distrobox = lib.mkForce true;
|
||||
appimage = lib.mkForce true;
|
||||
lid = lib.mkForce true;
|
||||
lowBattery = lib.mkForce true;
|
||||
lanzaboote = lib.mkForce true;
|
||||
autologin = lib.mkForce true;
|
||||
};
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.hibernation = lib.mkEnableOption "is this a host using hibernation";
|
||||
config = lib.mkIf config.swarselprofiles.hibernation {
|
||||
swarselmodules = {
|
||||
optional = {
|
||||
hibernation = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.server.local = lib.mkEnableOption "is this a local server";
|
||||
config = lib.mkIf config.swarselprofiles.server.local {
|
||||
options.swarselprofiles.server = lib.mkEnableOption "is this a server";
|
||||
config = lib.mkIf config.swarselprofiles.server {
|
||||
swarselmodules = {
|
||||
general = lib.mkDefault true;
|
||||
pii = lib.mkDefault true;
|
||||
|
|
@ -9,40 +9,15 @@
|
|||
xserver = lib.mkDefault true;
|
||||
time = lib.mkDefault true;
|
||||
users = lib.mkDefault true;
|
||||
impermanence = lib.mkDefault true;
|
||||
btrfs = lib.mkDefault true;
|
||||
sops = lib.mkDefault true;
|
||||
boot = lib.mkDefault true;
|
||||
server = {
|
||||
general = lib.mkDefault true;
|
||||
packages = lib.mkDefault true;
|
||||
nfs = lib.mkDefault true;
|
||||
nginx = lib.mkDefault true;
|
||||
ssh = lib.mkDefault true;
|
||||
kavita = lib.mkDefault true;
|
||||
restic = lib.mkDefault true;
|
||||
jellyfin = lib.mkDefault true;
|
||||
navidrome = lib.mkDefault true;
|
||||
spotifyd = lib.mkDefault true;
|
||||
mpd = lib.mkDefault true;
|
||||
postgresql = lib.mkDefault true;
|
||||
matrix = lib.mkDefault true;
|
||||
nextcloud = lib.mkDefault true;
|
||||
immich = lib.mkDefault true;
|
||||
paperless = lib.mkDefault true;
|
||||
transmission = lib.mkDefault true;
|
||||
syncthing = lib.mkDefault true;
|
||||
grafana = lib.mkDefault true;
|
||||
emacs = lib.mkDefault true;
|
||||
freshrss = lib.mkDefault true;
|
||||
jenkins = lib.mkDefault false;
|
||||
kanidm = lib.mkDefault true;
|
||||
firefly-iii = lib.mkDefault true;
|
||||
koillection = lib.mkDefault true;
|
||||
radicale = lib.mkDefault true;
|
||||
atuin = lib.mkDefault true;
|
||||
forgejo = lib.mkDefault true;
|
||||
ankisync = lib.mkDefault true;
|
||||
# snipeit = lib.mkDefault false;
|
||||
homebox = lib.mkDefault true;
|
||||
nginx = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
yubikey = lib.mkDefault true;
|
||||
autologin = lib.mkDefault true;
|
||||
boot = lib.mkDefault true;
|
||||
btrfs = lib.mkDefault true;
|
||||
|
||||
server = {
|
||||
ssh = lib.mkDefault true;
|
||||
|
|
|
|||
|
|
@ -1,30 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.server.moonside = lib.mkEnableOption "is this a moonside server";
|
||||
config = lib.mkIf config.swarselprofiles.server.moonside {
|
||||
swarselmodules = {
|
||||
general = lib.mkDefault true;
|
||||
pii = lib.mkDefault true;
|
||||
home-manager = lib.mkDefault true;
|
||||
xserver = lib.mkDefault true;
|
||||
time = lib.mkDefault true;
|
||||
users = lib.mkDefault true;
|
||||
impermanence = lib.mkDefault true;
|
||||
sops = lib.mkDefault true;
|
||||
boot = lib.mkDefault true;
|
||||
server = {
|
||||
general = lib.mkDefault true;
|
||||
packages = lib.mkDefault true;
|
||||
nginx = lib.mkDefault true;
|
||||
ssh = lib.mkDefault true;
|
||||
oauth2-proxy = lib.mkDefault true;
|
||||
croc = lib.mkDefault true;
|
||||
microbin = lib.mkDefault true;
|
||||
shlink = lib.mkDefault true;
|
||||
slink = lib.mkDefault true;
|
||||
syncthing = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
20
profiles/nixos/optionals/default.nix
Normal file
20
profiles/nixos/optionals/default.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.optionals = lib.mkEnableOption "is this a host with optionals";
|
||||
config = lib.mkIf config.swarselprofiles.optionals {
|
||||
swarselmodules = {
|
||||
optional = {
|
||||
gaming = lib.mkDefault true;
|
||||
virtualbox = lib.mkDefault true;
|
||||
nswitch-rcm = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
|
||||
home-manager.users."${config.swarselsystems.mainUser}" = {
|
||||
swarselprofiles = {
|
||||
optionals = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -48,16 +48,8 @@
|
|||
lanzaboote = lib.mkDefault true;
|
||||
autologin = lib.mkDefault true;
|
||||
boot = lib.mkDefault true;
|
||||
btrfs = lib.mkDefault true;
|
||||
|
||||
optional = {
|
||||
gaming = lib.mkDefault true;
|
||||
virtualbox = lib.mkDefault true;
|
||||
nswitch-rcm = lib.mkDefault true;
|
||||
};
|
||||
|
||||
server = {
|
||||
ssh = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
home-manager.users."${config.swarselsystems.mainUser}" = {
|
||||
swarselprofiles = {
|
||||
|
|
|
|||
|
|
@ -1,61 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.reduced = lib.mkEnableOption "is this a reduced personal host";
|
||||
config = lib.mkIf config.swarselprofiles.reduced {
|
||||
swarselmodules = {
|
||||
packages = lib.mkDefault true;
|
||||
pii = lib.mkDefault true;
|
||||
general = lib.mkDefault true;
|
||||
home-manager = lib.mkDefault true;
|
||||
xserver = lib.mkDefault true;
|
||||
users = lib.mkDefault true;
|
||||
env = lib.mkDefault true;
|
||||
security = lib.mkDefault true;
|
||||
systemdTimeout = lib.mkDefault true;
|
||||
hardware = lib.mkDefault true;
|
||||
pulseaudio = lib.mkDefault true;
|
||||
pipewire = lib.mkDefault true;
|
||||
network = lib.mkDefault true;
|
||||
time = lib.mkDefault true;
|
||||
sops = lib.mkDefault true;
|
||||
stylix = lib.mkDefault true;
|
||||
programs = lib.mkDefault true;
|
||||
zsh = lib.mkDefault true;
|
||||
syncthing = lib.mkDefault true;
|
||||
blueman = lib.mkDefault true;
|
||||
networkDevices = lib.mkDefault true;
|
||||
gvfs = lib.mkDefault true;
|
||||
interceptionTools = lib.mkDefault true;
|
||||
swayosd = lib.mkDefault true;
|
||||
ppd = lib.mkDefault true;
|
||||
yubikey = lib.mkDefault true;
|
||||
ledger = lib.mkDefault true;
|
||||
keyboards = lib.mkDefault true;
|
||||
login = lib.mkDefault true;
|
||||
nix-ld = lib.mkDefault true;
|
||||
impermanence = lib.mkDefault true;
|
||||
nvd = lib.mkDefault true;
|
||||
gnome-keyring = lib.mkDefault true;
|
||||
sway = lib.mkDefault true;
|
||||
xdg-portal = lib.mkDefault true;
|
||||
distrobox = lib.mkDefault true;
|
||||
appimage = lib.mkDefault true;
|
||||
lid = lib.mkDefault true;
|
||||
lowBattery = lib.mkDefault true;
|
||||
lanzaboote = lib.mkDefault true;
|
||||
autologin = lib.mkDefault true;
|
||||
boot = lib.mkDefault true;
|
||||
|
||||
server = {
|
||||
ssh = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
home-manager.users."${config.swarselsystems.mainUser}" = {
|
||||
swarselprofiles = {
|
||||
personal = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.server.syncserver = lib.mkEnableOption "is this a oci syncserver server";
|
||||
config = lib.mkIf config.swarselprofiles.server.syncserver {
|
||||
swarselmodules = {
|
||||
general = lib.mkDefault true;
|
||||
nix-ld = lib.mkDefault true;
|
||||
pii = lib.mkDefault true;
|
||||
home-manager = lib.mkDefault true;
|
||||
xserver = lib.mkDefault true;
|
||||
time = lib.mkDefault true;
|
||||
users = lib.mkDefault true;
|
||||
sops = lib.mkDefault true;
|
||||
boot = lib.mkDefault true;
|
||||
server = {
|
||||
general = lib.mkDefault true;
|
||||
packages = lib.mkDefault true;
|
||||
nginx = lib.mkDefault true;
|
||||
ssh = lib.mkDefault true;
|
||||
forgejo = lib.mkDefault false;
|
||||
ankisync = lib.mkDefault false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
{ lib, config, ... }:
|
||||
{
|
||||
options.swarselprofiles.toto = lib.mkEnableOption "is this a toto (setup) host";
|
||||
config = lib.mkIf config.swarselprofiles.toto {
|
||||
swarselmodules = {
|
||||
general = lib.mkDefault true;
|
||||
packages = lib.mkDefault true;
|
||||
home-manager = lib.mkDefault true;
|
||||
xserver = lib.mkDefault true;
|
||||
users = lib.mkDefault true;
|
||||
sops = lib.mkDefault true;
|
||||
impermanence = lib.mkDefault true;
|
||||
lanzaboote = lib.mkDefault true;
|
||||
autologin = lib.mkDefault true;
|
||||
pii = lib.mkDefault true;
|
||||
server = {
|
||||
ssh = lib.mkDefault true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue