Compare commits

..

2 commits

Author SHA1 Message Date
Daniel Bulant
ac9b508f71
small updates 2026-02-21 17:11:58 +01:00
Daniel Bulant
9a8b255305
update, start switching to danklinux 2026-02-17 18:04:28 +01:00
7 changed files with 920 additions and 594 deletions

View file

@ -11,8 +11,14 @@
# 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
@ -29,7 +35,10 @@ 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
@ -78,7 +87,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
@ -93,10 +102,12 @@ 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...
@ -285,6 +296,15 @@ 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
@ -292,17 +312,20 @@ 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, global, quickshell:sessionToggle # bind = SUPER, p, exec, dms ipc call powermenu open
bind = SUPER, m, global, quickshell:mediaControlsToggle # bind = SUPER, tab, exec, dms ipc call hypr toggleOverview
bind = SUPER, grave, global, quickshell:sidebarLeftToggle # bind = SUPER, p, global, quickshell:sessionToggle
bind = SUPER, b, global, quickshell:sidebarRightToggle # bind = SUPER, m, global, quickshell:mediaControlsToggle
bind = SUPER, slash, global, quickshell:cheatsheetToggle # bind = SUPER, grave, global, quickshell:sidebarLeftToggle
bind = SUPER, tab, global, quickshell:overviewToggle # bind = SUPER, b, global, quickshell:sidebarRightToggle
bindrt = SUPER, SUPER_L, global, quickshell:workspaceNumber # bind = SUPER, slash, global, quickshell:cheatsheetToggle
bindd = Super, h, Clipboard history >> clipboard, global, quickshell:overviewClipboardToggle # Clipboard history >> clipboard # bind = SUPER, tab, global, quickshell:overviewToggle
bindd = Super, Period, Emoji >> clipboard, global, quickshell:overviewEmojiToggle # Emoji >> clipboard # bindrt = SUPER, SUPER_L, global, quickshell:workspaceNumber
# 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
@ -389,7 +412,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
@ -457,3 +480,8 @@ 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,16 +1,22 @@
# 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.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.common-cpu-amd
# nixos-hardware.nixosModules.common-cpu-amd-pstate # nixos-hardware.nixosModules.common-cpu-amd-pstate
@ -20,6 +26,7 @@ in
# nixos-hardware.nixosModules.common-pc-laptop # nixos-hardware.nixosModules.common-pc-laptop
# nixos-hardware.nixosModules.common-pc-laptop-ssd # nixos-hardware.nixosModules.common-pc-laptop-ssd
./hardware-configuration.nix ./hardware-configuration.nix
dms.nixosModules.greeter
# /etc/nixos/cachix.nix # /etc/nixos/cachix.nix
]; ];
# nyx.low-power.enable = true; # nyx.low-power.enable = true;
@ -40,7 +47,6 @@ 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" ];
@ -76,7 +82,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 = [ "100.100.100.100" "127.0.0.1#5053" ]; services.dnsmasq.settings.server = [
"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 ];
@ -148,12 +157,14 @@ 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;
@ -171,14 +182,32 @@ in
users.users.dan = { users.users.dan = {
isNormalUser = true; isNormalUser = true;
description = "John"; description = "Dan";
extraGroups = [ "networkmanager" "wheel" "docker" "fuse" "video" "wireshark" "gamemode" "scanner" "lp" "kvm" "adbusers" "dialout"]; extraGroups = [
"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 = [ "root" "@wheel" "dan" ]; nix.settings.trusted-users = [
"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";
@ -213,9 +242,16 @@ 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 = builtins.readFile "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu"; environment.etc."/xdg/menus/plasma-applications.menu".text =
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;
@ -225,12 +261,15 @@ 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 = options.programs.nix-ld.libraries.default ++ (with pkgs; [ libraries =
options.programs.nix-ld.libraries.default
++ (with pkgs; [
libdrm libdrm
mesa mesa
libxkbcommon libxkbcommon
openssl openssl
libGL libva libGL
libva
libelf libelf
]); ]);
}; };
@ -322,7 +361,6 @@ in
# 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
kdePackages.qtdeclarative kdePackages.qtdeclarative
@ -338,7 +376,8 @@ in
libsForQt5.kirigami2 libsForQt5.kirigami2
kdePackages.syntax-highlighting kdePackages.syntax-highlighting
(python313.withPackages(ps: with ps; [ (python313.withPackages (
ps: with ps; [
build build
pillow pillow
cffi cffi
@ -358,10 +397,12 @@ in
wheel wheel
pwntools pwntools
])) ]
))
]; ];
environment.variables = let environment.variables =
let
qtVersions = with pkgs; [ qtVersions = with pkgs; [
qt5 qt5
qt6 qt6
@ -369,7 +410,9 @@ in
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/"
]); ]);
}; };
@ -417,12 +460,14 @@ 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.powertop.enable = true; powerManagement.enable = true;
# powerManagement.cpuFreqGovernor = "powersave"; powerManagement.powertop.enable = true;
powerManagement.cpuFreqGovernor = "schedutil";
services.thermald.enable = true;
security.polkit.enable = true; security.polkit.enable = true;
@ -447,7 +492,8 @@ in
5353 # Google cast discovery 5353 # Google cast discovery
42000 # warpinator 42000 # warpinator
42001 # warpinator 42001 # warpinator
67 68 # dhcp 67
68 # dhcp
1716 # kdeconnect 1716 # kdeconnect
]; ];
# Or disable the firewall altogether. # Or disable the firewall altogether.
@ -461,7 +507,6 @@ 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
@ -470,9 +515,11 @@ 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-command" "flakes" ]; nix.settings.experimental-features = [
"nix-command"
"flakes"
];
# /etc/hosts :) # /etc/hosts :)
networking.extraHosts = '' networking.extraHosts = "";
'';
} }

View file

@ -1,4 +1,3 @@
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,6 +78,26 @@
"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",
@ -135,6 +155,28 @@
"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"
@ -327,11 +369,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1770919951, "lastModified": 1771325388,
"narHash": "sha256-f8e4IoLZY0xh/eFt99nKizyQxUKr0atmc21lGLkp9io=", "narHash": "sha256-rSSr7h/qbRwxEtcIUe3UlSvbQxPJ4eYI9J84ewGz60o=",
"owner": "schembriaiden", "owner": "schembriaiden",
"repo": "helium-browser-nix-flake", "repo": "helium-browser-nix-flake",
"rev": "9a6ce68bcf28366de6240ed9e37786d476c203fe", "rev": "99d0cecff6778a71be1f2e325e0e645fd749a397",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -758,6 +800,64 @@
"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",
@ -785,11 +885,11 @@
"nixpkgs": "nixpkgs_7" "nixpkgs": "nixpkgs_7"
}, },
"locked": { "locked": {
"lastModified": 1771123156, "lastModified": 1771295873,
"narHash": "sha256-Px1IFFTw3zdP8RNram2g41EvUTjIZRDLCgZyXgpBty0=", "narHash": "sha256-BbzfAGRrEgvSn5p1k8G3FtBNte50JQ+YiBmy/zC/3NE=",
"owner": "fufexan", "owner": "fufexan",
"repo": "nix-gaming", "repo": "nix-gaming",
"rev": "0c4bf3ac4eaf5b693e5d7ae75f3caba8fcf15d8f", "rev": "d39046b43da919faf235170f9cb321712468f907",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -917,6 +1017,22 @@
"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,
@ -1079,15 +1195,40 @@
"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",
@ -1207,17 +1348,50 @@
"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": 1771269662, "lastModified": 1771303996,
"narHash": "sha256-hOElvRG8mOCmYc9vhZOqnccqIJRoD6VR6vXOOj0attk=", "narHash": "sha256-cwf75uTx8cGJCP+nohi7iVTE+lmfevBxNgirkMLkuEY=",
"owner": "0xc000022070", "owner": "0xc000022070",
"repo": "zen-browser-flake", "repo": "zen-browser-flake",
"rev": "9294a1e30995dc950e2632296a74baae25252473", "rev": "a7659a805bda3ae8e4861572d8dc0f1d29f3fc3c",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -1,5 +1,17 @@
{ {
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";
@ -37,7 +49,23 @@
copyparty.url = "github:9001/copyparty"; copyparty.url = "github:9001/copyparty";
}; };
outputs = { nixpkgs, determinate, colmena, helium, zen-browser, dolphin-overlay, hyprland-plugins, home-manager, nixpkgs-unstable, nix-gaming, nix-index-database, ... }@attrs: { outputs =
{
nixpkgs,
determinate,
colmena,
helium,
zen-browser,
dolphin-overlay,
hyprland-plugins,
home-manager,
nixpkgs-unstable,
nix-gaming,
nix-index-database,
dms,
...
}@attrs:
{
nixosConfigurations.aura = nixpkgs.lib.nixosSystem { nixosConfigurations.aura = nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = attrs; specialArgs = attrs;
@ -47,23 +75,24 @@
# dolphin-overlay.overlays.default # dolphin-overlay.overlays.default
(_: prev: { (_: prev: {
tailscale = prev.tailscale.overrideAttrs (old: { tailscale = prev.tailscale.overrideAttrs (old: {
checkFlags = checkFlags = builtins.map (
builtins.map (
flag: flag:
if prev.lib.hasPrefix "-skip=" flag if prev.lib.hasPrefix "-skip=" flag then
then flag + "|^TestGetList$|^TestIgnoreLocallyBoundPorts$|^TestPoller$" flag + "|^TestGetList$|^TestIgnoreLocallyBoundPorts$|^TestPoller$"
else flag else
) flag
old.checkFlags; ) old.checkFlags;
}); });
}) })
]; ];
} }
determinate.nixosModules.default determinate.nixosModules.default
home-manager.nixosModules.home-manager { home-manager.nixosModules.home-manager
{
home-manager.extraSpecialArgs = attrs;
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.dan = (import ./home.nix) { inherit helium colmena zen-browser nixpkgs-unstable nix-gaming hyprland-plugins; }; home-manager.users.dan = import ./home.nix;
home-manager.backupFileExtension = "backup"; home-manager.backupFileExtension = "backup";
} }
./configuration.nix ./configuration.nix

View file

@ -1,5 +1,17 @@
{ helium, colmena, zen-browser, nix-gaming, nixpkgs-unstable, /* suyu, */hyprland-plugins/*, hyprland*/, ... }: {
{ pkgs, inputs, ...}: helium,
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 {
@ -8,16 +20,31 @@ let
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 = { home = {
stateVersion = "25.11"; stateVersion = "25.11";
packages = with pkgs; [ packages = with pkgs; [
bun
lenovo-legion
itch
filezilla
nicotine-plus
protonvpn-gui
dgop
mysql-workbench
i2c-tools
kdePackages.kimageformats
power-profiles-daemon
tail-tray tail-tray
steam steam
helium helium
@ -28,7 +55,7 @@ in
samply samply
font-awesome font-awesome
arduino-ide arduino-ide
xorg.libxkbfile libxkbfile
# dioxus-cli # dioxus-cli
cosmic-files cosmic-files
@ -61,7 +88,7 @@ in
kubernetes-helm kubernetes-helm
# required by quickshell config # required by quickshell config
unstable.quickshell # unstable.quickshell
wlogout wlogout
fuzzel fuzzel
translate-shell translate-shell
@ -218,7 +245,7 @@ in
inxi inxi
numbat numbat
wireshark wireshark
nixfmt-rfc-style nixfmt
qpwgraph qpwgraph
nixpkgs-unstable.legacyPackages.${system}.zed-editor nixpkgs-unstable.legacyPackages.${system}.zed-editor
@ -300,11 +327,25 @@ in
# hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprtrails # 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 = { fonts.fontconfig = {
enable = true; enable = true;
defaultFonts = { defaultFonts = {
emoji = [ "Noto Color Emoji" ]; emoji = [ "Noto Color Emoji" ];
monospace = ["Iosevka" "Iosevka NF" "FiraCode Nerd Font Mono"]; monospace = [
"Iosevka"
"Iosevka NF"
"FiraCode Nerd Font Mono"
];
sansSerif = [ "Inter" ]; sansSerif = [ "Inter" ];
serif = [ "Noto Serif" ]; serif = [ "Noto Serif" ];
}; };
@ -317,8 +358,14 @@ in
source ~/.config/fish/config-old.fish source ~/.config/fish/config-old.fish
''; '';
plugins = with pkgs.fishPlugins; [ plugins = with pkgs.fishPlugins; [
{ name = "grc"; src = grc.src; } {
{ name = "tide"; src = tide.src; } name = "grc";
src = grc.src;
}
{
name = "tide";
src = tide.src;
}
]; ];
}; };
nushell = { nushell = {
@ -336,7 +383,7 @@ in
# units # units
# ]; # ];
# configFile.source = ./.config/nushell/base-config.nu; # configFile.source = ./.config/nushell/base-config.nu;
configFile.text = ''source base-config.nu''; configFile.text = "source base-config.nu";
}; };
vscode = { vscode = {
enable = true; enable = true;
@ -346,22 +393,23 @@ in
# ]; # ];
}; };
difftastic.enable = true;
difftastic.git.enable = true;
git = { git = {
enable = true; enable = true;
userName = "Daniel Bulant"; settings = {
userEmail = "danbulant@gmail.com"; user.name = "Daniel Bulant";
difftastic.enable = true; user.email = "danbulant@gmail.com";
signing = {
signByDefault = true;
key = "/home/dan/.ssh/id_ed25519";
};
extraConfig = {
pull.rebase = false; pull.rebase = false;
pull.ff = "only"; pull.ff = "only";
gpg.format = "ssh"; gpg.format = "ssh";
commit.gpgsign = true; commit.gpgsign = true;
gpg.ssh.allowedSignersFile = "/home/dan/allowed_signers"; gpg.ssh.allowedSignersFile = "/home/dan/allowed_signers";
}; };
signing = {
signByDefault = true;
key = "/home/dan/.ssh/id_ed25519";
};
}; };
gitui.enable = true; gitui.enable = true;
btop.enable = true; btop.enable = true;

1
hypr-copy.sh Normal file
View file

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