{ config, inputs, pkgs, lib, ... }: let userName = "kris"; realName = "Kris"; in { imports = [ ../../modules/forceMainPC.nix ../../modules/nixos/main-user.nix ../../modules/home-manager/main.nix ./packages.nix # ../../modules/home-manager/hyprpanel.nix ./other/activate.nix # ./apps/ancs.nix ]; services.displayManager.sddm.enable = true; services.displayManager.sddm.wayland.enable = true; services.displayManager.autoLogin = { enable = true; user = userName; }; boot.loader.grub.theme = lib.mkDefault inputs.deltarune-grub-theme; # boot.kernelPackages = pkgs.linuxPackages_cachyos-lto; services.scx.enable = true; services.scx.scheduler = "scx_bpfland"; services.scx.extraArgs = [ "-m performance" ]; programs.steam = { enable = true; # package = pkgs.steam-millennium; remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers }; # services.ancs.enable = true; services.printing = { enable = true; drivers = with pkgs; [ gutenprint gutenprintBin splix hplip ]; webInterface = false; listenAddresses = [ "*:631" ]; allowFrom = [ "localhost" ]; browsing = false; defaultShared = false; openFirewall = false; }; networking.extraHosts = '' # dont worry, i still don't like the guy # but i need to community note roblox on how their moderation is still shit # at this point just hire the goober project to take them down for you ''; networking.hostName = "darkworld"; powerManagement.enable = true; services.avahi = { enable = true; nssmdns4 = true; openFirewall = true; publish = { enable = true; userServices = true; }; }; programs.hyprland = { enable = true; xwayland.enable = true; # package = (pkgs.callPackage ./packages/hyprland/package.nix {}); package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland; portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland; }; virtualisation.docker.enable = true; main-user.packages = with pkgs; [ # warp-terminal (prismlauncher.override { jdks = [ pkgs.jdk21 ]; }) # vesktop # legcord equibop code-cursor kdePackages.kdenlive darkly hyfetch kitty ]; qt.enable = true; qt.platformTheme = "qt5ct"; xdg.terminal-exec.enable = true; xdg.portal = { enable = true; xdgOpenUsePortal = true; extraPortals = [ pkgs.xdg-desktop-portal-gtk inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland ]; config.common.default = [ "hyprland" "gtk" ]; }; # environment.variables.XDG_SYSTEM_MONITOR = "${pkgs.htop}/bin/htop"; environment.variables.XDG_TERMINAL = "kitty"; environment.variables.XDG_SYSTEM_MONITOR = "htop"; environment.variables.GTK_USE_PORTAL = "1"; environment.sessionVariables.GTK_USE_PORTAL = 1; services.btrfs.autoScrub = { enable = true; interval = "monthly"; fileSystems = [ "/" ]; }; # CHANGE YOUR NAME IN HOME MANAGER! # BETTER YET, DON'T TOUCH THIS. AT ALL. main-user.userName = userName; main-user.realName = realName; services.fstrim.enable = true; systemd.services.fstrim.enable = false; systemd.services."NetworkManager-wait-online".enable = false; systemd.services.docker.wantedBy = lib.mkForce [ ]; programs.dconf.enable = true; services.gvfs.enable = true; services.flatpak.enable = true; # home-manager.services.mpris-proxy.enable = true; home-manager.backupFileExtension = "hmbackup"; catppuccin = { enable = true; flavor = "mocha"; accent = "blue"; }; home-manager.users.${userName} = { programs, config, pkgs, ... }: let system = pkgs.stdenv.hostPlatform.system; in { imports = [ inputs.catppuccin.homeModules.catppuccin inputs.zen-browser.homeModules.beta ]; gtk = { enable = true; gtk4.theme = config.gtk.theme; iconTheme = { name = "Arashi"; package = pkgs.callPackage ./packages/arashi-icons.nix {}; }; }; home.pointerCursor = { name = "RalseiCursors"; package = pkgs.callPackage ./packages/ralsei-cursors/default.nix {}; size = 24; gtk.enable = true; x11.enable = true; }; catppuccin = { enable = true; flavor = "mocha"; accent = "blue"; # we're already using arashi gtk.icon.enable = false; cursors.enable = false; kvantum.enable = false; qt5ct.enable = false; }; home.packages = with pkgs; [ libsForQt5.qt5ct qt6Packages.qt6ct darkly-qt5 darkly ]; qt = { enable = true; platformTheme.name = "qtct"; style.name = "Darkly"; qt5ctSettings = { Appearance = { color_scheme_path = "${pkgs.catppuccin-qt5ct}/share/qt5ct/colors/catppuccin-mocha-blue.conf"; custom_palette = true; icon_theme = "Arashi"; standard_dialogs = "default"; style = "Darkly"; }; }; qt6ctSettings = { Appearance = { color_scheme_path = "${pkgs.catppuccin-qt5ct}/share/qt6ct/colors/catppuccin-mocha-blue.conf"; custom_palette = true; icon_theme = "Arashi"; standard_dialogs = "default"; style = "Darkly"; }; }; }; xdg.mimeApps = { enable = true; defaultApplications = { "default-web-browser" = [ "zen-beta.desktop" ]; "text/html" = [ "zen-beta.desktop" ]; "x-scheme-handler/http" = [ "zen-beta.desktop" ]; "x-scheme-handler/https" = [ "zen-beta.desktop" ]; "inode/directory" = [ "org.kde.dolphin.desktop" ]; "image/png" = [ "org.kde.gwenview.desktop" ]; "image/jpeg" = [ "org.kde.gwenview.desktop" ]; "image/gif" = [ "org.kde.gwenview.desktop" ]; "image/webp" = [ "org.kde.gwenview.desktop" ]; "image/svg+xml" = [ "org.kde.gwenview.desktop" ]; "image/avif" = [ "org.kde.gwenview.desktop" ]; "video/mp4" = [ "mpv.desktop" ]; "video/webm" = [ "mpv.desktop" ]; "video/x-matroska" = [ "mpv.desktop" ]; "audio/flac" = [ "mpv.desktop" ]; "audio/mpeg" = [ "mpv.desktop" ]; "audio/ogg" = [ "mpv.desktop" ]; "audio/wav" = [ "mpv.desktop" ]; "application/pdf" = [ "org.kde.gwenview.desktop" ]; }; }; programs.zen-browser = { enable = true; nativeMessagingHosts = [pkgs.firefoxpwa]; policies = { DisableAppUpdate = true; DisableTelemetry = true; }; }; services.flameshot = { enable = true; settings = { General = { disabledTrayIcon = true; showDesktopNotification = false; showStartupLaunchMessage = false; savePath = "/home/kris/Pictures/Screenshots"; savePathFixed = true; useGrimAdapter = true; disabledGrimWarning = true; }; }; }; wayland.windowManager.hyprland = { enable = true; package = null; portalPackage = null; systemd.enable = true; plugins = []; extraConfig = builtins.readFile ../../config/hypr/hyprland.conf; }; home.file.".config/hypr/config" = { source = ../../config/hypr/config; recursive = true; }; home.file.".config/hypr/hyprlock.conf" = { source = ../../config/hypr/hyprlock.conf; }; home.file.".config/hypr/hyprpaper.conf" = { source = ../../config/hypr/hyprpaper.conf; }; home.file.".config/hypr/wallpaper.png" = { source = ../../config/hypr/wallpaper.png; }; home.file.".config/hypr/xdph.conf" = { source = ../../config/hypr/xdph.conf; }; home.file.".local/share/fonts/DotfilesFont.otf" = { source = ../../config/dotfile_deps/DotfilesFont.otf; }; programs.quickshell = { enable = true; package = inputs.quickshell.packages.${system}.default.withModules ( with pkgs.qt6; [ qtimageformats qtmultimedia qtsvg qt5compat ] ); configs = { default = ../../Shell; DeltaruneQuickshell = ../../Shell; }; }; services.mpris-proxy.enable = true; programs.chromium = { enable = true; extensions = [ { id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; } # uBlock Origin { id = "enamippconapkdmgfgjchkhakpfinmaj"; } # DeArrow { id = "clngdbkpkpeebahjckkjfobafhncgmne"; } # Sytlus { id = "hnmpcagpplmpfojmgmnngilcnanddlhb"; } # Windscribe { id = "hfjngafpndganmdggnapblamgbfjhnof"; } # RoSeal { id = "aflpfginfpjhanhkmdpohpggpolfopmb"; } # SkyLink { id = "agjnjboanicjcpenljmaaigopkgdnihi"; } # PreMiD { id = "ijcpiojgefnkmcadacmacogglhjdjphj"; } # Shinigami Eyes { id = "hbkpclpemjeibhioopcebchdmohaieln"; } # BTRoblox { id = "lnjaiaapbakfhlbjenjkhffcdpoompki"; } # Catppuccin gh file explorer icons { id = "ejcfepkfckglbgocfkanmcdngdijcgld"; } # ChatGPT { id = "jifpbeccnghkjeaalbbjmodiffmgedin"; } # CRX Viewer { id = "hplhmahilccgjccaanlagdidofgaanfe"; } # Gamefam Blocker { id = "adbacgifemdbhdkfppmeilbgppmhaobf"; } # RoPro { id = "cbghhgpcnddeihccjmnadmkaejncjndb"; } # Vencord { id = "jinjaccalgkegednnccohejagnlnfdag"; } # Violentmonkey { id = "lahhiofdgnbcgmemekkmjnpifojdaelb"; } # Vercel { id = "mnjggcdmjocbbbhaepdhchncahnbgone"; } # Sponsorblock { id = "pncfbmialoiaghdehhbnbhkkgmjanfhe"; } # uBlacklist ]; }; programs.git = { enable = true; signing.format = "openpgp"; settings.user = { name = realName; email = "kris@darkworld.download"; }; }; programs.obs-studio = { enable = true; package = (pkgs.obs-studio.override { cudaSupport = true; }); plugins = with pkgs.obs-studio-plugins; [ wlrobs obs-backgroundremoval obs-pipewire-audio-capture ]; }; home.stateVersion = "24.11"; }; }