Fold more logic into the tagging system
This commit is contained in:
parent
3398c611b7
commit
7999794410
14 changed files with 60 additions and 25 deletions
|
@ -4,7 +4,7 @@
|
||||||
disk = {
|
disk = {
|
||||||
"${name}" = {
|
"${name}" = {
|
||||||
type = "disk";
|
type = "disk";
|
||||||
device = "/dev/nvme0n1";
|
device = "/dev/disk/by-id/nvme-Sabrent_SB-2130-1TB_48791579308725";
|
||||||
content = {
|
content = {
|
||||||
type = "gpt";
|
type = "gpt";
|
||||||
partitions = {
|
partitions = {
|
||||||
|
|
|
@ -3,6 +3,15 @@
|
||||||
imports = [ ./desktop ];
|
imports = [ ./desktop ];
|
||||||
|
|
||||||
config = lib.mkIf config.jovian.steam.enable {
|
config = lib.mkIf config.jovian.steam.enable {
|
||||||
|
# Kernel and hardware
|
||||||
|
boot = {
|
||||||
|
kernelPackages = lib.mkForce pkgs.linuxPackages_jovian;
|
||||||
|
supportedFilesystems.nfs = lib.mkForce false;
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.xone.enable = true;
|
||||||
|
|
||||||
|
# Steam and Jovian services
|
||||||
jovian = {
|
jovian = {
|
||||||
steam = {
|
steam = {
|
||||||
autoStart = true;
|
autoStart = true;
|
||||||
|
@ -18,18 +27,10 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Evil kernel
|
|
||||||
boot.kernelPackages = lib.mkForce pkgs.linuxPackages_jovian;
|
|
||||||
|
|
||||||
programs.steam.extest.enable = true;
|
programs.steam.extest.enable = true;
|
||||||
|
|
||||||
hardware.xone.enable = true;
|
# Networkmanager for UI compatibility
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
# Use networkmanager for ui compatibility
|
|
||||||
networking = {
|
|
||||||
networkmanager.enable = true;
|
|
||||||
wireless.enable = lib.mkForce false;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Disable conflicting services
|
# Disable conflicting services
|
||||||
services = {
|
services = {
|
||||||
|
@ -37,14 +38,6 @@
|
||||||
tlp.enable = lib.mkForce false;
|
tlp.enable = lib.mkForce false;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Disable network filesystems
|
|
||||||
fileSystems = {
|
|
||||||
"midas".enable = false;
|
|
||||||
"kitty".enable = false;
|
|
||||||
"detritus".enable = false;
|
|
||||||
"prophet".enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.persistence."/persist".directories = [
|
environment.persistence."/persist".directories = [
|
||||||
"/etc/NetworkManager/system-connections"
|
"/etc/NetworkManager/system-connections"
|
||||||
"/var/lib/decky-loader"
|
"/var/lib/decky-loader"
|
||||||
|
|
|
@ -9,5 +9,13 @@
|
||||||
libvirtd.enable = true;
|
libvirtd.enable = true;
|
||||||
vmware.host.enable = true;
|
vmware.host.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.nginx = {
|
||||||
|
enable = true;
|
||||||
|
virtualHosts."localhost" = {
|
||||||
|
default = true;
|
||||||
|
root = "/var/www/landing-page";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
6
hosts/jupiter/services/nginx/default.nix
Normal file
6
hosts/jupiter/services/nginx/default.nix
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
imports = [ ./nixfox ];
|
||||||
|
|
||||||
|
services.nginx.enable = true;
|
||||||
|
}
|
10
hosts/jupiter/services/nginx/nixfox/default.nix
Normal file
10
hosts/jupiter/services/nginx/nixfox/default.nix
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{ config, lib, ... }:
|
||||||
|
{
|
||||||
|
services.nginx = {
|
||||||
|
enable = true;
|
||||||
|
virtualHosts."localhost" = {
|
||||||
|
default = true;
|
||||||
|
root = "/var/www/landing-page";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -10,6 +10,7 @@
|
||||||
system = {
|
system = {
|
||||||
nixos.tags = [
|
nixos.tags = [
|
||||||
"pc"
|
"pc"
|
||||||
|
"chat"
|
||||||
"gaming"
|
"gaming"
|
||||||
"production"
|
"production"
|
||||||
];
|
];
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
{
|
{
|
||||||
options.home = with lib; {
|
options.home = with lib; {
|
||||||
desktop.enable = mkEnableOption "Desktop programs and services";
|
desktop.enable = mkEnableOption "Desktop programs and services";
|
||||||
|
chat.enable = mkEnableOption "Chat applications";
|
||||||
gaming.enable = mkEnableOption "Gaming apps and programs";
|
gaming.enable = mkEnableOption "Gaming apps and programs";
|
||||||
production.enable = mkEnableOption "Apps for visual productivity";
|
production.enable = mkEnableOption "Apps for visual productivity";
|
||||||
school.enable = mkEnableOption "Apps for school and college";
|
school.enable = mkEnableOption "Apps for school and college";
|
||||||
|
|
16
modules/home/programs/misc/chat/default.nix
Normal file
16
modules/home/programs/misc/chat/default.nix
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
{
|
||||||
|
home = lib.mkIf config.home.chat.enable {
|
||||||
|
packages = with pkgs; [
|
||||||
|
element-desktop
|
||||||
|
vesktop
|
||||||
|
wasistlos
|
||||||
|
];
|
||||||
|
persistence."${config.xdg.userDirs.extraConfig.XDG_PERSIST_DIR}".directories =
|
||||||
|
with lib; with config.home; with config.xdg; [
|
||||||
|
"data/${removePrefix "${homeDirectory}/" configHome}/Element"
|
||||||
|
"data/${removePrefix "${homeDirectory}/" configHome}/vesktop"
|
||||||
|
"data/${removePrefix "${homeDirectory}/" cacheHome}/wasistlos"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
|
@ -2,6 +2,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./avtools
|
./avtools
|
||||||
|
./chat
|
||||||
./gaming
|
./gaming
|
||||||
./general
|
./general
|
||||||
./headless
|
./headless
|
||||||
|
|
|
@ -4,12 +4,10 @@
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
libreoffice
|
libreoffice
|
||||||
qbittorrent
|
qbittorrent
|
||||||
vesktop
|
|
||||||
];
|
];
|
||||||
persistence."${config.xdg.userDirs.extraConfig.XDG_PERSIST_DIR}".directories =
|
persistence."${config.xdg.userDirs.extraConfig.XDG_PERSIST_DIR}".directories =
|
||||||
with lib; with config.home; with config.xdg; [
|
with lib; with config.home; with config.xdg; [
|
||||||
"data/${removePrefix "${homeDirectory}/" configHome}/qBittorrent"
|
"data/${removePrefix "${homeDirectory}/" configHome}/qBittorrent"
|
||||||
"data/${removePrefix "${homeDirectory}/" configHome}/vesktop"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
support32Bit = true;
|
support32Bit = true;
|
||||||
};
|
};
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
#jack.enable = true;
|
jack.enable = builtins.elem "production" config.system.nixos.tags;
|
||||||
wireplumber.extraConfig."wireplumber.settings"."bluetooth.autoswitch-to-headset-profile" = false;
|
wireplumber.extraConfig."wireplumber.settings"."bluetooth.autoswitch-to-headset-profile" = false;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ ... }:
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
networking.wireless = {
|
networking.wireless = {
|
||||||
enable = true;
|
enable = !config.networking.networkmanager.enable;
|
||||||
userControlled.enable = true;
|
userControlled.enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
programs.gamemode = {
|
programs.gamemode = {
|
||||||
enable = builtins.elem "pc" config.system.nixos.tags;
|
enable = builtins.elem "gaming" config.system.nixos.tags;
|
||||||
settings = {
|
settings = {
|
||||||
general.renice = 10;
|
general.renice = 10;
|
||||||
gpu = {
|
gpu = {
|
||||||
|
|
|
@ -45,6 +45,7 @@
|
||||||
imports = [ ../../../home ];
|
imports = [ ../../../home ];
|
||||||
home = {
|
home = {
|
||||||
desktop.enable = builtins.elem "pc" config.system.nixos.tags;
|
desktop.enable = builtins.elem "pc" config.system.nixos.tags;
|
||||||
|
chat.enable = builtins.elem "chat" config.system.nixos.tags;
|
||||||
gaming.enable = builtins.elem "gaming" config.system.nixos.tags;
|
gaming.enable = builtins.elem "gaming" config.system.nixos.tags;
|
||||||
production.enable = builtins.elem "production" config.system.nixos.tags;
|
production.enable = builtins.elem "production" config.system.nixos.tags;
|
||||||
school.enable = builtins.elem "school" config.system.nixos.tags;
|
school.enable = builtins.elem "school" config.system.nixos.tags;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue