{ 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; }; programs.virt-manager.enable = true; users.groups.libvirtd.members = [ userName ]; virtualisation.libvirtd.enable = true; # virtualisation.waydroid.enable = true; virtualisation.spiceUSBRedirection.enable = true; 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"; }; programs.zen-browser = { enable = true; nativeMessagingHosts = [pkgs.firefoxpwa]; policies = { DisableAppUpdate = true; DisableTelemetry = 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.".config/qt5ct/qt5ct.conf".text = '' [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 ''; home.file.".config/qt6ct/qt6ct.conf".text = '' [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 ''; 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; package = pkgs.brave; 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@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"; }; }