This commit is contained in:
4DBug
2026-02-18 22:44:11 -06:00
parent 2d430c1b3b
commit bca6b60a3e
35 changed files with 116 additions and 4731 deletions

View File

@@ -1,24 +0,0 @@
{ config, pkgs, device, ... }:
{
security.rtkit.enable = true;
services = {
pulseaudio.enable = false;
pipewire = {
enable = true;
wireplumber.enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
lowLatency.enable = false;
jack.enable = true;
};
};
}

View File

@@ -1,52 +0,0 @@
{ config, lib, pkgs, ... }:
{
home = {
packages = with pkgs; [
beets
ffmpeg
chromaprint
];
file.".config/beets/config.yaml".text = ''
library: ~/.local/share/beets/library.db
directory: ~/Music
import:
write: true
copy: true
plugins:
- convert
- fetchart
- embedart
- fromfilename
- chroma
- smartplaylist
paths:
default: $artist/$album/$track - $title
convert:
auto: true
format: opus
formats:
opus: ffmpeg -i $source -y -vn -c:a libopus -b:a 160k $dest
dest: /home/bug/Music
fetchart:
auto: yes
ifempty: yes
art_filename: folder
embedart:
auto: yes
smartplaylist:
playlist_dir: ~/Music/playlists
relative_to: library
output: extm3u
'';
};
}

View File

@@ -1,23 +0,0 @@
{ config, pkgs, device, ... }:
{
boot = {
kernelModules = if (device == "desktop") then ["nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" "uinput"] else [];
kernelParams = if (device == "desktop") then ["nvidia-drm.modeset=1" "nvidia_drm.fbdev=1"] else [];
kernelPackages = pkgs.linuxPackages_zen;
initrd.checkJournalingFS = false;
loader = {
grub.splashImage = null;
systemd-boot = {
enable = true;
configurationLimit = 25;
};
efi.canTouchEfiVariables = true;
};
};
}

View File

@@ -1,28 +0,0 @@
{ config, pkgs, ... }:
let
TUNNEL_UUID = "4118935e-359b-4dd2-95bd-eb27f7b0c5bb";
in
{
environment.systemPackages = [ pkgs.cloudflared ];
environment.etc."cloudflared/${TUNNEL_UUID}.json".source = "/home/bug/.cloudflared/${TUNNEL_UUID}.json";
services.cloudflared = {
enable = true;
tunnels."${TUNNEL_UUID}" = {
credentialsFile = "/etc/cloudflared/${TUNNEL_UUID}.json";
default = "http_status:404";
ingress = {
"tvtun.bug.tools" = "http://127.0.0.1:3001";
"search.bug.tools" = "http://127.0.0.1:8888";
"files.bug.tools" = "http://127.0.0.1:3210";
"tube.bug.tools" = "http://127.0.0.1:3030";
"monitor.bug.tools" = "http://127.0.0.1:61208";
"reddit.bug.tools" = "http://127.0.0.1:8975";
};
};
};
}

View File

@@ -1,48 +0,0 @@
{ config, pkgs, inputs, ... }:
{
nixpkgs.overlays = [ inputs.copyparty.overlays.default ];
services.copyparty = {
enable = true;
user = "bug";
group = "copyparty";
settings = {
i = "0.0.0.0";
p = [ 3210 3211 ];
no-reload = true;
ignored-flag = false;
};
accounts = {
bug = {
passwordFile = "/home/bug/mailserver/bug.passwd";
};
};
groups = {
g1 = [ "bug" ];
};
volumes = {
"/" = {
path = "/srv/copyparty";
access = {
r = "*";
rw = [ "bug" ];
};
flags = {
fk = 4;
scan = 60;
};
};
};
openFilesLimit = 8192;
};
}

View File

@@ -1,62 +0,0 @@
{ config, pkgs, device, ... }:
{
services = {
greetd.enable = true;
system76-scheduler.enable = true;
displayManager = {
cosmic-greeter.enable = true;
autoLogin = {
enable = (device == "desktop");
user = "bug";
};
};
desktopManager.cosmic.enable = true;
};
environment.sessionVariables = {
COSMIC_DATA_CONTROL_ENABLED = 1;
};
xdg = {
portal = {
enable = true;
xdgOpenUsePortal = true;
config.common.default = ["gtk"];
extraPortals = [pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-cosmic];
};
mime = {
enable = true;
defaultApplications = {
"text/html" = "firefox.desktop";
"x-scheme-handler/http" = "firefox.desktop";
"x-scheme-handler/https" = "firefox.desktop";
"x-scheme-handler/about" = "firefox.desktop";
"x-scheme-handler/unknown" = "firefox.desktop";
"application/pdf" = "firefox.desktop";
"inode/directory" = "com.system76.CosmicFiles.desktop";
"text/plain" = "com.system76.CosmicEdit.desktop";
"text/markdown" = "com.system76.CosmicEdit.desktop";
"application/zip" = "org.gnome.FileRoller.desktop";
"application/x-7z-compressed" = "org.gnome.FileRoller.desktop";
"application/x-tar" = "org.gnome.FileRoller.desktop";
"application/gzip" = "org.gnome.FileRoller.desktop";
"application/x-xz" = "org.gnome.FileRoller.desktop";
"application/x-zip-compressed" = "org.gnome.FileRoller.desktop";
"application/x-ms-dos-executable" = "wine.desktop";
};
};
};
}

View File

@@ -1,90 +0,0 @@
{ config, pkgs, device, ... }:
{
programs.firefox = {
enable = true;
package = pkgs.librewolf;
profiles = {
"bug" = {
id = 0;
name = "bug";
isDefault = true;
};
};
policies = {
DisableTelemetry = true;
DisableFirefoxStudies = true;
Preferences = {
"cookiebanners.service.mode" = 2;
"cookiebanners.service.mode.privateBrowsing" = 2;
"network.cookie.lifetimePolicy" = 0;
"privacy.clearonShutdown.cookies" = false;
"privacy.claerOnShutdown.history" = false;
"privacy.donottrackheader.enabled" = true;
"privacy.fingerprintingProtection.enabled" = true;
"privacy.resistFingerprinting" = false;
"privacy.trackingprotection.enabled" = true;
"privacy.trackingprotection.socialtracking.enabled" = true;
"privacy.trackingprotection.fingerprinting.enabled" = true;
"privacy.trackingprotection.emailtracking.enabled" = true;
"webgl.disabled" = false;
};
/*
ExtensionSettings = {
# catppuccin no borders https://addons.mozilla.org/en-US/firefox/addon/catppuccin-mocha-no-borders/
"catppuccin-mocha-no-borders@skyrpex" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/catppuccin-mocha-no-borders/latest.xpi";
};
# DeArrow
"dearrow@jetpack" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/dearrow-jetpack/latest.xpi";
};
# Return Youtube Dislike
"return-youtube-dislike@0.4.11" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/return-youtube-dislike/latest.xpi";
};
# SponsorBlock for YouTube
"sponsorblock@sponsorblock.com" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorblock-for-youtube/latest.xpi";
};
# Stylus
"stylus@stylus" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/stylus/latest.xpi";
};
# Tampermonkey
"tampermonkey.net" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/tampermonkey/latest.xpi";
};
# uBlock Origin
"ublockorigin@raymondhill.net" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
};
# BTRoblox
"btroblox@btroblox" = {
installation_mode = "force_installed";
install_url = "https://addons.mozilla.org/firefox/downloads/latest/btroblox/latest.xpi";
};
};
*/
};
};
}

View File

@@ -1,44 +0,0 @@
{ config, pkgs, lib, ... }:
{
environment.systemPackages = [
pkgs.glances
];
users.users.glances = {
isSystemUser = true;
group = "glances";
home = "/var/lib/glances";
createHome = true;
};
users.groups.glances = {};
systemd.services.glances-web = {
description = "glances web interface";
after = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
User = "glances";
Group = "glances";
ExecStart = ''
${pkgs.glances}/bin/glances \
-w \
-p 61208 \
-B 0.0.0.0
'';
Restart = "always";
RestartSec = 5;
NoNewPrivileges = true;
PrivateTmp = true;
ProtectSystem = "strict";
ProtectHome = true;
LockPersonality = true;
MemoryDenyWriteExecute = true;
};
};
}

View File

@@ -1,88 +0,0 @@
{ config, pkgs, device, ... }:
{
services = {
xserver = {
enable = true;
videoDrivers = if (device == "desktop") then ["nvidia"] else ["amdgpu"];
excludePackages = [pkgs.xterm];
xkb = {
layout = "us";
variant = "";
};
};
};
hardware = {
graphics = {
enable = true;
enable32Bit = true;
extraPackages = with pkgs; [
libva-vdpau-driver
libvdpau
libvdpau-va-gl
vdpauinfo
libva
libva-utils
libglvnd
mesa
] ++ (if (device == "desktop") then [
nvidia-vaapi-driver
] else [
]);
};
nvidia = if (device == "desktop") then {
modesetting.enable = true;
powerManagement.enable = false;
powerManagement.finegrained = false;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.beta;
nvidiaPersistenced = true;
} else {};
enableRedistributableFirmware = true;
};
environment = {
variables = {
} // (if (device == "desktop") then {
WGPU_BACKEND = "gl";
GBM_BACKEND = "nvidia-drm";
LIBVA_DRIVER_NAME = "nvidia";
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
EGL_PLATFORM = "wayland";
} else {
});
sessionVariables = {
WEBKIT_DISABLE_COMPOSITING_MODE = "1";
} // (if (device == "desktop") then {
WGPU_BACKEND = "gl";
GBM_BACKEND = "nvidia-drm";
LIBVA_DRIVER_NAME = "nvidia";
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
EGL_PLATFORM = "wayland";
} else {
});
};
services.logind.settings.Login = {
HandleLidSwitch = "ignore";
HandleLidSwitchDocked = "ignore";
};
}

View File

@@ -1,56 +0,0 @@
{ config, pkgs, lib, ... }:
let
companionPort = 8282;
companionPath = "/companion";
companionKey = "kKg3RKeZjE7frmuw";
in
{
virtualisation.podman.enable = true;
virtualisation.oci-containers.backend = lib.mkDefault "podman";
virtualisation.oci-containers.containers.invidious-companion = {
image = "quay.io/invidious/invidious-companion:latest";
extraOptions = [ "--network=host" "--pull=always" ];
environment = {
SERVER_SECRET_KEY = companionKey;
HOST = "127.0.0.1";
PORT = toString companionPort;
SERVER_BASE_URL = "http://127.0.0.1:${toString companionPort}";
# HTTP_PROXY = "http://proxy.example:3128";
# HTTPS_PROXY = "http://proxy.example:3128";
# NO_PROXY = "127.0.0.1,localhost";
};
};
services.invidious = {
enable = true;
package = pkgs.invidious;
address = "127.0.0.1";
port = 3030;
nginx.enable = false;
sig-helper.enable = false;
settings = {
domain = "tube.bug.tools";
https_only = false;
external_port = 3030;
invidious_companion = [
{ private_url = "http://127.0.0.1:${toString companionPort}${companionPath}"; }
];
invidious_companion_key = companionKey;
};
};
systemd.services.invidious = let dep = "podman-invidious-companion.service"; in {
wants = [ dep ];
after = [ dep ];
requires = [ dep ];
};
}

View File

@@ -1,21 +0,0 @@
{ config, pkgs, device, ... }:
{
time.timeZone = "America/Chicago";
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
};
}

View File

@@ -1,45 +0,0 @@
{ config, pkgs, device, ... }:
{
imports = [
(builtins.fetchTarball {
url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/archive/master.tar.gz";
sha256 = "0xlhl8zhcz5c6hvmpkfw9ay2lfnk6nhax8pphvbv3vzxf1p9dhw9";
})
];
security.acme = {
acceptTerms = true;
defaults.email = "security@bug.tools";
certs."mail.bug.tools" = {
listenHTTP = "1360";
};
};
mailserver = {
enable = true;
stateVersion = 3;
fqdn = "mail.bug.tools";
domains = [ "bug.tools" ];
x509.useACMEHost = "mail.bug.tools";
loginAccounts = {
"bug@bug.tools" = {
hashedPasswordFile = "/home/bug/mailserver/bug.passwd";
aliases = [
"admin@bug.tools"
"google@bug.tools"
];
};
"pare@bug.tools" = {
hashedPasswordFile = "/home/bug/mailserver/pare.passwd";
};
};
};
}

View File

@@ -1,37 +0,0 @@
{ config, pkgs, device, ... }:
{
services = {
mpd = {
enable = true;
settings = {
music_directory = (if (device == "desktop") then "/home/bug/Music" else "/run/media/bug/Music/");
decoder = [
{
plugin = "ffmpeg";
enabled = "yes";
}
{
plugin = "opus";
enabled = "no";
}
];
audio_output = [{
type = "pipewire";
name = "PipeWire Sound Server";
}];
};
user = "bug";
};
};
systemd.services = {
mpd.environment = {
XDG_RUNTIME_DIR = "/run/user/1000";
};
};
}

View File

@@ -1,25 +0,0 @@
{ config, pkgs, device, ... }:
{
networking = {
hostName = if (device == "server") then "box" else "nix";
networkmanager.enable = true;
nameservers = [ "1.1.1.1" "1.0.0.1" ];
};
services = {
cloudflare-warp.enable = (device == "laptop");
openssh = {
enable = true;
settings = {
PrintMotd = true;
X11Forwarding = true;
AllowTcpForwarding = true;
};
};
};
}

View File

@@ -1,360 +0,0 @@
{ lib, config, inputs, pkgs, options, device, ... }:
let
nix-gaming = import (builtins.fetchTarball "https://github.com/fufexan/nix-gaming/archive/master.tar.gz");
nix-alien = import (
builtins.fetchTarball "https://github.com/thiagokokada/nix-alien/tarball/master"
) {};
in
{
imports = [
nix-gaming.nixosModules.platformOptimizations
nix-gaming.nixosModules.pipewireLowLatency
];
nixpkgs = {
config = {
allowUnfree = true;
cudaSupport = (device == "desktop");
nvidia.acceptLicense = (device == "desktop");
};
overlays = [
];
};
environment.sessionVariables = {
BROWSER = "firefox";
NIXPKGS_ALLOW_UNFREE = 1;
};
users.users.bug.packages = with pkgs; [
vscode
(luajit.withPackages (ps: with ps; [
luasocket
bit32
]))
go
#(python3.withPackages (ps: with ps; [
#unidecode
#discordpy
#setuptools
#pip
#pynput
#python-uinput
#mido
#pyautogui
#pygobject3
#pycairo
#tkinter
#numpy
#scipy
#imageio
#evdev
#]))
nodejs
(blender.withPackages (ps: with ps; [
libGLU
gcc
zlib
libX11
fontconfig
pcre2
libXext
libxcb
glib
]))
plasticity
obsidian
vesktop
nicotine-plus
fastfetch
tree
gh
scanmem
samrewritten
impression
mission-center
authenticator
steamtinkerlaunch
obs-studio
#prismlauncher
euphonica
kooha
loupe
arduino-ide
geary
];
environment.systemPackages = with pkgs; [
home-manager
comma # run nixpkgs without installing
nix-index
git
wget
gcc
gnumake
nmap
inetutils
nix-prefetch
nix-output-monitor
nvd # nix pkg diff
nixfmt # nix formatter
nixd # nix language server
nil # nix language server
nh # nix helper
gnome-boxes # gnome vm manager
vulkan-tools
openjdk
zlib
glfw
glew
wine64
wineWow64Packages.full
lug-helper
appimage-run
vulkan-validation-layers
vulkan-loader
pulseaudioFull
gamemode
winetricks
steam-run
firmware-updater
cosmic-applets
cosmic-edit
cosmic-ext-calculator
cosmic-ext-tweaks
cosmic-screenshot
quick-webapps
nix-alien.nix-alien
file-roller
unzip
xdg-desktop-portal-gtk
xdg-desktop-portal-cosmic
mangohud
mesa-demos
lutris
gnome-software
neovim
micro
inputs.hytale-launcher.packages.${pkgs.system}.default
baobab
psmisc
firefox-bin
] ++ (if (device == "desktop") then [
#(nix-gaming.packages.${pkgs.stdenv.hostPlatform.system}.star-citizen.override {
# tricks = [ "arial" "vcrun2019" "win10" "sound=alsa" ];
#})
inputs.nix-citizen.packages.${system}.rsi-launcher
libxshmfence
(appimage-run.override {
extraPkgs = pkgs: [ pkgs.xorg.libxshmfence pkgs.linuxPackages.nvidia_x11 ];
})
] else [
bambu-studio
]);
services = {
flatpak = {
enable = true;
remotes = lib.mkOptionDefault [{
name = "flathub-beta";
location = "https://flathub.org/beta-repo/flathub-beta.flatpakrepo";
}];
update.auto.enable = true;
uninstallUnmanaged = true;
packages = [
"org.vinegarhq.Sober"
"org.vinegarhq.Vinegar"
"org.gnome.Decibels"
"org.pipewire.Helvum"
"community.pathofbuilding.PathOfBuilding"
"io.github.gaheldev.Millisecond"
{
appId = "com.hytale.Launcher";
sha256 = "sha256-SUxfyovC2umZmsOj5bOTZ8WfGCpnWcz7svOESwNekV0=";
bundle = "${pkgs.fetchurl {
url = "https://launcher.hytale.com/builds/release/linux/amd64/hytale-launcher-latest.flatpak";
sha256 = "sha256-SUxfyovC2umZmsOj5bOTZ8WfGCpnWcz7svOESwNekV0=";
}}";
}
# add Polytoria client
# https://cdn.polytoria.com/releases/installer/linux/Polytoria%20Setup%204.12.0.flatpak
{
appId = "com.polytoria.launcher";
sha256 = "sha256-VjhNiJfSdCtlH2SuP3Mn8jjOrx5xcOqhtDKaWYIwxYg=";
bundle = "${pkgs.fetchurl {
url = "https://github.com/4DBug/poly/releases/download/poly/poly.flatpak";
sha256 = "sha256-VjhNiJfSdCtlH2SuP3Mn8jjOrx5xcOqhtDKaWYIwxYg=";
}}";
}
];
overrides = {
global = {
Context.sockets = ["wayland" "!x11" "!fallback-x11"];
};
};
};
ollama = {
enable = false;
loadModels = [ "llama3.2:3b" "deepseek-r1:1.5b" "deepseek-r1:8b"];
};
};
fonts = {
fontDir.enable = true;
enableDefaultPackages = true;
packages = with pkgs; [
twitter-color-emoji
nerd-fonts.fira-code
nerd-fonts.droid-sans-mono
];
fontconfig = {
enable = true;
useEmbeddedBitmaps = true;
defaultFonts = {
emoji = [ "Twitter Color Emoji" ];
};
};
};
programs = {
rsi-launcher = {
enable = (device == "desktop");
preCommands = ''
export DISPLAY=;
'';
};
appimage = {
enable = true;
binfmt = true;
};
firefox = {
enable = true;
package = pkgs.firefox-bin;
};
steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = false;
localNetworkGameTransfers.openFirewall = true;
gamescopeSession.enable = true;
extraCompatPackages = with pkgs; [
proton-ge-bin
];
platformOptimizations.enable = true;
};
ydotool.enable = true;
gamescope = {
enable = true;
capSysNice = true;
args = [
"--rt"
"--expose-wayland"
];
};
virt-manager.enable = true;
nix-ld = {
enable = true;
libraries = options.programs.nix-ld.libraries.default ++ (with pkgs; [
libxml2
udev
gcc
egl-wayland
mesa
libglvnd
wayland
libX11
libXcursor
libXrandr
libXi
]);
};
};
}

View File

@@ -1,35 +0,0 @@
{ config, lib, pkgs, ... }:
{
services.redlib = {
enable = true;
address = "127.0.0.1";
port = 8975;
openFirewall = false;
settings = {
SFW_ONLY = "off"; # ["on", "off"]
ROBOTS_DISABLE_INDEXING = "on"; # ["on", "off"]
ENABLE_RSS = "on"; # ["on", "off"]
THEME = "system"; # ["system", "light", "dark", "black", "dracula", "nord", "laserwave", "violet", "gold", "rosebox", "gruvboxdark", "gruvboxlight", "tokyoNight", "icebergDark", "doomone", "libredditBlack", "libredditDark", "libredditLight"]
FRONT_PAGE = "default"; # ["default", "popular", "all"]
LAYOUT = "card"; # ["card", "clean", "compact"]
WIDE = "on"; # ["on", "off"]
POST_SORT = "hot"; # ["hot", "new", "top", "rising", "controversial"]
COMMENT_SORT = "confidence"; # ["confidence", "top", "new", "controversial", "old"]
BLUR_SPOILER = "off"; # ["on", "off"]
SHOW_NSFW = "on"; # ["on", "off"]
BLUR_NSFW = "off"; # ["on", "off"]
USE_HLS = "on"; # ["on", "off"]
HIDE_HLS_NOTIFICATION = "off"; # ["on", "off"]
AUTOPLAY_VIDEOS = "off"; # ["on", "off"]
HIDE_AWARDS = "off"; # ["on", "off"]
DISABLE_VISIT_REDDIT_CONFIRMATION = "off"; # ["on", "off"]
HIDE_SCORE = "off"; # ["on", "off"]
HIDE_SIDEBAR_AND_SUMMARY = "off"; # ["on", "off"]
FIXED_NAVBAR = "on"; # ["on", "off"]
REMOVE_DEFAULT_FEEDS = "off"; # ["on", "off"]
};
};
}

View File

@@ -1,23 +0,0 @@
{ config, lib, pkgs, ... }:
{
systemd.services.searx-init.serviceConfig.EnvironmentFile = [
"/home/bug/.searxng.env"
];
services.searx = {
enable = true;
redisCreateLocally = false;
configureUwsgi = false;
settingsFile = ./searxng.yml;
environmentFile = "/home/bug/.searxng.env";
settings = {
general.instance_name = "search.bug.tools";
server.port = 8888;
server.bind_address = "0.0.0.0";
server.secret_key = "$SEARX_SECRET_KEY";
};
};
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,12 +0,0 @@
{ config, pkgs, device, ... }:
{
security = {
polkit.enable = true;
sudo = {
enable = true;
wheelNeedsPassword = false;
};
};
}

View File

View File

@@ -1,18 +0,0 @@
{ config, pkgs, device, ... }:
{
fileSystems."/mnt/box" = {
device = "bug@box.bug.tools:/";
fsType = "fuse.sshfs";
options = [
"identityfile=/home/bug/.ssh/id_ed25519"
"idmap=user"
"x-systemd.automount"
"allow_other"
"user"
"_netdev"
];
};
boot.supportedFilesystems."fuse.sshfs" = true;
}

View File

@@ -1,41 +0,0 @@
{ config, pkgs, device, ... }:
{
stylix = {
enable = true;
autoEnable = true;
polarity = "dark";
# catppuccin mocha
base16Scheme = {
base00 = "1E1E2E";
base01 = "181825";
base02 = "313244";
base03 = "45475A";
base04 = "585B70";
base05 = "CDD6F4";
base06 = "F5E0DC";
base07 = "B4BEFE";
base08 = "F38BA8";
base09 = "FAB387";
base0A = "F9E2AF";
base0B = "A6E3A1";
base0C = "94E2D5";
base0D = "89B4FA";
base0E = "CBA6F7";
base0F = "F2CDCD";
};
fonts.emoji = {
name = "Twitter Color Emoji";
package = pkgs.twitter-color-emoji;
};
targets = {
vesktop.enable = true;
gnome.enable = true;
gtk.enable = true;
firefox.enable = true;
};
};
}

View File

@@ -1,17 +0,0 @@
{ config, pkgs, device, ... }:
{
boot.kernel.sysctl = {
"fs.file-max" = 524288;
};
swapDevices = [{
device = "/var/lib/swapfile";
size = 8 * 1024;
}];
zramSwap = {
enable = true;
memoryMax = 64 * 1024 * 1024 * 1024;
};
}

View File

@@ -1,73 +0,0 @@
{ config, pkgs, device, ... }:
{
services.syncthing = {
enable = true;
overrideDevices = true;
overrideFolders = true;
key = "/home/bug/.syncthing/key.pem";
cert = "/home/bug/.syncthing/cert.pem";
settings = {
devices = {
desktop.id = "VEZXY3W-U6UXWTP-6BHANIG-O5EKNZY-XNV5YOX-4V4O3HB-ETECIUX-T2DK7AV";
laptop.id = "I6NW53P-IJMMT73-7O53TXY-3GAHS2U-4EAADM7-ZNB5ZPB-62QHKVW-H7DYXQ2";
server.id = "KJECAIP-Y2Y3FHV-NOJKIQV-LWIDMMZ-5ITEAZ4-LQCQL72-3BGW6T7-BFPFJQA";
};
folders = {
"Documents" = {
path = "/home/bug/Documents";
devices = ["desktop" "laptop" "server"];
};
"Downloads" = {
path = "/home/bug/Downloads";
devices = ["desktop" "laptop" "server"];
};
"Pictures" = {
path = "/home/bug/Pictures";
devices = ["desktop" "laptop" "server"];
};
"Videos" = {
path = "/home/bug/Videos";
devices = ["desktop" "laptop" "server"];
};
"nix" = {
path = "/home/bug/nix";
devices = ["desktop" "laptop" "server"];
ignorePatterns = [
"device.nix"
"hardware-configuration.nix"
];
};
"hytale" = {
path = "/home/bug/.local/share/Hytale/UserData/Saves";
devices = ["desktop" "laptop"];
};
"ssh" = {
path = "/home/bug/.ssh";
devices = ["desktop" "laptop" "server"];
};
"cloudflared" = {
path = "/home/bug/.cloudflared";
devices = ["desktop" "laptop" "server"];
};
"Music" = {
path = (if (device == "desktop") then "/home/bug/Music" else "/run/media/bug/Music/");
devices = ["desktop" "laptop"];
};
};
};
};
}

View File

@@ -1,19 +0,0 @@
{ config, pkgs, device, ... }:
{
users.users = {
bug = {
isNormalUser = true;
description = "bug";
extraGroups = [ "networkmanager" "wheel" "audio" "video" "libvirtd" "ydotool" "dialout" ];
};
} // (if (device == "server") then {
levi = {
isNormalUser = true;
description = "levi";
extraGroups = [];
hashedPasswordFile = "/home/bug/users/levi.passwd";
};
} else {});
}

View File

@@ -1,9 +0,0 @@
{ config, pkgs, device, ... }:
{
virtualisation = {
libvirtd.enable = true;
spiceUSBRedirection.enable = true;
};
}

View File

@@ -1,7 +0,0 @@
{ config, pkgs, device, ... }:
{
services = {
vscode-server.enable = true;
};
}