refactor
This commit is contained in:
parent
1206380efd
commit
7203fc1ed9
|
@ -1,14 +1,10 @@
|
||||||
{pkgs, ...}: {
|
{...}: {
|
||||||
imports = [
|
imports = [
|
||||||
./git.nix
|
./git.nix
|
||||||
./nvim.nix
|
./nvim.nix
|
||||||
./zsh.nix
|
./zsh.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
lazygit
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
matchBlocks."viridian" = {
|
matchBlocks."viridian" = {
|
||||||
|
|
|
@ -1,8 +1,4 @@
|
||||||
{pkgs, ...}: {
|
{...}: {
|
||||||
home.packages = with pkgs; [
|
|
||||||
lazygit
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "jasmine";
|
userName = "jasmine";
|
||||||
|
|
|
@ -5,19 +5,19 @@
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./discord
|
./discord
|
||||||
|
./dunst
|
||||||
|
./email
|
||||||
|
./irc
|
||||||
|
./mpd
|
||||||
|
./picom
|
||||||
./rofi
|
./rofi
|
||||||
./wezterm
|
./wezterm
|
||||||
|
|
||||||
./email.nix
|
|
||||||
./irc.nix
|
|
||||||
./mpd.nix
|
|
||||||
./picom.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
feh
|
feh
|
||||||
xmobar
|
xmobar # custom build using xmobar-config
|
||||||
xmonad
|
xmonad # custom build using xmonad-config
|
||||||
];
|
];
|
||||||
|
|
||||||
home.file = {
|
home.file = {
|
||||||
|
|
31
home-manager/sajenim/features/desktop/dunst/default.nix
Normal file
31
home-manager/sajenim/features/desktop/dunst/default.nix
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{...}: {
|
||||||
|
services.dunst = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
global = {
|
||||||
|
width = 300;
|
||||||
|
height = 300;
|
||||||
|
origin = "top-right";
|
||||||
|
offset = "20x20";
|
||||||
|
frame_width = 5;
|
||||||
|
frame_color = "#282828";
|
||||||
|
corner_radius = 10;
|
||||||
|
};
|
||||||
|
|
||||||
|
urgency_low = {
|
||||||
|
background = "#1d2021";
|
||||||
|
foreground = "#d4be98";
|
||||||
|
};
|
||||||
|
|
||||||
|
urgency_normal = {
|
||||||
|
background = "#1d2021";
|
||||||
|
foreground = "#d4be98";
|
||||||
|
};
|
||||||
|
|
||||||
|
urgency_critical = {
|
||||||
|
background = "#1d2021";
|
||||||
|
foreground = "#d4be98";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
home.packages = with pkgs.unstable; [
|
home.packages = with pkgs; [
|
||||||
wezterm
|
wezterm
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,9 @@ xrandr --output HDMI-A-0 --mode 1920x1080 --output DisplayPort-0 --mode 2560x144
|
||||||
# Apply our wallpaper
|
# Apply our wallpaper
|
||||||
feh --bg-center ~/.repositories/dotfiles.nix/assets/chinatown.png
|
feh --bg-center ~/.repositories/dotfiles.nix/assets/chinatown.png
|
||||||
|
|
||||||
|
# Start our notification daemon
|
||||||
|
dunst &
|
||||||
|
|
||||||
# Enable our compositor
|
# Enable our compositor
|
||||||
picom -b
|
picom -b
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
imports = [
|
imports = [
|
||||||
./mangohud.nix
|
./mangohud
|
||||||
];
|
];
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{pkgs, ...}: {
|
{pkgs, ...}: {
|
||||||
home = {
|
home = {
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
blender
|
unstable.blender
|
||||||
freecad
|
freecad # https://discourse.nixos.org/t/error-hash-mismatch-in-fixed-output-derivation/52353
|
||||||
kicad
|
unstable.kicad
|
||||||
openscad
|
unstable.openscad
|
||||||
unstable.prusa-slicer
|
prusa-slicer # Some error idk fix this later
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 KTkZog kwtoXue2ljAqDtAytalA3SPoVfzGmnB7dkyKOTKr1jI
|
||||||
|
NtMmHhdpuCcsfeq2IyUmMBgyKid8qn+y3DPh0ykGq0c
|
||||||
|
-> b#-grease NK 6\>t2sl 1OA
|
||||||
|
ythv/6KoFWwpe2Wpj9MKcdhtdlq43V+lEiG2QF6gE1rj+k38jev00MuQUHfTS9bw
|
||||||
|
Xc6ZydroPWPjqnQkvN4u4kzf4X8
|
||||||
|
--- /HrB0xueHcV6Vc3dOdMaGnkMBFIwHSd7E0W2QPVTsKM
|
||||||
|
ùÖ{^?{m’iÑ…ýÑ9<C391>–Y墓ÊHYr¢7º§ÌT=”ÿ*0wð)î1C°+ÓÖ
|
|
@ -2,15 +2,23 @@
|
||||||
imports = [
|
imports = [
|
||||||
# Global configuartion for all our systems
|
# Global configuartion for all our systems
|
||||||
../common/global
|
../common/global
|
||||||
|
|
||||||
# Our user configuration and optional user units
|
# Our user configuration and optional user units
|
||||||
../common/users/sajenim
|
../common/users/sajenim
|
||||||
../common/users/sajenim/samba
|
../common/users/sajenim/samba
|
||||||
../common/users/sajenim/steam
|
../common/users/sajenim/steam
|
||||||
|
|
||||||
# Optional components
|
# Optional components
|
||||||
../common/optional/key.nix
|
../common/optional/yubikey.nix
|
||||||
# Programs and services
|
|
||||||
./programs
|
# Services
|
||||||
./services
|
./services/amdgpu-clocks
|
||||||
|
./services/flatpak
|
||||||
|
./services/libinput
|
||||||
|
./services/printers
|
||||||
|
./services/udev
|
||||||
|
./services/xserver
|
||||||
|
|
||||||
# Setup our hardware
|
# Setup our hardware
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
@ -21,7 +29,22 @@
|
||||||
networkmanager.enable = true;
|
networkmanager.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Use docker instead of podman for our containers.
|
# Configure programs
|
||||||
|
programs = {
|
||||||
|
zsh.enable = true;
|
||||||
|
# Load and unload environment variables.
|
||||||
|
direnv.enable = true;
|
||||||
|
# Android debug bridge: communicate with devices.
|
||||||
|
adb.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Configure services
|
||||||
|
services = {
|
||||||
|
# Access smart cards using SCard API
|
||||||
|
pcscd.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Manage linux containers
|
||||||
virtualisation.docker = {
|
virtualisation.docker = {
|
||||||
enable = true;
|
enable = true;
|
||||||
liveRestore = false;
|
liveRestore = false;
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{...}: {
|
|
||||||
programs = {
|
|
||||||
zsh.enable = true;
|
|
||||||
# Load and unload environment variables.
|
|
||||||
direnv.enable = true;
|
|
||||||
# Android debug bridge: communicate with devices.
|
|
||||||
adb.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,15 +0,0 @@
|
||||||
{...}: {
|
|
||||||
imports = [
|
|
||||||
./printer
|
|
||||||
./amdgpu-clocks.nix
|
|
||||||
./flatpak.nix
|
|
||||||
./libinput.nix
|
|
||||||
./udev.nix
|
|
||||||
./xserver.nix
|
|
||||||
];
|
|
||||||
|
|
||||||
# Enable a few extra services.
|
|
||||||
services = {
|
|
||||||
pcscd.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -2,13 +2,37 @@
|
||||||
imports = [
|
imports = [
|
||||||
# Global configuration for all our systems
|
# Global configuration for all our systems
|
||||||
../common/global
|
../common/global
|
||||||
|
|
||||||
# Our user configuration and optional user units
|
# Our user configuration and optional user units
|
||||||
../common/users/sajenim
|
../common/users/sajenim
|
||||||
../common/users/spectre
|
../common/users/spectre
|
||||||
# Programs and services
|
|
||||||
./programs
|
# Containers
|
||||||
./services
|
./containers/jellyfin
|
||||||
./containers
|
./containers/jellyseerr
|
||||||
|
./containers/lidarr
|
||||||
|
./containers/mealie
|
||||||
|
./containers/microbin
|
||||||
|
./containers/prowlarr
|
||||||
|
./containers/qbittorrent
|
||||||
|
./containers/radarr
|
||||||
|
./containers/recyclarr
|
||||||
|
./containers/sonarr
|
||||||
|
|
||||||
|
# Services
|
||||||
|
./services/borgbackup
|
||||||
|
./services/crowdsec
|
||||||
|
./services/forgejo
|
||||||
|
./services/grafana
|
||||||
|
./services/lighttpd
|
||||||
|
./services/minecraft
|
||||||
|
./services/mpd
|
||||||
|
./services/mysql
|
||||||
|
./services/paperless-ngx
|
||||||
|
./services/prometheus
|
||||||
|
./services/samba
|
||||||
|
./services/traefik
|
||||||
|
|
||||||
# Setup our hardware
|
# Setup our hardware
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
@ -21,26 +45,26 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
allowPing = true;
|
allowPing = true;
|
||||||
allowedTCPPorts = [
|
allowedTCPPorts = [
|
||||||
53 # adguardhome (DNS)
|
80
|
||||||
80 # traefik (HTTP)
|
443
|
||||||
443 # traefik (HTTPS)
|
6600
|
||||||
32372 # qbittorrent
|
|
||||||
6600 # mpd
|
|
||||||
];
|
|
||||||
allowedUDPPorts = [
|
|
||||||
53 # adguardhome (DNS)
|
|
||||||
80 # traefik (HTTP)
|
|
||||||
443 # traefik (HTTPS)
|
|
||||||
32372 # qbittorrent
|
|
||||||
6600 # mpd
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Use docker instead of podman for our containers.
|
# Configure programs
|
||||||
virtualisation.docker = {
|
programs = {
|
||||||
enable = true;
|
zsh.enable = true;
|
||||||
liveRestore = false;
|
};
|
||||||
|
|
||||||
|
# Manage linux containers
|
||||||
|
virtualisation = {
|
||||||
|
docker = {
|
||||||
|
enable = true;
|
||||||
|
liveRestore = false;
|
||||||
|
};
|
||||||
|
# Implementation to use for containers
|
||||||
|
oci-containers.backend = "docker";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Required for smooth remote deployments
|
# Required for smooth remote deployments
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
{...}: {
|
|
||||||
imports = [
|
|
||||||
./jellyfin.nix
|
|
||||||
./jellyseerr.nix
|
|
||||||
./lidarr.nix
|
|
||||||
./prowlarr.nix
|
|
||||||
./qbittorrent.nix
|
|
||||||
./radarr.nix
|
|
||||||
./recyclarr.nix
|
|
||||||
./sonarr.nix
|
|
||||||
./mealie.nix
|
|
||||||
./microbin
|
|
||||||
];
|
|
||||||
virtualisation.oci-containers.backend = "docker";
|
|
||||||
}
|
|
|
@ -1,5 +0,0 @@
|
||||||
{...}: {
|
|
||||||
programs = {
|
|
||||||
zsh.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,15 +0,0 @@
|
||||||
{...}: {
|
|
||||||
imports = [
|
|
||||||
./traefik
|
|
||||||
./crowdsec
|
|
||||||
./minecraft
|
|
||||||
./borgbackup.nix
|
|
||||||
./forgejo.nix
|
|
||||||
./lighttpd.nix
|
|
||||||
./mpd.nix
|
|
||||||
./samba.nix
|
|
||||||
./grafana.nix
|
|
||||||
./mysql.nix
|
|
||||||
./prometheus.nix
|
|
||||||
];
|
|
||||||
}
|
|
37
nixos/viridian/services/paperless-ngx/default.nix
Normal file
37
nixos/viridian/services/paperless-ngx/default.nix
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
{config, ...}: let
|
||||||
|
dir = "/srv/services/paperless-ngx";
|
||||||
|
in {
|
||||||
|
age.secrets.paperless-ngx = {
|
||||||
|
rekeyFile = ./password.age;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.paperless = {
|
||||||
|
enable = true;
|
||||||
|
port = 28981;
|
||||||
|
dataDir = "${dir}";
|
||||||
|
mediaDir = "${dir}/media";
|
||||||
|
settings = {
|
||||||
|
PAPERLESS_ADMIN_USER = "sajenim";
|
||||||
|
};
|
||||||
|
passwordFile = config.age.secrets.paperless-ngx.path;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.traefik.dynamicConfigOptions.http.routers = {
|
||||||
|
paperless-ngx = {
|
||||||
|
rule = "Host(`docs.kanto.dev`)";
|
||||||
|
entryPoints = [
|
||||||
|
"websecure"
|
||||||
|
];
|
||||||
|
middlewares = [
|
||||||
|
"internal"
|
||||||
|
];
|
||||||
|
service = "paperless-ngx";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.traefik.dynamicConfigOptions.http.services = {
|
||||||
|
paperless-ngx.loadBalancer.servers = [
|
||||||
|
{url = "http://127.0.0.1:${toString config.services.paperless.port}";}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
8
nixos/viridian/services/paperless-ngx/password.age
Normal file
8
nixos/viridian/services/paperless-ngx/password.age
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
age-encryption.org/v1
|
||||||
|
-> piv-p256 hdSnGw A4P0oT5qK/bG8ieEixFW/SCouhantxg3dSjiGG1MEuns
|
||||||
|
cDorIZ44RmsUsiiybnr1y8WZtv/3kFPi86QkpGURqTY
|
||||||
|
-> FNP4c-grease
|
||||||
|
LThbpY1sc7XzQgputWt3ULuLwemBilYrOEZMTAj+/xkxyQg5HwSIhBS1XYzvMc2K
|
||||||
|
ld/o3JfDaXVLEz0Vk59TClXeOGITp7Ki
|
||||||
|
--- 572BrDug9qmAG7G0mC5bOZ/h1UD4y2m1ceDhy1qQh3U
|
||||||
|
/›¬vØ‘k)Ùëh’Œ ˆ™æûËÇx^QyAeK}låÆg~¯k> l*p
|
Loading…
Reference in a new issue