354 lines
9.0 KiB
Nix
354 lines
9.0 KiB
Nix
{ config, inputs, pkgs, lib, ... }:
|
|
|
|
{
|
|
|
|
imports = [
|
|
../../modules/nixos/nixpkgs.nix
|
|
../../modules/nixos/bootloader.nix
|
|
../../modules/nixos/hardware.nix
|
|
../../modules/nixos/nvidia.nix
|
|
../../modules/nixos/i18n.nix
|
|
../../modules/nixos/main-user.nix
|
|
../../modules/nixos/network.nix
|
|
../../modules/nixos/programs.nix
|
|
../../modules/home-manager/main.nix
|
|
./packages.nix
|
|
# ../../modules/home-manager/hyprpanel.nix
|
|
./other/activate.nix
|
|
# ./apps/ancs.nix
|
|
inputs.nvf.nixosModules.default
|
|
];
|
|
|
|
programs.nvf = {
|
|
enable = true;
|
|
defaultEditor = true;
|
|
# withLua = true;
|
|
|
|
settings.vim = {
|
|
viAlias = true;
|
|
vimAlias = true;
|
|
statusline.lualine.enable = true;
|
|
languages = {
|
|
enableLSP = true;
|
|
enableTreesitter = true;
|
|
|
|
nix.enable = true;
|
|
ts.enable = true;
|
|
# qml.enable = true;
|
|
};
|
|
};
|
|
};
|
|
|
|
programs.steam = {
|
|
enable = true;
|
|
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.flatpak.enable = true;
|
|
services.flatpak.remotes = [
|
|
{
|
|
name = "flathub";
|
|
location = "https://dl.flathub.org/repo/flathub.flatpakrepo";
|
|
}
|
|
];
|
|
services.flatpak.packages = [
|
|
{
|
|
appId = "com.modrinth.ModrinthApp";
|
|
origin = "flathub";
|
|
}
|
|
];
|
|
|
|
services.printing = {
|
|
enable = true;
|
|
drivers = with pkgs; [
|
|
gutenprint
|
|
gutenprintBin
|
|
splix
|
|
hplip
|
|
];
|
|
webInterface = true;
|
|
listenAddresses = [ "*:631" ];
|
|
allowFrom = [ "all" ];
|
|
browsing = true;
|
|
defaultShared = true;
|
|
openFirewall = true;
|
|
};
|
|
|
|
programs.virt-manager.enable = true;
|
|
# user.groups.libvirtd.members = [ "ocbwoy3" ];
|
|
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
|
|
'';
|
|
|
|
powerManagement.enable = true;
|
|
|
|
services.avahi = {
|
|
enable = true;
|
|
nssmdns4 = true;
|
|
openFirewall = true;
|
|
publish = {
|
|
enable = true;
|
|
userServices = true;
|
|
};
|
|
};
|
|
|
|
# Sadly, I don't know how to install flatpaks like this.
|
|
# services.flatpak.packages = [
|
|
# "com.usebottles.bottles"
|
|
# { flatpakref = "https://sober.vinegarhq.org/sober.flatpakref"; sha256 = "0"; }
|
|
# ];
|
|
|
|
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;
|
|
};
|
|
|
|
programs.zsh = {
|
|
enable = true;
|
|
autosuggestions.enable = true;
|
|
zsh-autoenv.enable = true;
|
|
syntaxHighlighting.enable = true;
|
|
ohMyZsh = {
|
|
enable = true;
|
|
plugins = [ "git" "direnv" ];
|
|
theme = "robbyrussell";
|
|
};
|
|
shellAliases = {
|
|
nixrebuild = "sudo nixos-rebuild switch --flake .#default --impure --cores 4 -L --upgrade";
|
|
neofetch = "fastfetch";
|
|
};
|
|
};
|
|
|
|
virtualisation.docker.enable = true;
|
|
|
|
main-user.packages = with pkgs; [
|
|
# warp-terminal
|
|
(prismlauncher.override {
|
|
jdks = [
|
|
pkgs.jdk21
|
|
];
|
|
})
|
|
# vesktop
|
|
# legcord
|
|
equibop
|
|
libsForQt5.kdenlive
|
|
libsForQt5.qt5ct
|
|
catppuccin-qt5ct
|
|
lightly-qt
|
|
kdePackages.qt6ct
|
|
lightly-qt
|
|
hyfetch
|
|
kitty
|
|
inputs.ghostty.packages.${pkgs.stdenv.hostPlatform.system}.ghostty
|
|
];
|
|
|
|
qt.enable = true;
|
|
qt.platformTheme = "qt5ct";
|
|
|
|
xdg.terminal-exec.enable = true;
|
|
xdg.portal = {
|
|
enable = true;
|
|
extraPortals = [
|
|
pkgs.xdg-desktop-portal-gnome
|
|
pkgs.xdg-desktop-portal-gtk
|
|
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland
|
|
];
|
|
};
|
|
|
|
# environment.variables.XDG_TERMINAL = "${inputs.ghostty.packages.${pkgs.stdenv.hostPlatform.system}.ghostty}/bin/ghostty";
|
|
# environment.variables.XDG_SYSTEM_MONITOR = "${pkgs.htop}/bin/htop";
|
|
|
|
environment.variables.XDG_TERMINAL = "ghostty";
|
|
environment.variables.XDG_SYSTEM_MONITOR = "htop";
|
|
|
|
environment.variables.GTK_USE_PORTAL = "1";
|
|
environment.sessionVariables.GTK_USE_PORTAL = 1;
|
|
|
|
fileSystems = {
|
|
"/".options = [ "compress=zstd" ];
|
|
"/home".options = [ "compress=zstd" ];
|
|
"/nix".options = [ "compress=zstd" "noatime" ];
|
|
};
|
|
|
|
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 = "ocbwoy3";
|
|
main-user.realName = "OCbwoy3";
|
|
|
|
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;
|
|
|
|
# home-manager.services.mpris-proxy.enable = true;
|
|
|
|
home-manager.backupFileExtension = "hmbackup";
|
|
|
|
catppuccin = {
|
|
enable = true;
|
|
flavor = "mocha";
|
|
accent = "blue";
|
|
};
|
|
|
|
home-manager.users.ocbwoy3 = { programs, config, pkgs, ... }: {
|
|
|
|
imports = [
|
|
inputs.catppuccin.homeModules.catppuccin
|
|
inputs.zen-browser.homeModules.beta
|
|
];
|
|
|
|
catppuccin = {
|
|
enable = true;
|
|
flavor = "mocha";
|
|
accent = "blue";
|
|
gtk.enable = true;
|
|
};
|
|
|
|
programs.zen-browser = {
|
|
enable = true;
|
|
nativeMessagingHosts = [pkgs.firefoxpwa];
|
|
policies = {
|
|
DisableAppUpdate = true;
|
|
DisableTelemetry = true;
|
|
};
|
|
};
|
|
|
|
home.file.".config/fastfetch" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/fastfetch";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".config/dunst" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/dunst";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".config/gtk-3.0" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/gtk-3.0";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".config/hypr" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/hypr";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".config/xdg-desktop-portal" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/xdg-desktop-portal";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".local/share/themes" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/themes";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".themes" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/themes";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".local/share/fonts/DotfilesFont.otf" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/dotfile_deps/DotfilesFont.otf";
|
|
};
|
|
|
|
home.file.".config/ghostty" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/ghostty";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".config/wlogout" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/wlogout";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".config/qt5ct" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/qt5ct";
|
|
recursive = true;
|
|
};
|
|
|
|
home.file.".config/wofi" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "/home/ocbwoy3/config/config/wofi";
|
|
recursive = true;
|
|
};
|
|
|
|
|
|
# xdg.configHome = "/home/ocbwoy3/config/config";
|
|
|
|
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;
|
|
userName = "OCbwoy3";
|
|
userEmail = "ocbwoy3@ocbwoy3.dev";
|
|
};
|
|
|
|
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";
|
|
|
|
};
|
|
|
|
}
|