Compare commits

..

No commits in common. "ac9b508f71eafaf7760379064ae4a011f2035b1a" and "b5543bc9eafb862f0d0249f4f5b23d269e684e75" have entirely different histories.

7 changed files with 585 additions and 911 deletions

View file

@ -11,14 +11,8 @@
# env = AQ_DRM_DEVICES,/dev/dri/card1 # env = AQ_DRM_DEVICES,/dev/dri/card1
#env = AQ_NO_MODIFIERS,1 #env = AQ_NO_MODIFIERS,1
#monitor=,preferred,auto,1 monitor=,preferred,auto,1
monitor=eDP-1,1920x1200@60.0,3564x0,1.0,cm,hdr,sdrbrightness,1.4,sdrsaturation,0.8,bitdepth,10
#monitor=eDP-1,1920x1200@60.0,3564x0,1.0,cm,hdr,sdrbrightness,1.4,sdrsaturation,0.8,bitdepth,10
# Generated by nwg-displays on 2026-02-17 at 11:54:19. Do not edit manually.
#monitor=eDP-1,1920x1200@60.0,3564x0,1.0
#monitor=HDMI-A-1,2560x1440@144.0,1004x0,1.0
# env = LIBVA_DRIVER_NAME,nvidia # env = LIBVA_DRIVER_NAME,nvidia
# env = XDG_SESSION_TYPE,wayland # env = XDG_SESSION_TYPE,wayland
@ -35,10 +29,7 @@ cursor {
source = ~/.config/hypr/monitors.conf source = ~/.config/hypr/monitors.conf
source = ~/.config/hypr/workspaces.conf source = ~/.config/hypr/workspaces.conf
#source = ~/.config/hypr/hyprland.colors.conf source = ~/.config/hypr/hyprland.colors.conf
monitor=desc:ASUSTek COMPUTER INC VG27AQL5A T7LMQS022027,2560x1440@144.0,0x0,1.0,bitdepth,10
monitor=eDP-1,1920x1200@60.0,2560x0,1.0,bitdepth,10,cm,srgb
debug:disable_logs = false debug:disable_logs = false
@ -87,7 +78,7 @@ exec-once = swww-daemon
# "$(cat ~/.local/state/quickshell/user/generated/wallpaper/path.txt)" # "$(cat ~/.local/state/quickshell/user/generated/wallpaper/path.txt)"
exec-once = sleep 0.5; swww img ~/.config/hypr/wallpapers/sunflowers.jpg --transition-step 100 --transition-fps 120 --transition-type grow --transition-angle 30 --transition-duration 1 exec-once = sleep 0.5; swww img ~/.config/hypr/wallpapers/sunflowers.jpg --transition-step 100 --transition-fps 120 --transition-type grow --transition-angle 30 --transition-duration 1
# exec-once=waybar # exec-once=waybar
# exec-once=quickshell -c ii exec-once=quickshell -c ii
exec-once=blueman-applet exec-once=blueman-applet
# exec-once=dunst # exec-once=dunst
exec-once=udev-block-notify exec-once=udev-block-notify
@ -102,12 +93,10 @@ exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store exec-once = wl-paste --type image --watch cliphist store
exec-once = fcitx5 exec-once = fcitx5
exec-once = easyeffects --gapplication-service exec-once = easyeffects --gapplication-service
exec-once = dms run
#$swaylock = swaylock --screenshots --clock --indicator --effect-blur 6x6 --fade-in 0.2 --ring-color 4e9dc2 --key-hl-color 71b0ce #$swaylock = swaylock --screenshots --clock --indicator --effect-blur 6x6 --fade-in 0.2 --ring-color 4e9dc2 --key-hl-color 71b0ce
$swaylock = hyprlock $swaylock = hyprlock
# exec-once=hypridle exec-once=hypridle
# exec-once=swayidle -w timeout 300 '$swaylock --grace 2' before-sleep '$swaylock' # exec-once=swayidle -w timeout 300 '$swaylock --grace 2' before-sleep '$swaylock'
# Needs repackaging... # Needs repackaging...
@ -296,15 +285,6 @@ layerrule = blur on, match:namespace quickshell:sidebarRight
layerrule = blur_popups on, match:namespace quickshell:sidebarRight layerrule = blur_popups on, match:namespace quickshell:sidebarRight
layerrule = ignore_alpha .2, match:namespace quickshell:sidebarRight layerrule = ignore_alpha .2, match:namespace quickshell:sidebarRight
layerrule {
name="blur dms"
match:namespace = dms:(color-picker|clipboard|spotlight|settings)
blur = on
ignore_alpha = 0
}
# layerrule = noanim, match:namespace ^(dms)$
blurls=gtk-layer-shell blurls=gtk-layer-shell
blurls=lockscreen blurls=lockscreen
blurls = rofi blurls = rofi
@ -312,20 +292,17 @@ blurls = rofi
$dir = ~/.config $dir = ~/.config
#! quickshell #! quickshell
bindr = SUPER+ALT, R, exec, pkill rofi || $dir/rofi/bin/launcher bindr = SUPER+ALT, R, exec, pkill rofi || $dir/rofi/bin/launcher
# bind = SUPER, r, global, quickshell:overviewSearchToggle bind = SUPER, r, global, quickshell:overviewSearchToggle
# bind = SUPER, r, exec, dms ipc call spotlight toggle
bind = SUPER+ALT, P, exec, pkill rofi || $dir/rofi/bin/powermenu bind = SUPER+ALT, P, exec, pkill rofi || $dir/rofi/bin/powermenu
# bind = SUPER, p, exec, dms ipc call powermenu open bind = SUPER, p, global, quickshell:sessionToggle
# bind = SUPER, tab, exec, dms ipc call hypr toggleOverview bind = SUPER, m, global, quickshell:mediaControlsToggle
# bind = SUPER, p, global, quickshell:sessionToggle bind = SUPER, grave, global, quickshell:sidebarLeftToggle
# bind = SUPER, m, global, quickshell:mediaControlsToggle bind = SUPER, b, global, quickshell:sidebarRightToggle
# bind = SUPER, grave, global, quickshell:sidebarLeftToggle bind = SUPER, slash, global, quickshell:cheatsheetToggle
# bind = SUPER, b, global, quickshell:sidebarRightToggle bind = SUPER, tab, global, quickshell:overviewToggle
# bind = SUPER, slash, global, quickshell:cheatsheetToggle bindrt = SUPER, SUPER_L, global, quickshell:workspaceNumber
# bind = SUPER, tab, global, quickshell:overviewToggle bindd = Super, h, Clipboard history >> clipboard, global, quickshell:overviewClipboardToggle # Clipboard history >> clipboard
# bindrt = SUPER, SUPER_L, global, quickshell:workspaceNumber bindd = Super, Period, Emoji >> clipboard, global, quickshell:overviewEmojiToggle # Emoji >> clipboard
# bindd = Super, h, Clipboard history >> clipboard, global, quickshell:overviewClipboardToggle # Clipboard history >> clipboard
# bindd = Super, Period, Emoji >> clipboard, global, quickshell:overviewEmojiToggle # Emoji >> clipboard
$mainMod = SUPER $mainMod = SUPER
@ -412,7 +389,7 @@ bind = ,Print,exec,hyprshot --clipboard-only --mode active --mode output
# bind = SUPER+SHIFT,S,exec,spectacle --copy-image --region --background # no gui # bind = SUPER+SHIFT,S,exec,spectacle --copy-image --region --background # no gui
# bind = SUPER+SHIFT,S,exec,grim -g "$(slurp)" - | wl-copy # bind = SUPER+SHIFT,S,exec,grim -g "$(slurp)" - | wl-copy
bind = SUPER+SHIFT,S,exec,hyprshot --freeze --clipboard-only --mode region bind = SUPER+SHIFT,S,exec,hyprshot --freeze --clipboard-only --mode region
# bind = SUPER, L,exec,$swaylock bind = SUPER, L,exec,$swaylock
#! move windows to workspaces #! move windows to workspaces
bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 1, movetoworkspace, 1
@ -480,8 +457,3 @@ decoration {
#windowrule = monitor 1,title:flameshot #windowrule = monitor 1,title:flameshot
#windowrule = move 0 0,title:flameshot #windowrule = move 0 0,title:flameshot
#windowrule = noanim,title:flameshot #windowrule = noanim,title:flameshot
#enable once dms fixes config; uses old hyprland syntax
source = ~/.config/hypr/dms/colors.conf
source = ~/.config/hypr/dms/binds.conf
source = ~/.config/hypr/dms/layout.conf

View file

@ -1,42 +1,35 @@
# Edit this configuration file to define what should be installed on # Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).
{ { config, pkgs, /*hyprland,*/ options, /*hyprland-plugins, */nixpkgs-unstable, lib, nixos-hardware, zen-browser/*, kwin-effects-forceblur*/, ... }:
config,
pkgs,
options,
nixpkgs-unstable,
lib,
dms,
...
}:
let let
unstable-pkgs = nixpkgs-unstable.legacyPackages.x86_64-linux; # import nixpkgs-unstable.nixosModules.readOnlyPkgs {}; unstable-pkgs = nixpkgs-unstable.legacyPackages.x86_64-linux; #import nixpkgs-unstable.nixosModules.readOnlyPkgs {};
# unstable-pkgs = hyprland.inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system}; # unstable-pkgs = hyprland.inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system};
in in
{ {
imports = [ imports =
# nixos-hardware.nixosModules.lenovo-legion-16ach6h-hybrid # this is borked in latest update for some reason, edid doesn't build [
# nixos-hardware.nixosModules.common-cpu-amd # nixos-hardware.nixosModules.lenovo-legion-16ach6h-hybrid # this is borked in latest update for some reason, edid doesn't build
# nixos-hardware.nixosModules.common-cpu-amd-pstate # nixos-hardware.nixosModules.common-cpu-amd
# nixos-hardware.nixosModules.common-cpu-amd-zenpower # nixos-hardware.nixosModules.common-cpu-amd-pstate
# nixos-hardware.nixosModules.common-gpu-amd # nixos-hardware.nixosModules.common-cpu-amd-zenpower
# nixos-hardware.nixosModules.common-gpu-nvidia # nixos-hardware.nixosModules.common-gpu-amd
# nixos-hardware.nixosModules.common-pc-laptop # nixos-hardware.nixosModules.common-gpu-nvidia
# nixos-hardware.nixosModules.common-pc-laptop-ssd # nixos-hardware.nixosModules.common-pc-laptop
./hardware-configuration.nix # nixos-hardware.nixosModules.common-pc-laptop-ssd
dms.nixosModules.greeter ./hardware-configuration.nix
# /etc/nixos/cachix.nix # /etc/nixos/cachix.nix
]; ];
# nyx.low-power.enable = true; # nyx.low-power.enable = true;
hardware.nvidia.dynamicBoost.enable = lib.mkForce false; hardware.nvidia.dynamicBoost.enable = lib.mkForce false;
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
"olm-3.2.16" "olm-3.2.16"
"cinny-unwrapped-4.2.3" "cinny-unwrapped-4.2.3"
"cinny-4.2.3" "cinny-4.2.3"
"libsoup-2.74.3" "libsoup-2.74.3"
# "qbittorrent-4.6.4" # "qbittorrent-4.6.4"
# "cinny-3.2.0" # "cinny-3.2.0"
"dotnet-sdk-wrapped-7.0.410" "dotnet-sdk-wrapped-7.0.410"
@ -47,6 +40,7 @@ in
"electron-33.4.11" "electron-33.4.11"
]; ];
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
boot.supportedFilesystems = [ "ntfs" ]; boot.supportedFilesystems = [ "ntfs" ];
@ -82,13 +76,10 @@ in
# networking.proxy.default = "http://user:password@proxy:port/"; # networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
# networking.nameservers = ["1.1.1.1"]; # networking.nameservers = ["1.1.1.1"];
services.dnsmasq.settings.server = [ services.dnsmasq.settings.server = [ "100.100.100.100" "127.0.0.1#5053" ];
"100.100.100.100"
"127.0.0.1#5053"
];
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
networking.networkmanager.plugins = with pkgs; [ networkmanager-openconnect ]; networking.networkmanager.plugins = with pkgs; [networkmanager-openconnect];
networking.networkmanager.dns = "none"; networking.networkmanager.dns = "none";
services.dnscrypt-proxy = { services.dnscrypt-proxy = {
@ -104,9 +95,9 @@ in
cache_file = "/var/lib/dnscrypt-proxy/public-resolvers.md"; cache_file = "/var/lib/dnscrypt-proxy/public-resolvers.md";
}; };
listen_addresses = [ "127.0.0.1:5053" ]; listen_addresses = ["127.0.0.1:5053"];
ipv6_servers = false; ipv6_servers = false;
block_ipv6 = !(false); block_ipv6 = ! (false);
require_dnssec = true; require_dnssec = true;
require_nolog = false; require_nolog = false;
@ -134,9 +125,9 @@ in
services.dnsmasq.enable = true; services.dnsmasq.enable = true;
services.displayManager.sddm.enable = true; services.displayManager.sddm.enable = true;
services.displayManager.sddm.wayland.enable = true; services.displayManager.sddm.wayland.enable = true;
services.desktopManager.plasma6 = { services.desktopManager.plasma6 = {
enable = true; enable = true;
}; };
# services.desktopManager.gnome.enable = true; # services.desktopManager.gnome.enable = true;
services.xserver = { services.xserver = {
enable = false; enable = false;
@ -157,14 +148,12 @@ in
alsa.support32Bit = true; alsa.support32Bit = true;
pulse.enable = true; pulse.enable = true;
}; };
security.pam.loginLimits = [ security.pam.loginLimits = [{
{ domain = "*";
domain = "*"; type = "soft";
type = "soft"; item = "nofile";
item = "nofile"; value = "64000";
value = "64000"; }];
}
];
services.geoclue2.enable = true; services.geoclue2.enable = true;
services.localtimed.enable = true; services.localtimed.enable = true;
services.lorri.enable = true; services.lorri.enable = true;
@ -182,32 +171,14 @@ in
users.users.dan = { users.users.dan = {
isNormalUser = true; isNormalUser = true;
description = "Dan"; description = "John";
extraGroups = [ extraGroups = [ "networkmanager" "wheel" "docker" "fuse" "video" "wireshark" "gamemode" "scanner" "lp" "kvm" "adbusers" "dialout"];
"i2c"
"networkmanager"
"wheel"
"docker"
"fuse"
"video"
"wireshark"
"gamemode"
"scanner"
"lp"
"kvm"
"adbusers"
"dialout"
];
shell = pkgs.fish; shell = pkgs.fish;
packages = with pkgs; [ packages = with pkgs; [
kdePackages.kate kdePackages.kate
]; ];
}; };
nix.settings.trusted-users = [ nix.settings.trusted-users = [ "root" "@wheel" "dan" ];
"root"
"@wheel"
"dan"
];
# Other defaults are set in home.nix # Other defaults are set in home.nix
# environment.sessionVariables.DEFAULT_BROWSER = "firefox"; # environment.sessionVariables.DEFAULT_BROWSER = "firefox";
@ -233,7 +204,7 @@ in
# Comment out below for the first time to avoid cache miss, if using flake # Comment out below for the first time to avoid cache miss, if using flake
programs.hyprland = { programs.hyprland = {
enable = true; enable = true;
# package = hyprland.packages.${pkgs.system}.hyprland; # package = hyprland.packages.${pkgs.system}.hyprland;
# portalPackage = hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland.override # portalPackage = hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland.override
# { # {
# inherit (pkgs) mesa; # inherit (pkgs) mesa;
@ -242,16 +213,9 @@ in
# package = unstable-pkgs.hyprland; # package = unstable-pkgs.hyprland;
}; };
# End comment out # End comment out
#
programs.dank-material-shell.greeter = {
enable = true;
compositor.name = "hyprland"; # Or "hyprland" or "sway"
configHome = "/home/dan";
};
#xdg.configFile."menus/applications.menu".text = builtins.readFile ./applications.menu; #xdg.configFile."menus/applications.menu".text = builtins.readFile ./applications.menu;
environment.etc."/xdg/menus/plasma-applications.menu".text = environment.etc."/xdg/menus/plasma-applications.menu".text = builtins.readFile "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu";
builtins.readFile "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu";
# programs.hyprland.enable = true; # programs.hyprland.enable = true;
programs.hyprlock.enable = true; programs.hyprlock.enable = true;
@ -261,17 +225,14 @@ in
# Fix dynamic binaries from outside of nix # Fix dynamic binaries from outside of nix
programs.nix-ld = { programs.nix-ld = {
enable = true; enable = true;
libraries = libraries = options.programs.nix-ld.libraries.default ++ (with pkgs; [
options.programs.nix-ld.libraries.default libdrm
++ (with pkgs; [ mesa
libdrm libxkbcommon
mesa openssl
libxkbcommon libGL libva
openssl libelf
libGL ]);
libva
libelf
]);
}; };
services.openssh.enable = true; services.openssh.enable = true;
services.tailscale = { services.tailscale = {
@ -284,7 +245,7 @@ in
virtualisation.docker = { virtualisation.docker = {
enable = true; enable = true;
enableOnBoot = false; enableOnBoot = false;
# enableNvidia = true; # enableNvidia = true;
}; };
# hardware.nvidia-container-toolkit.enable = true; # hardware.nvidia-container-toolkit.enable = true;
services.avahi.enable = true; services.avahi.enable = true;
@ -302,26 +263,26 @@ in
# Visuals # Visuals
plymouth = { plymouth = {
enable = false; enable = false;
theme = "deus_ex"; # motion is also cool theme = "deus_ex"; # motion is also cool
themePackages = with pkgs; [ themePackages = with pkgs; [
(adi1090x-plymouth-themes.override { (adi1090x-plymouth-themes.override {
selected_themes = [ "deus_ex" ]; selected_themes = [ "deus_ex" ];
}) })
]; ];
}; };
kernelParams = [ kernelParams = [
# attempt to fix nvidia perf # attempt to fix nvidia perf
#"nvidia_drm.fbdev=1" "nvidia_drm.modeset=1" "module_blacklist=i915" #"nvidia_drm.fbdev=1" "nvidia_drm.modeset=1" "module_blacklist=i915"
"delayacct" "delayacct"
"initcall_blacklist=sysfb_init" "initcall_blacklist=sysfb_init"
#"quiet" #"quiet"
#"splash" #"splash"
"boot.shell_on_fail" "boot.shell_on_fail"
"loglevel=3" "loglevel=3"
"rd.systemd.show_status=false" "rd.systemd.show_status=false"
"rd.udev.log_level=3" "rd.udev.log_level=3"
"udev.log_priority=3" "udev.log_priority=3"
]; ];
# Removing support for unneeded stuff # Removing support for unneeded stuff
@ -354,12 +315,13 @@ in
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
git git
# nvtopPackages.full # nvtopPackages.full
btop btop
lshw lshw
hyprpolkitagent hyprpolkitagent
# lenovo-legion # lenovo-legion
# required for quickshell config; needs to be here for them to be included in import/plugin path # required for quickshell config; needs to be here for them to be included in import/plugin path
kdePackages.qt5compat kdePackages.qt5compat
@ -376,52 +338,47 @@ in
libsForQt5.kirigami2 libsForQt5.kirigami2
kdePackages.syntax-highlighting kdePackages.syntax-highlighting
(python313.withPackages ( (python313.withPackages(ps: with ps; [
ps: with ps; [ build
build pillow
pillow cffi
cffi libsass
libsass material-color-utilities
material-color-utilities materialyoucolor
materialyoucolor numpy
numpy packaging
packaging pillow
pillow psutil
psutil pycparser
pycparser pyproject-hooks
pyproject-hooks pywayland
pywayland setproctitle
setproctitle setuptools
setuptools setuptools-scm
setuptools-scm wheel
wheel
pwntools pwntools
] ]))
))
]; ];
environment.variables = environment.variables = let
let qtVersions = with pkgs; [
qtVersions = with pkgs; [ qt5
qt5 qt6
qt6 ];
]; in
in {
{ QT_PLUGIN_PATH = map (qt: "/${qt.qtbase.qtPluginPrefix}") qtVersions;
QT_PLUGIN_PATH = map (qt: "/${qt.qtbase.qtPluginPrefix}") qtVersions; QML2_IMPORT_PATH = map (qt: "/${qt.qtbase.qtQmlPrefix}") qtVersions ++ (with unstable-pkgs; [
QML2_IMPORT_PATH =
map (qt: "/${qt.qtbase.qtQmlPrefix}") qtVersions
++ (with unstable-pkgs; [
"${quickshell}/lib/qt-6/qml/" "${quickshell}/lib/qt-6/qml/"
]); ]);
}; };
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
nixpkgs.config.cudaSupport = true; nixpkgs.config.cudaSupport = true;
# The nvidia fun part # The nvidia fun part
hardware.graphics = { hardware.graphics = {
enable = true; enable = true;
# package = unstable-pkgs.mesa.drivers; # package = unstable-pkgs.mesa.drivers;
# Steam support # Steam support
@ -430,28 +387,28 @@ in
extraPackages = with pkgs; [ extraPackages = with pkgs; [
# Required for modern Intel GPUs (Xe iGPU and ARC) # Required for modern Intel GPUs (Xe iGPU and ARC)
intel-media-driver # VA-API (iHD) userspace intel-media-driver # VA-API (iHD) userspace
vpl-gpu-rt # oneVPL (QSV) runtime vpl-gpu-rt # oneVPL (QSV) runtime
# Optional (compute / tooling): # Optional (compute / tooling):
intel-compute-runtime # OpenCL (NEO) + Level Zero for Arc/Xe intel-compute-runtime # OpenCL (NEO) + Level Zero for Arc/Xe
# libvdpau-va-gl # libvdpau-va-gl
# nvidia-vaapi-driver # nvidia-vaapi-driver
]; ];
}; };
environment.sessionVariables = { environment.sessionVariables = {
LIBVA_DRIVER_NAME = "iHD"; LIBVA_DRIVER_NAME = "iHD";
}; };
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
#boot.kernelModules = ["amdgpu" "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" "lenovo-legion-module"]; #boot.kernelModules = ["amdgpu" "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" "lenovo-legion-module"];
#hardware.nvidia = { #hardware.nvidia = {
# open = false; # open = false;
# modesetting.enable = true; # modesetting.enable = true;
# powerManagement.enable = true; # powerManagement.enable = true;
# nvidiaSettings = true; # nvidiaSettings = true;
# prime = { # prime = {
# hardware specific, beware! # hardware specific, beware!
# amdgpuBusId = lib.mkForce "PCI:06:00:0"; # amdgpuBusId = lib.mkForce "PCI:06:00:0";
# nvidiaBusId = lib.mkForce "PCI:01:00:0"; # nvidiaBusId = lib.mkForce "PCI:01:00:0";
# }; # };
@ -460,14 +417,12 @@ in
services.cpupower-gui.enable = true; services.cpupower-gui.enable = true;
services.upower.enable = true; services.upower.enable = true;
services.power-profiles-daemon.enable = false; services.power-profiles-daemon.enable = false;
# services.tlp = { services.tlp = {
# enable = true; enable = true;
# USB_DENYLIST = "04d9:a0b8"; # USB_DENYLIST = "04d9:a0b8";
# }; };
powerManagement.enable = true; # powerManagement.powertop.enable = true;
powerManagement.powertop.enable = true; # powerManagement.cpuFreqGovernor = "powersave";
powerManagement.cpuFreqGovernor = "schedutil";
services.thermald.enable = true;
security.polkit.enable = true; security.polkit.enable = true;
@ -492,8 +447,7 @@ in
5353 # Google cast discovery 5353 # Google cast discovery
42000 # warpinator 42000 # warpinator
42001 # warpinator 42001 # warpinator
67 67 68 # dhcp
68 # dhcp
1716 # kdeconnect 1716 # kdeconnect
]; ];
# Or disable the firewall altogether. # Or disable the firewall altogether.
@ -507,6 +461,7 @@ in
services.lldpd.enable = true; services.lldpd.enable = true;
systemd.services.syncthing.environment.STNODEFAULTFOLDER = "true"; systemd.services.syncthing.environment.STNODEFAULTFOLDER = "true";
# This value determines the NixOS release from which the default # This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions # settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave # on your system were taken. Its perfectly fine and recommended to leave
@ -515,11 +470,9 @@ in
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "25.11"; # Did you read the comment? system.stateVersion = "25.11"; # Did you read the comment?
nix.settings.experimental-features = [ nix.settings.experimental-features = [ "nix-command" "flakes" ];
"nix-command"
"flakes"
];
# /etc/hosts :) # /etc/hosts :)
networking.extraHosts = ""; networking.extraHosts = ''
'';
} }

View file

@ -1,3 +1,4 @@
echo "Copying configurations" echo "Copying configurations"
cp .config/* ~/.config/ -r cp .config/* ~/.config/ -r
echo fixing quickshell copy echo fixing quickshell copy

View file

@ -78,26 +78,6 @@
"type": "github" "type": "github"
} }
}, },
"danksearch": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1771177088,
"narHash": "sha256-n6e4e0iHNwtdGOlkJlDR9lbFhYalLMuqeQ3jDfp1CaA=",
"owner": "AvengeMedia",
"repo": "danksearch",
"rev": "3b3b79514acf349c166ae53db2225470a28be9e6",
"type": "github"
},
"original": {
"owner": "AvengeMedia",
"repo": "danksearch",
"type": "github"
}
},
"determinate": { "determinate": {
"inputs": { "inputs": {
"determinate-nixd-aarch64-darwin": "determinate-nixd-aarch64-darwin", "determinate-nixd-aarch64-darwin": "determinate-nixd-aarch64-darwin",
@ -155,28 +135,6 @@
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.16.0/x86_64-linux" "url": "https://install.determinate.systems/determinate-nixd/tag/v3.16.0/x86_64-linux"
} }
}, },
"dms": {
"inputs": {
"nixpkgs": [
"nixpkgs"
],
"quickshell": "quickshell"
},
"locked": {
"lastModified": 1771347696,
"narHash": "sha256-O9NIJqfuSjwY//7OyFH3FqxRHe5M0vmmsXcryOi/bAE=",
"owner": "AvengeMedia",
"repo": "DankMaterialShell",
"rev": "dd4c41a6b2d90f3238f543d1cc54f5f062d685a6",
"type": "github"
},
"original": {
"owner": "AvengeMedia",
"ref": "stable",
"repo": "DankMaterialShell",
"type": "github"
}
},
"dolphin-overlay": { "dolphin-overlay": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_5"
@ -369,11 +327,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1771325388, "lastModified": 1770919951,
"narHash": "sha256-rSSr7h/qbRwxEtcIUe3UlSvbQxPJ4eYI9J84ewGz60o=", "narHash": "sha256-f8e4IoLZY0xh/eFt99nKizyQxUKr0atmc21lGLkp9io=",
"owner": "schembriaiden", "owner": "schembriaiden",
"repo": "helium-browser-nix-flake", "repo": "helium-browser-nix-flake",
"rev": "99d0cecff6778a71be1f2e325e0e645fd749a397", "rev": "9a6ce68bcf28366de6240ed9e37786d476c203fe",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -800,64 +758,6 @@
"type": "github" "type": "github"
} }
}, },
"niri": {
"inputs": {
"niri-stable": "niri-stable",
"niri-unstable": "niri-unstable",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-stable": "nixpkgs-stable",
"xwayland-satellite-stable": "xwayland-satellite-stable",
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
"lastModified": 1771308899,
"narHash": "sha256-kb/4oSHB261GOLhVGgrzTOqo/ImeCi/WS25q2ujtHGc=",
"owner": "sodiboo",
"repo": "niri-flake",
"rev": "f3e98ba073bd7e2717a07d622f9b737c461a97b9",
"type": "github"
},
"original": {
"owner": "sodiboo",
"repo": "niri-flake",
"type": "github"
}
},
"niri-stable": {
"flake": false,
"locked": {
"lastModified": 1756556321,
"narHash": "sha256-RLD89dfjN0RVO86C/Mot0T7aduCygPGaYbog566F0Qo=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "01be0e65f4eb91a9cd624ac0b76aaeab765c7294",
"type": "github"
},
"original": {
"owner": "YaLTeR",
"ref": "v25.08",
"repo": "niri",
"type": "github"
}
},
"niri-unstable": {
"flake": false,
"locked": {
"lastModified": 1771305475,
"narHash": "sha256-lqweVTwHhYc+9T33cysp38gVwxaibGJHriOPZXWyhCY=",
"owner": "YaLTeR",
"repo": "niri",
"rev": "a2a52911757cb3b497db9407592f9b4c439571ea",
"type": "github"
},
"original": {
"owner": "YaLTeR",
"repo": "niri",
"type": "github"
}
},
"nix": { "nix": {
"inputs": { "inputs": {
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
@ -885,11 +785,11 @@
"nixpkgs": "nixpkgs_7" "nixpkgs": "nixpkgs_7"
}, },
"locked": { "locked": {
"lastModified": 1771295873, "lastModified": 1771123156,
"narHash": "sha256-BbzfAGRrEgvSn5p1k8G3FtBNte50JQ+YiBmy/zC/3NE=", "narHash": "sha256-Px1IFFTw3zdP8RNram2g41EvUTjIZRDLCgZyXgpBty0=",
"owner": "fufexan", "owner": "fufexan",
"repo": "nix-gaming", "repo": "nix-gaming",
"rev": "d39046b43da919faf235170f9cb321712468f907", "rev": "0c4bf3ac4eaf5b693e5d7ae75f3caba8fcf15d8f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1017,22 +917,6 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-stable": {
"locked": {
"lastModified": 1771208521,
"narHash": "sha256-X01Q3DgSpjeBpapoGA4rzKOn25qdKxbPnxHeMLNoHTU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fa56d7d6de78f5a7f997b0ea2bc6efd5868ad9e8",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-25.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1771008912, "lastModified": 1771008912,
@ -1195,40 +1079,15 @@
"type": "github" "type": "github"
} }
}, },
"quickshell": {
"inputs": {
"nixpkgs": [
"dms",
"nixpkgs"
]
},
"locked": {
"lastModified": 1766725085,
"narHash": "sha256-O2aMFdDUYJazFrlwL7aSIHbUSEm3ADVZjmf41uBJfHs=",
"ref": "refs/heads/master",
"rev": "41828c4180fb921df7992a5405f5ff05d2ac2fff",
"revCount": 715,
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell"
},
"original": {
"rev": "41828c4180fb921df7992a5405f5ff05d2ac2fff",
"type": "git",
"url": "https://git.outfoxxed.me/quickshell/quickshell"
}
},
"root": { "root": {
"inputs": { "inputs": {
"colmena": "colmena", "colmena": "colmena",
"copyparty": "copyparty", "copyparty": "copyparty",
"danksearch": "danksearch",
"determinate": "determinate", "determinate": "determinate",
"dms": "dms",
"dolphin-overlay": "dolphin-overlay", "dolphin-overlay": "dolphin-overlay",
"helium": "helium", "helium": "helium",
"home-manager": "home-manager", "home-manager": "home-manager",
"hyprland-plugins": "hyprland-plugins", "hyprland-plugins": "hyprland-plugins",
"niri": "niri",
"nix-gaming": "nix-gaming", "nix-gaming": "nix-gaming",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
@ -1348,50 +1207,17 @@
"type": "github" "type": "github"
} }
}, },
"xwayland-satellite-stable": {
"flake": false,
"locked": {
"lastModified": 1755491097,
"narHash": "sha256-m+9tUfsmBeF2Gn4HWa6vSITZ4Gz1eA1F5Kh62B0N4oE=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "388d291e82ffbc73be18169d39470f340707edaa",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"ref": "v0.7",
"repo": "xwayland-satellite",
"type": "github"
}
},
"xwayland-satellite-unstable": {
"flake": false,
"locked": {
"lastModified": 1771195969,
"narHash": "sha256-BUE41HjLIGPjq3U8VXPjf8asH8GaMI7FYdgrIHKFMXA=",
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"rev": "536bd32efc935bf876d6de385ec18a1b715c9358",
"type": "github"
},
"original": {
"owner": "Supreeeme",
"repo": "xwayland-satellite",
"type": "github"
}
},
"zen-browser": { "zen-browser": {
"inputs": { "inputs": {
"home-manager": "home-manager_2", "home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_9" "nixpkgs": "nixpkgs_9"
}, },
"locked": { "locked": {
"lastModified": 1771303996, "lastModified": 1771269662,
"narHash": "sha256-cwf75uTx8cGJCP+nohi7iVTE+lmfevBxNgirkMLkuEY=", "narHash": "sha256-hOElvRG8mOCmYc9vhZOqnccqIJRoD6VR6vXOOj0attk=",
"owner": "0xc000022070", "owner": "0xc000022070",
"repo": "zen-browser-flake", "repo": "zen-browser-flake",
"rev": "a7659a805bda3ae8e4861572d8dc0f1d29f3fc3c", "rev": "9294a1e30995dc950e2632296a74baae25252473",
"type": "github" "type": "github"
}, },
"original": { "original": {

141
flake.nix
View file

@ -1,21 +1,9 @@
{ {
inputs = { inputs = {
dms = {
url = "github:AvengeMedia/DankMaterialShell/stable";
inputs.nixpkgs.follows = "nixpkgs";
};
danksearch = {
url = "github:AvengeMedia/danksearch";
inputs.nixpkgs.follows = "nixpkgs";
};
niri = {
url = "github:sodiboo/niri-flake";
inputs.nixpkgs.follows = "nixpkgs";
};
#nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; #nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05";
helium = { helium = {
url = "github:schembriaiden/helium-browser-nix-flake"; url = "github:schembriaiden/helium-browser-nix-flake";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
@ -49,77 +37,60 @@
copyparty.url = "github:9001/copyparty"; copyparty.url = "github:9001/copyparty";
}; };
outputs = outputs = { nixpkgs, determinate, colmena, helium, zen-browser, dolphin-overlay, hyprland-plugins, home-manager, nixpkgs-unstable, nix-gaming, nix-index-database, ... }@attrs: {
{ nixosConfigurations.aura = nixpkgs.lib.nixosSystem {
nixpkgs, system = "x86_64-linux";
determinate, specialArgs = attrs;
colmena, modules = [
helium, {
zen-browser, nixpkgs.overlays = [
dolphin-overlay, # dolphin-overlay.overlays.default
hyprland-plugins, (_: prev: {
home-manager, tailscale = prev.tailscale.overrideAttrs (old: {
nixpkgs-unstable, checkFlags =
nix-gaming, builtins.map (
nix-index-database,
dms,
...
}@attrs:
{
nixosConfigurations.aura = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = attrs;
modules = [
{
nixpkgs.overlays = [
# dolphin-overlay.overlays.default
(_: prev: {
tailscale = prev.tailscale.overrideAttrs (old: {
checkFlags = builtins.map (
flag: flag:
if prev.lib.hasPrefix "-skip=" flag then if prev.lib.hasPrefix "-skip=" flag
flag + "|^TestGetList$|^TestIgnoreLocallyBoundPorts$|^TestPoller$" then flag + "|^TestGetList$|^TestIgnoreLocallyBoundPorts$|^TestPoller$"
else else flag
flag )
) old.checkFlags; old.checkFlags;
}); });
}) })
]; ];
} }
determinate.nixosModules.default determinate.nixosModules.default
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager {
{ home-manager.useGlobalPkgs = true;
home-manager.extraSpecialArgs = attrs; home-manager.useUserPackages = true;
home-manager.useGlobalPkgs = true; home-manager.users.dan = (import ./home.nix) { inherit helium colmena zen-browser nixpkgs-unstable nix-gaming hyprland-plugins; };
home-manager.useUserPackages = true; home-manager.backupFileExtension = "backup";
home-manager.users.dan = import ./home.nix; }
home-manager.backupFileExtension = "backup"; ./configuration.nix
} nix-index-database.nixosModules.nix-index
./configuration.nix { programs.nix-index-database.comma.enable = true; }
nix-index-database.nixosModules.nix-index #./powersave.nix
{ programs.nix-index-database.comma.enable = true; } ];
#./powersave.nix
];
};
nixosConfigurations.eisen = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = attrs;
modules = [
./servers/eisen/configuration.nix
];
};
colmenaHive = colmena.lib.makeHive {
meta = {
nixpkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [ ];
};
specialArgs = attrs;
};
eisen = import ./servers/eisen/configuration.nix;
};
}; };
nixosConfigurations.eisen = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = attrs;
modules = [
./servers/eisen/configuration.nix
];
};
colmenaHive = colmena.lib.makeHive {
meta = {
nixpkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [];
};
specialArgs = attrs;
};
eisen = import ./servers/eisen/configuration.nix;
};
};
} }

800
home.nix
View file

@ -1,444 +1,396 @@
{ { helium, colmena, zen-browser, nix-gaming, nixpkgs-unstable, /* suyu, */hyprland-plugins/*, hyprland*/, ... }:
helium, { pkgs, inputs, ...}:
colmena,
dms,
zen-browser,
nix-gaming,
nixpkgs-unstable, # suyu,
hyprland-plugins, # , hyprland
pkgs,
danksearch,
niri,
inputs,
...
}:
let let
unstable = import nixpkgs-unstable { unstable = import nixpkgs-unstable {
system = pkgs.system; system = pkgs.system;
config = { config = {
allowUnfree = true; allowUnfree = true;
}; };
}; };
# system = stdenv.hostPlatform.system;
in in
{ {
imports = [ imports = [
zen-browser.homeModules.beta zen-browser.homeModules.beta
dms.homeModules.dank-material-shell
danksearch.homeModules.default
# niri.homeManagerModules.default
# dms.homeModules.niri
];
home = {
stateVersion = "25.11";
packages = with pkgs; [
bun
lenovo-legion
itch
filezilla
nicotine-plus
protonvpn-gui
dgop
mysql-workbench
i2c-tools
kdePackages.kimageformats
power-profiles-daemon
tail-tray
steam
helium
opencode
linuxKernel.packages.linux_6_12.perf
obs-studio
flamegraph
samply
font-awesome
arduino-ide
libxkbfile
# dioxus-cli
cosmic-files
cosmic-player
cosmic-screenshot
cosmic-applibrary
cosmic-ext-calculator
cosmic-icons
examine
flix
postgresql
upower
usbutils
killall
powertop
pgadmin4-desktopmode
thunderbird-bin
logisim-evolution
typst
typstyle
typstwriter
colmena.defaultPackage.${system}
usbimager
bitwarden-desktop
metasploit
lenovo-legion
burpsuite
zap
kubernetes-helm
# required by quickshell config
# unstable.quickshell
wlogout
fuzzel
translate-shell
hyprpicker
hypridle
hyprland-qtutils
hyprwayland-scanner
hyprcursor
material-symbols
cava
cliphist
matugen
swww
kdePackages.fcitx5-with-addons
easyeffects
mpvpaper
uv
hyprshot
libsecret
hyprls
ddcutil
brightnessctl
libqalculate
# cloud things
minikube
nebula
nixpkgs-unstable.legacyPackages.${system}.jet-pilot
k9s
prismlauncher
lf
rawtherapee
syncthingtray
anki-bin
xournalpp
simple-scan
godot_4
#rar
wootility
#surrealdb
pico-sdk
elf2uf2-rs
obsidian
betaflight-configurator
home-manager
#glxinfo
pciutils
nix-top
grc
onefetch
inter
fira
fira-code
# fira-code-nerdfont
nerd-fonts.fira-code
iosevka
kitty
#rofi-wayland
rofi
discord
vesktop
spotify
spicetify-cli
meslo-lgs-nf
waybar
chromium
#dunst
sccache
swaybg
activitywatch
networkmanagerapplet
kubectl
duf
dust
#jetbrains.webstorm
#jetbrains.clion
#jetbrains.datagrip
# jetbrains.rider
#jetbrains.idea-ultimate
jre_minimal
datovka
nwg-displays
wireguard-tools
mongodb-compass
unstable.mongodb-tools
#hashcat
tldr
#dunst
grim
slurp
wl-clipboard
nextcloud-client
kdePackages.filelight
kdePackages.kate
kdePackages.ksystemstats
kdePackages.kinfocenter
kdePackages.kirigami-addons
kdePackages.ark
kdePackages.qtdeclarative
kdePackages.dolphin
cachix
playerctl
libcanberra-gtk3 # sound events
#qt6ct
nil # nix language server
nix-output-monitor
expect
nh
udev-block-notify
appimage-run
mpv
heroic
heaptrack
#cinny-desktop
gping
gparted
valgrind
caddy
jq
htmlq
fzf
gleam
erlang
terraform
nodejs
#corepack
ansible
aria2
qbittorrent
audacity
bettercap
duperemove
ffmpeg
flameshot
ripgrep
iotop
nethogs
john
iperf
mold
nheko
quickemu
qemu
socat
websocat
whois
#wifite2
dig
httpie
inxi
numbat
wireshark
nixfmt
qpwgraph
nixpkgs-unstable.legacyPackages.${system}.zed-editor
nixpkgs-unstable.legacyPackages.${system}.pineflash
unstable.nosql-booster
android-tools
hyperfine
scc
aircrack-ng
strace
ghidra
ffuf
sqlmap
nmap
rustscan
thc-hydra
file
binwalk
p7zip
foremost
gdb
feroxbuster
python312Packages.pypykatz
screen
openvpn
#ghostty
mdbook
nix-tree
nix-du
graphviz
#blender
warpinator
awatcher
tigervnc
oh-my-posh
libva-utils
atuin
jc
lsof
carapace
crate2nix
liberation_ttf
noto-fonts-color-emoji
rubik
nerd-fonts.jetbrains-mono
google-fonts
]; ];
home = {
stateVersion = "25.11";
pointerCursor = { packages = with pkgs; [
gtk.enable = true; tail-tray
package = pkgs.bibata-cursors; steam
name = "Bibata-Modern-Classic"; helium
size = 16; opencode
}; linuxKernel.packages.linux_6_12.perf
}; obs-studio
gtk = { flamegraph
enable = true; samply
font-awesome
arduino-ide
xorg.libxkbfile
theme = { # dioxus-cli
package = pkgs.orchis-theme; cosmic-files
name = "Orchis"; cosmic-player
cosmic-screenshot
cosmic-applibrary
cosmic-ext-calculator
cosmic-icons
examine
flix
postgresql
upower
usbutils
killall
powertop
pgadmin4-desktopmode
thunderbird-bin
logisim-evolution
typst
typstyle
typstwriter
colmena.defaultPackage.${system}
usbimager
bitwarden-desktop
metasploit
lenovo-legion
burpsuite
zap
kubernetes-helm
# required by quickshell config
unstable.quickshell
wlogout
fuzzel
translate-shell
hyprpicker
hypridle
hyprland-qtutils
hyprwayland-scanner
hyprcursor
material-symbols
cava
cliphist
matugen
swww
kdePackages.fcitx5-with-addons
easyeffects
mpvpaper
uv
hyprshot
libsecret
hyprls
ddcutil
brightnessctl
libqalculate
# cloud things
minikube
nebula
nixpkgs-unstable.legacyPackages.${system}.jet-pilot
k9s
prismlauncher
lf
rawtherapee
syncthingtray
anki-bin
xournalpp
simple-scan
godot_4
#rar
wootility
#surrealdb
pico-sdk
elf2uf2-rs
obsidian
betaflight-configurator
home-manager
#glxinfo
pciutils
nix-top
grc
onefetch
inter
fira
fira-code
# fira-code-nerdfont
nerd-fonts.fira-code
iosevka
kitty
#rofi-wayland
rofi
discord
vesktop
spotify
spicetify-cli
meslo-lgs-nf
waybar
chromium
#dunst
sccache
swaybg
activitywatch
networkmanagerapplet
kubectl
duf
dust
#jetbrains.webstorm
#jetbrains.clion
#jetbrains.datagrip
# jetbrains.rider
#jetbrains.idea-ultimate
jre_minimal
datovka
nwg-displays
wireguard-tools
mongodb-compass
unstable.mongodb-tools
#hashcat
tldr
#dunst
grim
slurp
wl-clipboard
nextcloud-client
kdePackages.filelight
kdePackages.kate
kdePackages.ksystemstats
kdePackages.kinfocenter
kdePackages.kirigami-addons
kdePackages.ark
kdePackages.qtdeclarative
kdePackages.dolphin
cachix
playerctl
libcanberra-gtk3 # sound events
#qt6ct
nil # nix language server
nix-output-monitor
expect
nh
udev-block-notify
appimage-run
mpv
heroic
heaptrack
#cinny-desktop
gping
gparted
valgrind
caddy
jq
htmlq
fzf
gleam
erlang
terraform
nodejs
#corepack
ansible
aria2
qbittorrent
audacity
bettercap
duperemove
ffmpeg
flameshot
ripgrep
iotop
nethogs
john
iperf
mold
nheko
quickemu
qemu
socat
websocat
whois
#wifite2
dig
httpie
inxi
numbat
wireshark
nixfmt-rfc-style
qpwgraph
nixpkgs-unstable.legacyPackages.${system}.zed-editor
nixpkgs-unstable.legacyPackages.${system}.pineflash
unstable.nosql-booster
android-tools
hyperfine
scc
aircrack-ng
strace
ghidra
ffuf
sqlmap
nmap
rustscan
thc-hydra
file
binwalk
p7zip
foremost
gdb
feroxbuster
python312Packages.pypykatz
screen
openvpn
#ghostty
mdbook
nix-tree
nix-du
graphviz
#blender
warpinator
awatcher
tigervnc
oh-my-posh
libva-utils
atuin
jc
lsof
carapace
crate2nix
liberation_ttf
noto-fonts-color-emoji
rubik
nerd-fonts.jetbrains-mono
google-fonts
];
pointerCursor = {
gtk.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 16;
};
}; };
}; gtk = {
services.lorri.enable = true;
wayland.windowManager.hyprland = {
# enable = true;
# package = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
# portalPackage = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
# plugins = [
# hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprexpo
# hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprtrails
# ];
};
programs.dsearch.enable = true;
programs.dank-material-shell = {
enable = true;
systemd.enable = false;
# niri = {
# enableKeybinds = false; # Sets static preset keybinds
# # enableSpawn = true; # Auto-start DMS with niri, if enabled
# };
};
# programs.niri.enable = true;
fonts.fontconfig = {
enable = true;
defaultFonts = {
emoji = [ "Noto Color Emoji" ];
monospace = [
"Iosevka"
"Iosevka NF"
"FiraCode Nerd Font Mono"
];
sansSerif = [ "Inter" ];
serif = [ "Noto Serif" ];
};
};
programs = {
zen-browser.enable = true;
fish = {
enable = true;
shellInit = ''
source ~/.config/fish/config-old.fish
'';
plugins = with pkgs.fishPlugins; [
{
name = "grc";
src = grc.src;
}
{
name = "tide";
src = tide.src;
}
];
};
nushell = {
enable = true; enable = true;
# unstable, perhaps 25.05 theme = {
# plugins = with pkgs.nushellPlugins; [ package = pkgs.orchis-theme;
# query name = "Orchis";
# skim
# net
# highlight
# gstat
# formats
# dbus
# units
# ];
# configFile.source = ./.config/nushell/base-config.nu;
configFile.text = "source base-config.nu";
};
vscode = {
enable = true;
# package = nixpkgs-unstable.packages.${pkgs.system}.vscode;
# package = unstable.pkgs.vscode;
# extensions = with pkgs.vscode-extensions; [
# ];
};
difftastic.enable = true;
difftastic.git.enable = true;
git = {
enable = true;
settings = {
user.name = "Daniel Bulant";
user.email = "danbulant@gmail.com";
pull.rebase = false;
pull.ff = "only";
gpg.format = "ssh";
commit.gpgsign = true;
gpg.ssh.allowedSignersFile = "/home/dan/allowed_signers";
};
signing = {
signByDefault = true;
key = "/home/dan/.ssh/id_ed25519";
}; };
}; };
gitui.enable = true; services.lorri.enable = true;
btop.enable = true; wayland.windowManager.hyprland = {
bat.enable = true; # enable = true;
lsd.enable = true; # package = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
fastfetch.enable = true; # portalPackage = hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
direnv.enable = true; # plugins = [
direnv.nix-direnv.enable = true; # hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprexpo
}; # hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprtrails
services.kdeconnect.enable = true; # ];
services.kdeconnect.indicator = true; };
services.blueman-applet.enable = true; fonts.fontconfig = {
services.mpris-proxy.enable = true; enable = true;
xdg.mimeApps = { defaultFonts = {
enable = true; emoji = ["Noto Color Emoji"];
monospace = ["Iosevka" "Iosevka NF" "FiraCode Nerd Font Mono"];
defaultApplications = { sansSerif = ["Inter"];
"x-scheme-handler/http" = "zen-beta.desktop"; serif = ["Noto Serif"];
"x-scheme-handler/https" = "zen-beta.desktop"; };
"x-scheme-handler/chrome" = "zen-beta.desktop"; };
"text/html" = "zen-beta.desktop"; programs = {
"application/x-extension-htm" = "zen-beta.desktop"; zen-browser.enable = true;
"application/x-extension-html" = "zen-beta.desktop"; fish = {
"application/x-extension-shtml" = "zen-beta.desktop"; enable = true;
"application/xhtml+xml" = "zen-beta.desktop"; shellInit = ''
"application/x-extension-xhtml" = "zen-beta.desktop"; source ~/.config/fish/config-old.fish
"application/x-extension-xht" = "zen-beta.desktop"; '';
"x-scheme-handler/discord" = "vesktop.desktop"; plugins = with pkgs.fishPlugins; [
{ name = "grc"; src = grc.src; }
{ name = "tide"; src = tide.src; }
];
};
nushell = {
enable = true;
# unstable, perhaps 25.05
# plugins = with pkgs.nushellPlugins; [
# query
# skim
# net
# highlight
# gstat
# formats
# dbus
# units
# ];
# configFile.source = ./.config/nushell/base-config.nu;
configFile.text = ''source base-config.nu'';
};
vscode = {
enable = true;
# package = nixpkgs-unstable.packages.${pkgs.system}.vscode;
# package = unstable.pkgs.vscode;
# extensions = with pkgs.vscode-extensions; [
# ];
};
git = {
enable = true;
userName = "Daniel Bulant";
userEmail = "danbulant@gmail.com";
difftastic.enable = true;
signing = {
signByDefault = true;
key = "/home/dan/.ssh/id_ed25519";
};
extraConfig = {
pull.rebase = false;
pull.ff = "only";
gpg.format = "ssh";
commit.gpgsign = true;
gpg.ssh.allowedSignersFile = "/home/dan/allowed_signers";
};
};
gitui.enable = true;
btop.enable = true;
bat.enable = true;
lsd.enable = true;
fastfetch.enable = true;
direnv.enable = true;
direnv.nix-direnv.enable = true;
};
services.kdeconnect.enable = true;
services.kdeconnect.indicator = true;
services.blueman-applet.enable = true;
services.mpris-proxy.enable = true;
xdg.mimeApps = {
enable = true;
defaultApplications = {
"x-scheme-handler/http"="zen-beta.desktop";
"x-scheme-handler/https"="zen-beta.desktop";
"x-scheme-handler/chrome"="zen-beta.desktop";
"text/html"="zen-beta.desktop";
"application/x-extension-htm"="zen-beta.desktop";
"application/x-extension-html"="zen-beta.desktop";
"application/x-extension-shtml"="zen-beta.desktop";
"application/xhtml+xml"="zen-beta.desktop";
"application/x-extension-xhtml"="zen-beta.desktop";
"application/x-extension-xht"="zen-beta.desktop";
"x-scheme-handler/discord"="vesktop.desktop";
};
}; };
};
} }

View file

@ -1 +0,0 @@
cp .config/hypr/* ~/.config/hypr/ -r