mirror of
https://codeberg.org/jopejoe1/nix-conf.git
synced 2025-06-07 13:29:22 +02:00
run nix fmt
This commit is contained in:
parent
eab8e4b1d8
commit
d5cbe31c02
61 changed files with 1299 additions and 830 deletions
|
@ -1,8 +1,12 @@
|
|||
{ 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 = {
|
||||
|
@ -27,4 +31,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
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";
|
||||
|
@ -23,37 +30,40 @@ in {
|
|||
wireplumber.enable = true;
|
||||
|
||||
extraConfig.pipewire."30-noise-filter" = {
|
||||
"context.modules" = [{
|
||||
name = "libpipewire-module-filter-chain";
|
||||
args = {
|
||||
"node.description" = "Noise Canceling source";
|
||||
"media.name" = "Noise Canceling source";
|
||||
"filter.graph" = {
|
||||
nodes = [{
|
||||
type = "ladspa";
|
||||
name = "rnnoise";
|
||||
plugin =
|
||||
"${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so";
|
||||
label = "noise_suppressor_mono";
|
||||
control = {
|
||||
"VAD Threshold (%)" = 50.0;
|
||||
#"VAD Grace Period (ms)" = 0;
|
||||
"Retroactive VAD Grace (ms)" = 50;
|
||||
};
|
||||
}];
|
||||
"context.modules" = [
|
||||
{
|
||||
name = "libpipewire-module-filter-chain";
|
||||
args = {
|
||||
"node.description" = "Noise Canceling source";
|
||||
"media.name" = "Noise Canceling source";
|
||||
"filter.graph" = {
|
||||
nodes = [
|
||||
{
|
||||
type = "ladspa";
|
||||
name = "rnnoise";
|
||||
plugin = "${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so";
|
||||
label = "noise_suppressor_mono";
|
||||
control = {
|
||||
"VAD Threshold (%)" = 50.0;
|
||||
#"VAD Grace Period (ms)" = 0;
|
||||
"Retroactive VAD Grace (ms)" = 50;
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
"capture.props" = {
|
||||
"node.name" = "capture.rnnoise_source";
|
||||
"node.passive" = true;
|
||||
"audio.rate" = 48000;
|
||||
};
|
||||
"playback.props" = {
|
||||
"node.name" = "rnnoise_source";
|
||||
"media.class" = "Audio/Source";
|
||||
"audio.rate" = 48000;
|
||||
};
|
||||
};
|
||||
"capture.props" = {
|
||||
"node.name" = "capture.rnnoise_source";
|
||||
"node.passive" = true;
|
||||
"audio.rate" = 48000;
|
||||
};
|
||||
"playback.props" = {
|
||||
"node.name" = "rnnoise_source";
|
||||
"media.class" = "Audio/Source";
|
||||
"audio.rate" = 48000;
|
||||
};
|
||||
};
|
||||
}];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,185 +1,191 @@
|
|||
{ 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" = {
|
||||
"context.modules" = [{
|
||||
name = "libpipewire-module-filter-chain";
|
||||
args = {
|
||||
"node.description" = "Senheiser HD 660 S Equaliser";
|
||||
"media.name" = "Senheiser HD 660 S Equaliser";
|
||||
"filter.graph" = {
|
||||
nodes = [
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_1";
|
||||
label = "bq_highshelf";
|
||||
control = {
|
||||
"Freq" = 0.0;
|
||||
"Q" = 1.0;
|
||||
"Gain" = -6.4;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_2";
|
||||
label = "bq_lowshelf";
|
||||
control = {
|
||||
"Freq" = 105.0;
|
||||
"Q" = 0.7;
|
||||
"Gain" = 6.5;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_3";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 178.0;
|
||||
"Q" = 0.49;
|
||||
"Gain" = -3.2;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_4";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 1222.0;
|
||||
"Q" = 2.34;
|
||||
"Gain" = -2.3;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_5";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 5470.0;
|
||||
"Q" = 4.4;
|
||||
"Gain" = -7.3;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_6";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 7899.0;
|
||||
"Q" = 0.68;
|
||||
"Gain" = 6.5;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_7";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 784.0;
|
||||
"Q" = 3.52;
|
||||
"Gain" = -0.4;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_8";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 2250.0;
|
||||
"Q" = 3.58;
|
||||
"Gain" = 1.3;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_9";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 3380.0;
|
||||
"Q" = 2.84;
|
||||
"Gain" = -0.9;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_10";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 6701.0;
|
||||
"Q" = 6.0;
|
||||
"Gain" = 1.2;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_11";
|
||||
label = "bq_highshelf";
|
||||
control = {
|
||||
"Freq" = 10000.0;
|
||||
"Q" = 0.7;
|
||||
"Gain" = -1.1;
|
||||
};
|
||||
}
|
||||
];
|
||||
links = [
|
||||
{
|
||||
output = "eq_band_1:Out";
|
||||
input = "eq_band_2:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_2:Out";
|
||||
input = "eq_band_3:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_3:Out";
|
||||
input = "eq_band_4:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_4:Out";
|
||||
input = "eq_band_5:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_5:Out";
|
||||
input = "eq_band_6:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_6:Out";
|
||||
input = "eq_band_7:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_7:Out";
|
||||
input = "eq_band_8:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_8:Out";
|
||||
input = "eq_band_9:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_9:Out";
|
||||
input = "eq_band_10:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_10:Out";
|
||||
input = "eq_band_11:In";
|
||||
}
|
||||
"context.modules" = [
|
||||
{
|
||||
name = "libpipewire-module-filter-chain";
|
||||
args = {
|
||||
"node.description" = "Senheiser HD 660 S Equaliser";
|
||||
"media.name" = "Senheiser HD 660 S Equaliser";
|
||||
"filter.graph" = {
|
||||
nodes = [
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_1";
|
||||
label = "bq_highshelf";
|
||||
control = {
|
||||
"Freq" = 0.0;
|
||||
"Q" = 1.0;
|
||||
"Gain" = -6.4;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_2";
|
||||
label = "bq_lowshelf";
|
||||
control = {
|
||||
"Freq" = 105.0;
|
||||
"Q" = 0.7;
|
||||
"Gain" = 6.5;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_3";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 178.0;
|
||||
"Q" = 0.49;
|
||||
"Gain" = -3.2;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_4";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 1222.0;
|
||||
"Q" = 2.34;
|
||||
"Gain" = -2.3;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_5";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 5470.0;
|
||||
"Q" = 4.4;
|
||||
"Gain" = -7.3;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_6";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 7899.0;
|
||||
"Q" = 0.68;
|
||||
"Gain" = 6.5;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_7";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 784.0;
|
||||
"Q" = 3.52;
|
||||
"Gain" = -0.4;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_8";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 2250.0;
|
||||
"Q" = 3.58;
|
||||
"Gain" = 1.3;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_9";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 3380.0;
|
||||
"Q" = 2.84;
|
||||
"Gain" = -0.9;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_10";
|
||||
label = "bq_peaking";
|
||||
control = {
|
||||
"Freq" = 6701.0;
|
||||
"Q" = 6.0;
|
||||
"Gain" = 1.2;
|
||||
};
|
||||
}
|
||||
{
|
||||
type = "builtin";
|
||||
name = "eq_band_11";
|
||||
label = "bq_highshelf";
|
||||
control = {
|
||||
"Freq" = 10000.0;
|
||||
"Q" = 0.7;
|
||||
"Gain" = -1.1;
|
||||
};
|
||||
}
|
||||
];
|
||||
links = [
|
||||
{
|
||||
output = "eq_band_1:Out";
|
||||
input = "eq_band_2:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_2:Out";
|
||||
input = "eq_band_3:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_3:Out";
|
||||
input = "eq_band_4:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_4:Out";
|
||||
input = "eq_band_5:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_5:Out";
|
||||
input = "eq_band_6:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_6:Out";
|
||||
input = "eq_band_7:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_7:Out";
|
||||
input = "eq_band_8:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_8:Out";
|
||||
input = "eq_band_9:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_9:Out";
|
||||
input = "eq_band_10:In";
|
||||
}
|
||||
{
|
||||
output = "eq_band_10:Out";
|
||||
input = "eq_band_11:In";
|
||||
}
|
||||
];
|
||||
};
|
||||
"audio.channels" = 2;
|
||||
"audio.position" = [
|
||||
"FL"
|
||||
"FR"
|
||||
];
|
||||
"capture.props" = {
|
||||
"node.name" = "effect_input.eq11";
|
||||
"media.class" = "Audio/Sink";
|
||||
};
|
||||
"playback.props" = {
|
||||
"node.name" = "effect_output.eq11";
|
||||
"node.passive" = true;
|
||||
};
|
||||
};
|
||||
"audio.channels" = 2;
|
||||
"audio.position" = [ "FL" "FR" ];
|
||||
"capture.props" = {
|
||||
"node.name" = "effect_input.eq11";
|
||||
"media.class" = "Audio/Sink";
|
||||
};
|
||||
"playback.props" = {
|
||||
"node.name" = "effect_output.eq11";
|
||||
"node.passive" = true;
|
||||
};
|
||||
};
|
||||
}];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
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,11 +19,7 @@ in {
|
|||
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"
|
||||
"$(${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";
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
let cfg = config.jopejoe1.bluetooth;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.bluetooth;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.bluetooth = {
|
||||
enable = lib.mkEnableOption "Enable Bluetooth";
|
||||
};
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./systemd
|
||||
];
|
||||
imports = [ ./systemd ];
|
||||
}
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
let cfg = config.jopejoe1.boot.systemd;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.boot.systemd;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.boot.systemd = {
|
||||
enable = lib.mkEnableOption "Enable Systemd boot";
|
||||
};
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
{ config, lib, pkgs, self, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
self,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.doc;
|
||||
in {
|
||||
options.jopejoe1.doc = { enable = lib.mkEnableOption "Enable Documentation"; };
|
||||
let
|
||||
cfg = config.jopejoe1.doc;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.doc = {
|
||||
enable = lib.mkEnableOption "Enable Documentation";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
documentation = {
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
let cfg = config.events."37c3";
|
||||
in {
|
||||
let
|
||||
cfg = config.events."37c3";
|
||||
in
|
||||
{
|
||||
options.events."37c3" = {
|
||||
enable = lib.mkEnableOption "Enable settings for the 37c3 event";
|
||||
};
|
||||
|
@ -29,7 +31,9 @@ in {
|
|||
password = "37C3";
|
||||
phase2-auth = "mschapv2";
|
||||
};
|
||||
ipv4 = { method = "auto"; };
|
||||
ipv4 = {
|
||||
method = "auto";
|
||||
};
|
||||
ipv6 = {
|
||||
addr-gen-mode = "default";
|
||||
method = "auto";
|
||||
|
@ -43,8 +47,7 @@ in {
|
|||
ca_cert="${
|
||||
builtins.fetchurl {
|
||||
url = "https://letsencrypt.org/certs/isrgrootx1.pem";
|
||||
sha256 =
|
||||
"sha256:1la36n2f31j9s03v847ig6ny9lr875q3g7smnq33dcsmf2i5gd92";
|
||||
sha256 = "sha256:1la36n2f31j9s03v847ig6ny9lr875q3g7smnq33dcsmf2i5gd92";
|
||||
}
|
||||
}"
|
||||
altsubject_match="DNS:radius.c3noc.net"
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.keyboard;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.keyboard;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.keyboard = {
|
||||
enable = lib.mkEnableOption "Enable Keyboard";
|
||||
layout = lib.mkOption {
|
||||
|
@ -23,4 +30,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
{ config, lib, pkgs, self, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
self,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.kodi;
|
||||
in {
|
||||
options.jopejoe1.kodi = { enable = lib.mkEnableOption "Enable Kodi"; };
|
||||
let
|
||||
cfg = config.jopejoe1.kodi;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.kodi = {
|
||||
enable = lib.mkEnableOption "Enable Kodi";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = [ pkgs.kodi-wayland ];
|
||||
|
|
|
@ -1,8 +1,17 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
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 = {
|
||||
|
@ -35,9 +44,10 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
environment.variables = { LOG_ICONS = "true"; };
|
||||
environment.variables = {
|
||||
LOG_ICONS = "true";
|
||||
};
|
||||
|
||||
fonts.fontDir.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{ 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";
|
||||
};
|
||||
|
@ -16,8 +18,7 @@ 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";
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
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 +29,12 @@ in {
|
|||
git -C /var/lib/moodle-dl add .
|
||||
git -C /var/lib/moodle-dl commit -m "moodle-dl updated on `$(date)`"
|
||||
'';
|
||||
path = with pkgs; [ openssh moodle-dl git coreutils ];
|
||||
path = with pkgs; [
|
||||
openssh
|
||||
moodle-dl
|
||||
git
|
||||
coreutils
|
||||
];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = "root";
|
||||
|
@ -30,4 +42,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,9 +1,21 @@
|
|||
{ config, lib, pkgs, self, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
self,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.nix;
|
||||
in {
|
||||
options.jopejoe1.nix = { enable = lib.mkEnableOption "Enable Nix"; };
|
||||
options.jopejoe1.gui = { enable = lib.mkEnableOption "Enable GUI"; };
|
||||
let
|
||||
cfg = config.jopejoe1.nix;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.nix = {
|
||||
enable = lib.mkEnableOption "Enable Nix";
|
||||
};
|
||||
options.jopejoe1.gui = {
|
||||
enable = lib.mkEnableOption "Enable GUI";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
nix = {
|
||||
|
@ -31,39 +43,44 @@ in {
|
|||
keep-going = true;
|
||||
builders-use-substitutes = true;
|
||||
};
|
||||
# buildMachines = [
|
||||
# (rec {
|
||||
# systems = [ self.nixosConfigurations.kuraokami.config.nixpkgs.hostPlatform.system ];
|
||||
# supportedFeatures = self.nixosConfigurations.kuraokami.config.nix.settings.system-features;
|
||||
# maxJobs = if hostName != config.networking.hostName then 24 else 0;
|
||||
# speedFactor = 20;
|
||||
# sshKey = "/home/jopejoe1/.ssh/github";
|
||||
# sshUser = "jopejoe1";
|
||||
# hostName = "kuraokami";
|
||||
# protocol = "ssh-ng";
|
||||
# })
|
||||
# (rec {
|
||||
# systems = [ self.nixosConfigurations.zap.config.nixpkgs.hostPlatform.system ];
|
||||
# supportedFeatures = self.nixosConfigurations.zap.config.nix.settings.system-features;
|
||||
# maxJobs = if hostName != config.networking.hostName then 4 else 0;
|
||||
# speedFactor = 10;
|
||||
# sshUser = "jopejoe1";
|
||||
# sshKey = "/home/jopejoe1/.ssh/github";
|
||||
# hostName = "zap";
|
||||
# protocol = "ssh-ng";
|
||||
# })
|
||||
# ];
|
||||
# buildMachines = [
|
||||
# (rec {
|
||||
# systems = [ self.nixosConfigurations.kuraokami.config.nixpkgs.hostPlatform.system ];
|
||||
# supportedFeatures = self.nixosConfigurations.kuraokami.config.nix.settings.system-features;
|
||||
# maxJobs = if hostName != config.networking.hostName then 24 else 0;
|
||||
# speedFactor = 20;
|
||||
# sshKey = "/home/jopejoe1/.ssh/github";
|
||||
# sshUser = "jopejoe1";
|
||||
# hostName = "kuraokami";
|
||||
# protocol = "ssh-ng";
|
||||
# })
|
||||
# (rec {
|
||||
# systems = [ self.nixosConfigurations.zap.config.nixpkgs.hostPlatform.system ];
|
||||
# supportedFeatures = self.nixosConfigurations.zap.config.nix.settings.system-features;
|
||||
# maxJobs = if hostName != config.networking.hostName then 4 else 0;
|
||||
# speedFactor = 10;
|
||||
# sshUser = "jopejoe1";
|
||||
# sshKey = "/home/jopejoe1/.ssh/github";
|
||||
# hostName = "zap";
|
||||
# protocol = "ssh-ng";
|
||||
# })
|
||||
# ];
|
||||
distributedBuilds = true;
|
||||
package = pkgs.lix;
|
||||
registry = lib.mkForce ((lib.mapAttrs (_: flake: { inherit flake; })) ((lib.filterAttrs (_: lib.isType "flake")) self.inputs) // {
|
||||
self.flake = self;
|
||||
});
|
||||
registry = lib.mkForce (
|
||||
(lib.mapAttrs (_: flake: { inherit flake; })) (
|
||||
(lib.filterAttrs (_: lib.isType "flake")) self.inputs
|
||||
)
|
||||
// {
|
||||
self.flake = self;
|
||||
}
|
||||
);
|
||||
nixPath = lib.mkForce [ "/etc/nix/path" ];
|
||||
|
||||
};
|
||||
|
||||
nixpkgs = {
|
||||
config ={
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
nvidia.acceptLicense = true;
|
||||
};
|
||||
|
@ -75,7 +92,10 @@ in {
|
|||
];
|
||||
};
|
||||
|
||||
environment.etc = lib.mapAttrs' (name: value: { name = "nix/path/${name}"; value.source = value.flake; }) config.nix.registry;
|
||||
environment.etc = lib.mapAttrs' (name: value: {
|
||||
name = "nix/path/${name}";
|
||||
value.source = value.flake;
|
||||
}) config.nix.registry;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
deploy-rs
|
||||
|
@ -92,9 +112,7 @@ in {
|
|||
useGlobalPkgs = true;
|
||||
useUserPackages = true;
|
||||
backupFileExtension = "backup";
|
||||
sharedModules = [
|
||||
self.outputs.homeManagerModules.default
|
||||
];
|
||||
sharedModules = [ self.outputs.homeManagerModules.default ];
|
||||
};
|
||||
|
||||
systemd.services.nix-daemon.serviceConfig.LimitNOFILE = lib.mkForce 1048576000;
|
||||
|
@ -106,4 +124,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
let cfg = config.jopejoe1.plasma;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.plasma;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.plasma = {
|
||||
enable = lib.mkEnableOption "Enable KDE Plasma";
|
||||
};
|
||||
|
@ -24,9 +26,10 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
programs.kdeconnect = { enable = true; };
|
||||
programs.kdeconnect = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.printing;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.printing;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.printing = {
|
||||
enable = lib.mkEnableOption "Enable Printing";
|
||||
};
|
||||
|
@ -27,4 +34,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
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";
|
||||
};
|
||||
|
@ -30,7 +37,12 @@ in {
|
|||
git -C /var/lib/repo-sync push gitlab
|
||||
rm -r /var/lib/repo-sync
|
||||
'';
|
||||
path = [ pkgs.openssh pkgs.git pkgs.coreutils pkgs.nix ];
|
||||
path = [
|
||||
pkgs.openssh
|
||||
pkgs.git
|
||||
pkgs.coreutils
|
||||
pkgs.nix
|
||||
];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = "root";
|
||||
|
@ -38,4 +50,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
{ config, lib, pkgs, self, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
self,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.ssh;
|
||||
in {
|
||||
options.jopejoe1.ssh = { enable = lib.mkEnableOption "Enable ssh"; };
|
||||
let
|
||||
cfg = config.jopejoe1.ssh;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.ssh = {
|
||||
enable = lib.mkEnableOption "Enable ssh";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.openssh = {
|
||||
|
@ -15,4 +25,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +1,17 @@
|
|||
{ pkgs, 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;
|
||||
|
@ -14,10 +23,7 @@ in {
|
|||
localNetworkGameTransfers.openFirewall = true;
|
||||
gamescopeSession.enable = true;
|
||||
extest.enable = true;
|
||||
extraCompatPackages = with pkgs; [
|
||||
proton-ge-bin
|
||||
];
|
||||
extraCompatPackages = with pkgs; [ proton-ge-bin ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
let cfg = config.jopejoe1.sway;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.sway;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.sway = {
|
||||
enable = lib.mkEnableOption "Enable Sway";
|
||||
};
|
||||
|
@ -12,4 +14,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [ ./root ./jopejoe1 ];
|
||||
imports = [
|
||||
./root
|
||||
./jopejoe1
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.user.jopejoe1;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.user.jopejoe1;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.user.jopejoe1 = {
|
||||
enable = lib.mkEnableOption "Enable jopejoe1 user";
|
||||
};
|
||||
|
@ -12,7 +19,13 @@ in {
|
|||
shell = pkgs.nushell;
|
||||
description = "Johannes Jöns";
|
||||
hashedPassword = "$2b$05$Uk84TY/RHlH8DIigUlFYjeorjTlCMEY9wN2pAcw5BLaPoc7dKiSsC";
|
||||
extraGroups = [ "wheel" "networkmanager" "pipewire" "audio" "adbusers" ];
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
"networkmanager"
|
||||
"pipewire"
|
||||
"audio"
|
||||
"adbusers"
|
||||
];
|
||||
uid = 1000;
|
||||
openssh.authorizedKeys.keys = [
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB8oyMpS2hK3gQXyHIIVS6oilgMpemLmfhKKJ6RBMwUh johannes@joens.email"
|
||||
|
@ -21,8 +34,9 @@ in {
|
|||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFZDUoC+1lNR2JTY1Q+vhXpuLmKMdVl2OMFLVbQ3cGkw jopejoe1@kuraokami"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKm2igbJ+Ke+dJO3r7wp5ZTreHqC39Sjctca119Bl2yc jopejoe1@zap"
|
||||
];
|
||||
packages = with pkgs;
|
||||
[]
|
||||
packages =
|
||||
with pkgs;
|
||||
[ ]
|
||||
++ lib.optionals config.jopejoe1.gui.enable [
|
||||
libsForQt5.kate
|
||||
libsForQt5.ark
|
||||
|
@ -35,10 +49,13 @@ in {
|
|||
catppuccin-kde
|
||||
#catppuccin-gtk
|
||||
tela-icon-theme
|
||||
((discord.overrideAttrs (old: {
|
||||
desktopItem = old.desktopItem.override
|
||||
(old: { exec = old.exec + " --disable-gpu-sandbox"; });
|
||||
})).override {
|
||||
(
|
||||
(discord.overrideAttrs (old: {
|
||||
desktopItem = old.desktopItem.override (old: {
|
||||
exec = old.exec + " --disable-gpu-sandbox";
|
||||
});
|
||||
})).override
|
||||
{
|
||||
withOpenASAR = true;
|
||||
withVencord = true;
|
||||
withTTS = true;
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
{ config, lib, ... }:
|
||||
|
||||
let cfg = config.jopejoe1.user.root;
|
||||
in {
|
||||
options.jopejoe1.user.root = { enable = lib.mkEnableOption "Enable root user"; };
|
||||
let
|
||||
cfg = config.jopejoe1.user.root;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.user.root = {
|
||||
enable = lib.mkEnableOption "Enable root user";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
users.users.root = {
|
||||
|
@ -34,4 +38,3 @@ in {
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -1,16 +1,24 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
let cfg = config.jopejoe1.zerotierone;
|
||||
in {
|
||||
let
|
||||
cfg = config.jopejoe1.zerotierone;
|
||||
in
|
||||
{
|
||||
options.jopejoe1.zerotierone = {
|
||||
enable = lib.mkEnableOption "Enable zerotierone";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.zerotierone.enable = true;
|
||||
services.zerotierone.joinNetworks = [ "9e1948db638e9f93" ] ++ lib.optional (config.networking.hostName == "kuraokami") "7c31a21e86f9a75c";
|
||||
services.zerotierone.joinNetworks = [
|
||||
"9e1948db638e9f93"
|
||||
] ++ lib.optional (config.networking.hostName == "kuraokami") "7c31a21e86f9a75c";
|
||||
services.zerotierone.port = 9993;
|
||||
environment.systemPackages = with pkgs; lib.optional config.jopejoe1.gui.enable moonlight-qt;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue