This commit is contained in:
jopejoe1 2023-12-30 23:39:33 +01:00
parent 673524b947
commit 9ad1975f72
33 changed files with 358 additions and 471 deletions

View file

@ -1,12 +1,8 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.asf;
in
{
options.jopejoe1.asf = {
enable = lib.mkEnableOption "Enable ASF";
};
let cfg = config.jopejoe1.asf;
in {
options.jopejoe1.asf = { enable = lib.mkEnableOption "Enable ASF"; };
config = lib.mkIf cfg.enable {
services.archisteamfarm = {

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jopejoe1.audio;
in
{
let cfg = config.jopejoe1.audio;
in {
options.jopejoe1.audio = {
enable = lib.mkEnableOption "Enable Audio";
sennheiser-hd-660s = lib.mkEnableOption "Equalizer for Sennheiser HD 660S";
@ -34,7 +32,8 @@ in
nodes = [{
type = "ladspa";
name = "rnnoise";
plugin = "${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so";
plugin =
"${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so";
label = "noise_suppressor_mono";
control = {
"VAD Threshold (%)" = 50.0;

View file

@ -1,9 +1,7 @@
{ pkgs, config, lib, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.audio;
in
{
let cfg = config.jopejoe1.audio;
in {
config = lib.mkIf cfg.sennheiser-hd-660s {
services.pipewire = {
extraConfig.pipewire."20-Senheiser-HD660S" = {
@ -30,7 +28,7 @@ in
label = "bq_lowshelf";
control = {
"Freq" = 105.0;
"Q" = 0.70;
"Q" = 0.7;
"Gain" = 6.5;
};
}
@ -185,4 +183,3 @@ in
};
}

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jopejoe1.auto-update;
in
{
let cfg = config.jopejoe1.auto-update;
in {
options.jopejoe1.auto-update = {
enable = lib.mkEnableOption "Enable Auto-Updates";
};
@ -12,7 +10,15 @@ in
system.autoUpgrade = {
enable = true;
randomizedDelaySec = "30min";
flake = if config.services.archisteamfarm.enable then "$(${pkgs.coreutils}/bin/rm -rf /var/lib/update-repo && ${lib.getExe pkgs.git} clone git@codeberg.org:jopejoe1/nix-conf.git /var/lib/update-repo -q --depth=1 && ${lib.getExe pkgs.git} -C /var/lib/update-repo am /home/jopejoe1/.config/patches/0001-add-liscense.patch -q)/var/lib/update-repo" else "github:jopejoe1/nix-conf";
flake =
if config.services.archisteamfarm.enable then
"$(${pkgs.coreutils}/bin/rm -rf /var/lib/update-repo && ${
lib.getExe pkgs.git
} clone git@codeberg.org:jopejoe1/nix-conf.git /var/lib/update-repo -q --depth=1 && ${
lib.getExe pkgs.git
} -C /var/lib/update-repo am /home/jopejoe1/.config/patches/0001-add-liscense.patch -q)/var/lib/update-repo"
else
"github:jopejoe1/nix-conf";
dates = "hourly";
};
};

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.bluetooth;
in
{
let cfg = config.jopejoe1.bluetooth;
in {
options.jopejoe1.bluetooth = {
enable = lib.mkEnableOption "Enable Bluetooth";
};

View file

@ -6,6 +6,7 @@
./audio
./auto-update
./bluetooth
./events
./local
./minecraft-server
./moodle-dl
@ -16,8 +17,8 @@
./repo-sync
./steam
./users
self.inputs.home-manager.nixosModules.home-manager
self.inputs.kde2nix.nixosModules.plasma6
self.inputs.nur.nixosModules.nur
self.inputs.home-manager.nixosModules.home-manager
];
}

View file

@ -0,0 +1,55 @@
{ config, lib, ... }:
let cfg = config.events."37c3";
in {
options.events."37c3" = {
enable = lib.mkEnableOption "Enable settings for the 37c3 event";
};
config = lib.mkIf cfg.enable {
networking.networkmanager.ensureProfiles.profiles = {
"37C3" = {
connection = {
id = "37C3";
type = "wifi";
interface-name = "wlan0";
};
wifi = {
mode = "infrastructure";
ssid = "37C3";
};
wifi-security = {
auth-alg = "open";
key-mgmt = "wpa-eap";
};
"802-1x" = {
anonymous-identity = "37C3";
eap = "ttls;";
identity = "37C3";
password = "37C3";
phase2-auth = "mschapv2";
};
ipv4 = { method = "auto"; };
ipv6 = {
addr-gen-mode = "default";
method = "auto";
};
};
networking.wireless.networks."37C3".auth = ''
key_mgmt=WPA-EAP
eap=TTLS
identity="37C3"
password="37C3"
ca_cert="${
builtins.fetchurl {
url = "https://letsencrypt.org/certs/isrgrootx1.pem";
sha256 =
"sha256:1la36n2f31j9s03v847ig6ny9lr875q3g7smnq33dcsmf2i5gd92";
}
}"
altsubject_match="DNS:radius.c3noc.net"
phase2="auth=PAP"
'';
};
};
}

View file

@ -0,0 +1,5 @@
{ ... }:
{
imports = [ ./37c3 ];
}

View file

@ -1,12 +1,8 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jopejoe1.local;
in
{
options.jopejoe1.local = {
enable = lib.mkEnableOption "Enable Locals";
};
let cfg = config.jopejoe1.local;
in {
options.jopejoe1.local = { enable = lib.mkEnableOption "Enable Locals"; };
config = lib.mkIf cfg.enable {
xdg = {
@ -39,9 +35,7 @@ in
};
};
environment.variables = {
LOG_ICONS = "true";
};
environment.variables = { LOG_ICONS = "true"; };
fonts.fontDir.enable = true;
};

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.minecraft-server;
in
{
let cfg = config.jopejoe1.minecraft-server;
in {
options.jopejoe1.minecraft-server = {
enable = lib.mkEnableOption "Enable Bluetooth";
};
@ -18,7 +16,8 @@ in
difficulty = 3;
enable-rcon = true;
"rcon.password" = "test";
motd = "\\u00A7cWake up to reality! Nothing ever goes as planned in this accursed world.";
motd =
"\\u00A7cWake up to reality! Nothing ever goes as planned in this accursed world.";
spawn-protection = 0;
level-type = "minecraft:amplified";
level-name = "amplified_world";

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jopejoe1.moodle-dl;
in
{
let cfg = config.jopejoe1.moodle-dl;
in {
options.jopejoe1.moodle-dl = {
enable = lib.mkEnableOption "Enable moodle-dl";
};
@ -22,7 +20,9 @@ in
script = ''
${lib.getExe pkgs.moodle-dl} --path /var/moodle-dl
${lib.getExe pkgs.git} -C /var/moodle-dl add .
${lib.getExe pkgs.git} -C /var/moodle-dl commit -m "moodle-dl updated on `$(${pkgs.coreutils}/bin/date)`"
${
lib.getExe pkgs.git
} -C /var/moodle-dl commit -m "moodle-dl updated on `$(${pkgs.coreutils}/bin/date)`"
'';
path = [ pkgs.openssh ];
serviceConfig = {

View file

@ -1,20 +1,14 @@
{ config, lib, pkgs, self, ... }:
let
cfg = config.jopejoe1.nix;
in
{
options.jopejoe1.nix = {
enable = lib.mkEnableOption "Enable Nix";
};
let cfg = config.jopejoe1.nix;
in {
options.jopejoe1.nix = { enable = lib.mkEnableOption "Enable Nix"; };
config = lib.mkIf cfg.enable {
nix = {
settings = {
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"
];
substituters =
[ "https://cache.nixos.org" "https://nix-community.cachix.org" ];
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
@ -36,7 +30,11 @@ in
nur.flake = self.inputs.nur;
nixpkgs.flake = self.inputs.nixpkgs;
};
nixPath = [ "nixpkgs=${self.inputs.nixpkgs}" "nixos-config=/etc/nixos/configuration.nix" "/nix/var/nix/profiles/per-user/root/channels" ];
nixPath = [
"nixpkgs=${self.inputs.nixpkgs}"
"nixos-config=/etc/nixos/configuration.nix"
"/nix/var/nix/profiles/per-user/root/channels"
];
};
environment.systemPackages = with pkgs; [

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.plasma6;
in
{
let cfg = config.jopejoe1.plasma6;
in {
options.jopejoe1.plasma6 = {
enable = lib.mkEnableOption "Enable KDE Plasma 6";
};
@ -19,15 +17,13 @@ in
enable = true;
enableHidpi = true;
};
desktopManager.plasma6 = {
enable = true;
};
desktopManager.plasma6 = { enable = true; };
};
};
programs.kdeconnect = {
enable = true;
};
programs.kdeconnect = { enable = true; };
networking.networkmanager.enable = true;
};
}

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.plasma;
in
{
let cfg = config.jopejoe1.plasma;
in {
options.jopejoe1.plasma = {
enable = lib.mkEnableOption "Enable KDE Plasma";
};
@ -26,9 +24,9 @@ in
};
};
programs.kdeconnect = {
enable = true;
};
programs.kdeconnect = { enable = true; };
networking.networkmanager.enable = true;
};
}

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jopejoe1.printing;
in
{
let cfg = config.jopejoe1.printing;
in {
options.jopejoe1.printing = {
enable = lib.mkEnableOption "Enable Printing";
};

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jopejoe1.repo-sync;
in
{
let cfg = config.jopejoe1.repo-sync;
in {
options.jopejoe1.repo-sync = {
enable = lib.mkEnableOption "Enable Repo Sync";
};
@ -20,13 +18,21 @@ in
systemd.services."repo-sync" = {
script = ''
${lib.getExe pkgs.git} clone git@codeberg.org:jopejoe1/nix-conf.git /var/lib/repo-sync
${lib.getExe pkgs.git} -C /var/lib/repo-sync remote add github git@github.com:jopejoe1/nix-conf.git
${lib.getExe pkgs.git} -C /var/lib/repo-sync remote add gitlab git@gitlab.com:jopejoe1/nix-conf.git
${
lib.getExe pkgs.git
} clone git@codeberg.org:jopejoe1/nix-conf.git /var/lib/repo-sync
${
lib.getExe pkgs.git
} -C /var/lib/repo-sync remote add github git@github.com:jopejoe1/nix-conf.git
${
lib.getExe pkgs.git
} -C /var/lib/repo-sync remote add gitlab git@gitlab.com:jopejoe1/nix-conf.git
${lib.getExe pkgs.git} -C /var/lib/repo-sync pull -r github main
${lib.getExe pkgs.git} -C /var/lib/repo-sync pull -r gitlab main
${lib.getExe pkgs.nix} flake update /var/lib/repo-sync
${lib.getExe pkgs.git} -C /var/lib/repo-sync commit -m "flack.lock updated on `$(${pkgs.coreutils}/bin/date)`"
${
lib.getExe pkgs.git
} -C /var/lib/repo-sync commit -m "flack.lock updated on `$(${pkgs.coreutils}/bin/date)`"
${lib.getExe pkgs.git} -C /var/lib/repo-sync push origin
${lib.getExe pkgs.git} -C /var/lib/repo-sync push github
${lib.getExe pkgs.git} -C /var/lib/repo-sync push gitlab

View file

@ -1,12 +1,8 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.steam;
in
{
options.jopejoe1.steam = {
enable = lib.mkEnableOption "Enable Steam";
};
let cfg = config.jopejoe1.steam;
in {
options.jopejoe1.steam = { enable = lib.mkEnableOption "Enable Steam"; };
config = lib.mkIf cfg.enable {
hardware.steam-hardware.enable = true;

View file

@ -1,8 +1,5 @@
{ ... }:
{
imports = [
./root
./jopejoe1
];
imports = [ ./root ./jopejoe1 ];
}

View file

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
let
cfg = config.jopejoe1.jopejoe1;
in
{
let cfg = config.jopejoe1.jopejoe1;
in {
options.jopejoe1.jopejoe1 = {
enable = lib.mkEnableOption "Enable jopejoe1 user";
};
@ -15,15 +13,13 @@ in
initialPassword = "passwor";
extraGroups = [ "wheel" "networkmanager" "pipewire" "audio" ];
uid = 1000;
packages = with pkgs; [
libsForQt5.kate
libsForQt5.ark
texlive.combined.scheme-full
] ++ lib.optionals (config.system == "x86_64-linux") [
discord
lutris
bottles
];
packages = with pkgs;
[ libsForQt5.kate libsForQt5.ark texlive.combined.scheme-full ]
++ lib.optionals (config.system == "x86_64-linux") [
discord
lutris
bottles
];
};
};

View file

@ -20,7 +20,8 @@ in
CUDA_CACHE_PATH = "${hcfg.xdg.cacheHome}/nv";
GRADLE_USER_HOME = "${hcfg.xdg.dataHome}/gradle";
KODI_DATA = "${hcfg.xdg.dataHome}/kodi";
_JAVA_OPTIONS = "-Djava.util.prefs.userRoot=${hcfg.xdg.configHome}/java";
_JAVA_OPTIONS =
"-Djava.util.prefs.userRoot=${hcfg.xdg.configHome}/java";
WINEPREFIX = "${hcfg.xdg.dataHome}/wine";
};
@ -79,11 +80,7 @@ in
userName = "jopejoe1";
extraConfig = {
core = {
whitespace = [
"blank-at-eol"
"blank-at-eof"
"space-before-tab"
];
whitespace = [ "blank-at-eol" "blank-at-eof" "space-before-tab" ];
};
};
};
@ -332,13 +329,15 @@ in
};
"Warframe Wiki" = {
urls = [{
template = "https://warframe.fandom.com/wiki/Special:Search";
template =
"https://warframe.fandom.com/wiki/Special:Search";
params = [{
name = "query";
value = "{searchTerms}";
}];
}];
iconUpdateURL = "https://static.wikia.nocookie.net/warframe/images/e/e6/Site-logo.png";
iconUpdateURL =
"https://static.wikia.nocookie.net/warframe/images/e/e6/Site-logo.png";
updateInterval = 24 * 60 * 60 * 1000;
definedAliases = [ "@wf" ];
};
@ -363,12 +362,14 @@ in
"config.trim_on_minimize" = true;
"pdfjs.annotationEditorMode" = 0;
"pdfjs.annotationMode" = 2;
"font.name-list.emoji" = lib.strings.concatStringsSep ", " config.fonts.fontconfig.defaultFonts.emoji;
"font.name-list.emoji" = lib.strings.concatStringsSep ", "
config.fonts.fontconfig.defaultFonts.emoji;
## Arkenfox Stuff
"browser.aboutConfig.showWarning" = false;
"browser.newtabpage.activity-stream.showSponsored" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" =
false;
"extensions.getAddons.showPane" = false;
"extensions.htmlaboutaddons.recommendations.enabled" = false;
"browser.discovery.enabled" = false;

View file

@ -1,20 +1,12 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
cfg = config.jopejoe1.root;
in
{
options.jopejoe1.root = {
enable = lib.mkEnableOption "Enable root user";
};
let cfg = config.jopejoe1.root;
in {
options.jopejoe1.root = { enable = lib.mkEnableOption "Enable root user"; };
config = lib.mkIf cfg.enable {
users.users.root = {
initialPassword = "password";
};
users.users.root = { initialPassword = "password"; };
};
imports = [
./home.nix
];
imports = [ ./home.nix ];
}

View file

@ -20,7 +20,8 @@ in
CUDA_CACHE_PATH = "${hcfg.xdg.cacheHome}/nv";
GRADLE_USER_HOME = "${hcfg.xdg.dataHome}/gradle";
KODI_DATA = "${hcfg.xdg.dataHome}/kodi";
_JAVA_OPTIONS = "-Djava.util.prefs.userRoot=${hcfg.xdg.configHome}/java";
_JAVA_OPTIONS =
"-Djava.util.prefs.userRoot=${hcfg.xdg.configHome}/java";
WINEPREFIX = "${hcfg.xdg.dataHome}/wine";
};
@ -76,7 +77,8 @@ in
historyFile = "${hcfg.xdg.stateHome}/bash/history";
shellAliases = {
gc = "nix store gc";
rb = "git -C /etc/nixos pull && nix flake update /etc/nixos/ && sudo nixos-rebuild switch --impure && git -C /etc/nixos add . && git -C /etc/nixos commit -m 'Updated flake.lock' && git -C /etc/nixos push";
rb =
"git -C /etc/nixos pull && nix flake update /etc/nixos/ && sudo nixos-rebuild switch --impure && git -C /etc/nixos add . && git -C /etc/nixos commit -m 'Updated flake.lock' && git -C /etc/nixos push";
};
};
zsh.shellAliases = hcfg.programs.bash.shellAliases;