add intel drivers, more waybar, niri, other tweaks

This commit is contained in:
Nathan Anderson 2026-02-05 14:21:33 -07:00
parent 31df81b867
commit 01dbe3cbaf
11 changed files with 330 additions and 573 deletions

View File

@ -39,6 +39,9 @@ in
inputs.nur.overlays.default inputs.nur.overlays.default
]; ];
# Intel graphics acceleration
hardware.graphics.enable = true;
hardware.enableRedistributableFirmware = true;
# Enable flakes feature # Enable flakes feature
nix.settings.experimental-features = [ nix.settings.experimental-features = [

View File

@ -29,8 +29,9 @@ output "eDP-1"{
transform "normal" transform "normal"
} }
workspace "net"
workspace "term" workspace "term"
workspace "net"
workspace "chat"
workspace "scratch" workspace "scratch"
// //
@ -163,10 +164,19 @@ window-rule {
open-on-workspace "net" open-on-workspace "net"
} }
// Chat windows
window-rule {
match app-id=r#"^com\.discordapp\.Discord$"#
match app-id=r#"^org\.signal\.Signal$"#
default-column-width { proportion 0.8; }
block-out-from "screencast"
open-on-workspace "chat"
}
// Scratch windows (exclude unlock dialog so it can open on net) // Scratch windows (exclude unlock dialog so it can open on net)
window-rule { window-rule {
match app-id=r#"^org\.keepassxc\.KeePassXC$"# match app-id=r#"^org\.keepassxc\.KeePassXC$"#
match app-id=r#"^org\.signal\.Signal$"#
exclude app-id=r#"^org\.keepassxc\.KeePassXC$"# title="^Unlock Database - KeePassXC$" exclude app-id=r#"^org\.keepassxc\.KeePassXC$"# title="^Unlock Database - KeePassXC$"
block-out-from "screencast" block-out-from "screencast"
@ -187,6 +197,16 @@ window-rule {
match app-id="org.gnome.Nautilus" match app-id="org.gnome.Nautilus"
open-floating true open-floating true
open-focused true
block-out-from "screencast"
}
// Steam windowd
window-rule {
match app-id="steam" title="Friends List"
open-floating true
open-focused false
} }
// Bright border on screen-shared windows // Bright border on screen-shared windows
@ -307,7 +327,8 @@ binds {
Mod+1 { focus-workspace "term"; } Mod+1 { focus-workspace "term"; }
Mod+2 { focus-workspace "net"; } Mod+2 { focus-workspace "net"; }
Mod+3 { focus-workspace "chat"; } Mod+3 { focus-workspace "chat"; }
Mod+4 { focus-workspace 4; } // Mod+3 { focus-workspace 3; }
// Mod+4 { focus-workspace 4; }
Mod+5 { focus-workspace 5; } Mod+5 { focus-workspace 5; }
Mod+6 { focus-workspace 6; } Mod+6 { focus-workspace 6; }
Mod+7 { focus-workspace 7; } Mod+7 { focus-workspace 7; }
@ -317,7 +338,8 @@ binds {
Mod+Shift+1 { move-column-to-workspace "term"; } Mod+Shift+1 { move-column-to-workspace "term"; }
Mod+Shift+2 { move-column-to-workspace "net"; } Mod+Shift+2 { move-column-to-workspace "net"; }
Mod+Shift+3 { move-column-to-workspace "chat"; } Mod+Shift+3 { move-column-to-workspace "chat"; }
Mod+Shift+4 { move-column-to-workspace 4; } // Mod+Shift+3 { move-column-to-workspace 3; }
// Mod+Shift+4 { move-column-to-workspace 4; }
Mod+Shift+5 { move-column-to-workspace 5; } Mod+Shift+5 { move-column-to-workspace 5; }
Mod+Shift+6 { move-column-to-workspace 6; } Mod+Shift+6 { move-column-to-workspace 6; }
Mod+Shift+7 { move-column-to-workspace 7; } Mod+Shift+7 { move-column-to-workspace 7; }

View File

@ -23,10 +23,10 @@
"custom/storage", "custom/storage",
"memory", "memory",
"cpu", "cpu",
"pulseaudio", // "pulseaudio",
"custom/keyboard-layout", // "custom/keyboard-layout",
"battery", "battery",
"backlight", // "backlight",
"custom/wlsunset", "custom/wlsunset",
"tray", "tray",
//"custom/weather", //"custom/weather",
@ -102,7 +102,7 @@
"niri/window": { "niri/window": {
"format": "{title}", "format": "{title}",
"icon": true, "icon": true,
"icon-size": 24, "icon-size": 20,
"rewrite": { "rewrite": {
// Firefox // Firefox
"(.*) — Mozilla Firefox": " $1", "(.*) — Mozilla Firefox": " $1",
@ -182,17 +182,20 @@
"all-outputs": true, "all-outputs": true,
"format": " {icon} ", "format": " {icon} ",
"format-icons": { "format-icons": {
"1": "", "term": "",
"2": "", "net": "",
"3": "󰭻", "chat": "󰭻",
"4": "", "scratch": "",
// Numeric Fallback
"1": " 1",
"2": " 2",
"3": " 3",
"4": " 4",
"5": " 5", "5": " 5",
"6": " 6", "6": " 6",
"7": " 7", "7": " 7",
"8": " 8", "8": " 8",
"9": " 9", "9": " 9",
"music": "",
"scratch": "",
} }
}, },

View File

@ -67,7 +67,7 @@
* { * {
border: none; border: none;
border-radius: 0; border-radius: 0;
min-height: 40px; min-height: 30px;
margin: 0px; margin: 0px;
padding: 0px; padding: 0px;
} }
@ -77,7 +77,7 @@
background: transparent; background: transparent;
background-color: transparent; background-color: transparent;
font-family: Overpass Nerd Font; font-family: Overpass Nerd Font;
font-size: 22px; font-size: 16px;
color: @text; color: @text;
} }
@ -99,22 +99,24 @@
} }
.modules-left, .modules-left,
.modules-right, .modules-right {
.modules-center {
/* margin: 8px 8px 1px 8px; */ /* margin: 8px 8px 1px 8px; */
background: transparent; background: transparent;
/* color: @; */ /* color: @; */
background-color: @base; background-color: @base;
border-radius: 25px; border-radius: 20px;
padding: 0px 10px 0px 10px; padding: 0px 6px 0px 6px;
border-style: solid; border-style: solid;
border-width: 3px; border-width: 3px;
border-color: @surface0; border-color: @surface0;
} }
/* Add gaps for middle module so they space out and dont touch */ /* Hide empty center module */
.modules-center { .modules-center {
margin: 0px 100px; background: transparent;
border: none;
padding: 0;
min-height: 0;
} }
/* Every modules */ /* Every modules */
@ -243,7 +245,7 @@
} }
#workspaces { #workspaces {
font-size: 24px; font-size: 16px;
} }
#workspaces button { #workspaces button {
@ -324,17 +326,17 @@
#custom-power { #custom-power {
margin-left: 15px; margin-left: 15px;
margin-right: 15px; margin-right: 15px;
font-size: 20px; /* font-size: 16px; */
color: @flamingo; color: @flamingo;
} }
#custom-launcher { #custom-launcher {
font-size: 24px; /* font-size: 24px; */
margin-left: 15px; margin-left: 15px;
margin-right: 10px; margin-right: 10px;
} }
#backlight.icon { #backlight.icon {
padding-right: 1px; padding-right: 1px;
font-size: 20px; /* font-size: 16px; */
} }

View File

@ -37,6 +37,7 @@
unstable.claude-code unstable.claude-code
unstable.opencode unstable.opencode
nodejs_24 nodejs_24
docker-compose
### LSP's ### LSP's
nil nil
nodePackages_latest.bash-language-server nodePackages_latest.bash-language-server

View File

@ -1,7 +1,17 @@
{ inputs, lib, config, pkgs, userName, ... }: {
let inputs,
unstable = import inputs.nixpkgs-unstable { system = "x86_64-linux"; config.allowUnfree = true; }; lib,
in config,
pkgs,
userName,
...
}:
let
unstable = import inputs.nixpkgs-unstable {
system = "x86_64-linux";
config.allowUnfree = true;
};
in
{ {
options.niriwm = { options.niriwm = {
enable = lib.mkEnableOption "Enable niri window manager."; enable = lib.mkEnableOption "Enable niri window manager.";
@ -11,7 +21,7 @@
description = "Whether to enable non-free software in the niri config"; description = "Whether to enable non-free software in the niri config";
}; };
systemPackages = lib.mkOption { systemPackages = lib.mkOption {
default = []; default = [ ];
description = "Add any additional packages desired. Merged with niri defaults."; description = "Add any additional packages desired. Merged with niri defaults.";
}; };
user = lib.mkOption { user = lib.mkOption {
@ -49,7 +59,9 @@
### ###
## System Packages ## System Packages
### ###
environment.systemPackages = with pkgs; lib.lists.flatten [ environment.systemPackages =
with pkgs;
lib.lists.flatten [
[ [
bash bash
egl-wayland egl-wayland
@ -90,6 +102,8 @@
WLR_NO_HARDWARE_CURSORS = "1"; WLR_NO_HARDWARE_CURSORS = "1";
ELECTRON_OZONE_PLATFORM_HINT = "auto"; ELECTRON_OZONE_PLATFORM_HINT = "auto";
NIXOS_OZONE_WL = "1"; NIXOS_OZONE_WL = "1";
# VA-API driver for hardware video acceleration (Intel 13th gen)
LIBVA_DRIVER_NAME = "iHD";
}; };
# adds additional man pages # adds additional man pages
@ -129,7 +143,10 @@
# Set zsh as the default shell system-wide # Set zsh as the default shell system-wide
users.defaultUserShell = pkgs.zsh; users.defaultUserShell = pkgs.zsh;
environment.shells = with pkgs; [ zsh bash ]; environment.shells = with pkgs; [
zsh
bash
];
### ###
## Services ## Services
@ -174,7 +191,14 @@
"bluez5.enable-msbc" = true; "bluez5.enable-msbc" = true;
"bluez5.enable-hw-volume" = true; "bluez5.enable-hw-volume" = true;
# Default roles: https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/bluetooth.html#monitor-properties # Default roles: https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/bluetooth.html#monitor-properties
"bluez5.roles" = [ "a2dp_sink" "a2dp_source" "bap_sink" "bap_source" "hfp_hf" "hfp_ag" ]; "bluez5.roles" = [
"a2dp_sink"
"a2dp_source"
"bap_sink"
"bap_source"
"hfp_hf"
"hfp_ag"
];
}; };
}; };
}; };
@ -200,8 +224,12 @@
FastConnectable = "true"; FastConnectable = "true";
Experimental = "true"; Experimental = "true";
}; };
Policy = { AutoEnable = "true"; }; Policy = {
LE = { EnableAdvMonInterleaveScan = 1; }; AutoEnable = "true";
};
LE = {
EnableAdvMonInterleaveScan = 1;
};
}; };
}; };
@ -213,6 +241,17 @@
brscan5.enable = true; brscan5.enable = true;
}; };
virtualisation.docker = {
enable = true;
rootless = {
enable = true;
setSocketVariable = true;
};
daemon.settings = {
# not needed, intended for windoze
userland-proxy = false;
};
};
# #
# udev rules # udev rules
# #

View File

@ -1,66 +0,0 @@
{lib, config, pkgs, inputs, ...}:
let
cfg = config.firefoxApp;
in
{
# imports = [
# inputs.nur.hmModules.nur
# ];
options.firefoxApp = {
enable = lib.mkEnableOption "enable firefox browser";
};
config = lib.mkIf cfg.enable {
programs.firefox = {
enable = true;
profiles = {
default = {
id = 0;
name = "default";
isDefault = true;
extensions = with pkgs; [
nur.repos.rycee.firefox-addons.darkreader
nur.repos.rycee.firefox-addons.keepassxc-browser
nur.repos.crazazy.firefox-addons.ublock-origin
];
search = {
# Replace default firefox search engine config with this one
force = true;
default = "Startpage";
engines = {
"Startpage" = {
urls = [{
template = "https://www.startpage.com/sp/search?query={searchTerms}";
}];
};
};
};
settings = {
"browser.startup.blankWindow" = true;
"browser.startup.homepage" = "https://www.startpage.com/do/mypage.pl?prfe=11898a1adf7b7dfb587580692f358773a11ca25e993b8e077476641cec033319e15f2449c345f5be919fd0a082015c3e4ed23143bd4337512466c04c2999831a54abca2eaeb42963c63ff064";
"browser.search.region" = "US";
"browser.search.isUS" = true;
"distribution.searchplugins.defaultLocale" = "en-US";
"general.useragent.locale" = "en-US";
"extensions.activeThemeID" = "{831b8843-7251-4306-9521-e688f18b4aeb}";
"privacy.trackingprotection.enable" = true;
"privacy.trackingprotection.emailtracking.enable" = true;
"privacy.trackingprotection.socialtracking.enable" = true;
"privacy.clearOnShutdown.cookies" = true;
"browser.safebrowsing.passwords.enabled" = false;
"browser.migrate.interactions.passwords" = false;
"pref.privacy.disable_button.view_passwords" = false;
"signon.rememberSignon" = false;
"extensions.formautofill.creditCards.enabled" = false;
"extensions.formautofill.addresses.enabled" = false;
# "browser.bookmarks.showMobileBookmarks" = true;
# "browser.newtabpage.pinned" = [{
# title = "NixOS";
# url = "https://nixos.org";
# }];
};
};
};
};
};
}

View File

@ -1,93 +0,0 @@
{lib, config, pkgs, inputs, ...}:
let
cfg = config.firefoxApp;
in
{
# imports = [
# inputs.nur.hmModules.nur
# ];
options.firefoxApp = {
enable = lib.mkEnableOption "enable firefox browser";
};
config = lib.mkIf cfg.enable {
programs.firefox = {
# Add pipewire support
# package = (pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true;}) {});
enable = true;
profiles = {
default = {
id = 0;
name = "default";
isDefault = true;
extensions.packages = with pkgs; [
nur.repos.rycee.firefox-addons.darkreader
nur.repos.rycee.firefox-addons.keepassxc-browser
nur.repos.crazazy.firefox-addons.ublock-origin
nur.repos.bandithedoge.firefoxAddons.stylus
];
search = {
# Replace default firefox search engine config with this one
force = true;
default = "Startpage";
engines = {
"Startpage" = {
urls = [{
template = "https://www.startpage.com/sp/search?query={searchTerms}";
}];
};
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ];
};
"MySQL Docs" = {
urls = [{
template = "https://dev.mysql.com/doc/search";
params = [
{ name = "d"; value = "371"; }
{ name = "p"; value = "1"; }
{ name = "q"; value = "{searchTerms}"; }
];
}];
definedAliases = [ "@mysql" ];
};
};
};
settings = {
"browser.startup.blankWindow" = true;
"browser.startup.homepage" = "https://www.startpage.com/do/mypage.pl?prfe=11898a1adf7b7dfb587580692f358773a11ca25e993b8e077476641cec033319e15f2449c345f5be919fd0a082015c3e4ed23143bd4337512466c04c2999831a54abca2eaeb42963c63ff064";
"browser.search.region" = "US";
"browser.search.isUS" = true;
"distribution.searchplugins.defaultLocale" = "en-US";
"general.useragent.locale" = "en-US";
"extensions.activeThemeID" = "{831b8843-7251-4306-9521-e688f18b4aeb}";
"privacy.trackingprotection.enable" = true;
"privacy.trackingprotection.emailtracking.enable" = true;
"privacy.trackingprotection.socialtracking.enable" = true;
"privacy.clearOnShutdown.cookies" = true;
"browser.safebrowsing.passwords.enabled" = false;
"browser.migrate.interactions.passwords" = false;
"pref.privacy.disable_button.view_passwords" = false;
"signon.rememberSignon" = false;
"extensions.formautofill.creditCards.enabled" = false;
"extensions.formautofill.addresses.enabled" = false;
"browser.toolbars.bookmarks.visibility" = "always";
# For applying userContent.css - not being used
# "toolkit.legacyUserProfileCustomizations.stylesheets" = true;
# "browser.newtabpage.pinned" = [{
# title = "NixOS";
# url = "https://nixos.org";
# }];
};
};
};
};
};
}

View File

@ -1,82 +0,0 @@
{lib, config, pkgs, inputs, ...}:
let
cfg = config.firefoxApp;
in
{
# imports = [
# inputs.nur.hmModules.nur
# ];
options.firefoxApp = {
enable = lib.mkEnableOption "enable firefox browser";
};
config = lib.mkIf cfg.enable {
programs.firefox = {
# Add pipewire support
# package = (pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true;}) {});
enable = true;
profiles = {
default = {
id = 0;
name = "default";
isDefault = true;
extensions.packages = with pkgs; [
nur.repos.rycee.firefox-addons.darkreader
nur.repos.rycee.firefox-addons.keepassxc-browser
nur.repos.crazazy.firefox-addons.ublock-origin
nur.repos.bandithedoge.firefoxAddons.stylus
];
search = {
# Replace default firefox search engine config with this one
force = true;
default = "Startpage";
engines = {
"Startpage" = {
urls = [{
template = "https://www.startpage.com/sp/search?query={searchTerms}";
}];
};
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ];
};
};
};
settings = {
"browser.startup.blankWindow" = true;
"browser.startup.homepage" = "https://www.startpage.com/do/mypage.pl?prfe=11898a1adf7b7dfb587580692f358773a11ca25e993b8e077476641cec033319e15f2449c345f5be919fd0a082015c3e4ed23143bd4337512466c04c2999831a54abca2eaeb42963c63ff064";
"browser.search.region" = "US";
"browser.search.isUS" = true;
"distribution.searchplugins.defaultLocale" = "en-US";
"general.useragent.locale" = "en-US";
"extensions.activeThemeID" = "{831b8843-7251-4306-9521-e688f18b4aeb}";
"privacy.trackingprotection.enable" = true;
"privacy.trackingprotection.emailtracking.enable" = true;
"privacy.trackingprotection.socialtracking.enable" = true;
"privacy.clearOnShutdown.cookies" = true;
"browser.safebrowsing.passwords.enabled" = false;
"browser.migrate.interactions.passwords" = false;
"pref.privacy.disable_button.view_passwords" = false;
"signon.rememberSignon" = false;
"extensions.formautofill.creditCards.enabled" = false;
"extensions.formautofill.addresses.enabled" = false;
"browser.toolbars.bookmarks.visibility" = "always";
# For applying userContent.css - not being used
# "toolkit.legacyUserProfileCustomizations.stylesheets" = true;
# "browser.newtabpage.pinned" = [{
# title = "NixOS";
# url = "https://nixos.org";
# }];
};
};
};
};
};
}

View File

@ -1,82 +0,0 @@
{lib, config, pkgs, inputs, ...}:
let
cfg = config.firefoxApp;
in
{
# imports = [
# inputs.nur.hmModules.nur
# ];
options.firefoxApp = {
enable = lib.mkEnableOption "enable firefox browser";
};
config = lib.mkIf cfg.enable {
programs.firefox = {
# Add pipewire support
# package = (pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true;}) {});
enable = true;
profiles = {
default = {
id = 0;
name = "default";
isDefault = true;
extensions.packages = with pkgs; [
nur.repos.rycee.firefox-addons.darkreader
nur.repos.rycee.firefox-addons.keepassxc-browser
nur.repos.crazazy.firefox-addons.ublock-origin
nur.repos.bandithedoge.firefoxAddons.stylus
];
search = {
# Replace default firefox search engine config with this one
force = true;
default = "Startpage";
engines = {
"Startpage" = {
urls = [{
template = "https://www.startpage.com/sp/search?query={searchTerms}";
}];
};
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ];
};
};
};
settings = {
"browser.startup.blankWindow" = true;
"browser.startup.homepage" = "https://www.startpage.com/do/mypage.pl?prfe=11898a1adf7b7dfb587580692f358773a11ca25e993b8e077476641cec033319e15f2449c345f5be919fd0a082015c3e4ed23143bd4337512466c04c2999831a54abca2eaeb42963c63ff064";
"browser.search.region" = "US";
"browser.search.isUS" = true;
"distribution.searchplugins.defaultLocale" = "en-US";
"general.useragent.locale" = "en-US";
"extensions.activeThemeID" = "{831b8843-7251-4306-9521-e688f18b4aeb}";
"privacy.trackingprotection.enable" = true;
"privacy.trackingprotection.emailtracking.enable" = true;
"privacy.trackingprotection.socialtracking.enable" = true;
"privacy.clearOnShutdown.cookies" = true;
"browser.safebrowsing.passwords.enabled" = false;
"browser.migrate.interactions.passwords" = false;
"pref.privacy.disable_button.view_passwords" = false;
"signon.rememberSignon" = false;
"extensions.formautofill.creditCards.enabled" = false;
"extensions.formautofill.addresses.enabled" = false;
"browser.toolbars.bookmarks.visibility" = "always";
# For applying userContent.css - not being used
# "toolkit.legacyUserProfileCustomizations.stylesheets" = true;
# "browser.newtabpage.pinned" = [{
# title = "NixOS";
# url = "https://nixos.org";
# }];
};
};
};
};
};
}

View File

@ -29,11 +29,11 @@ in
search = { search = {
# Replace default firefox search engine config with this one # Replace default firefox search engine config with this one
force = true; force = true;
default = "Startpage"; default = "Kagi";
engines = { engines = {
"Startpage" = { "Kagi" = {
urls = [{ urls = [{
template = "https://www.startpage.com/sp/search?query={searchTerms}"; template = "https://kagi.com/search?q={searchTerms}";
}]; }];
}; };
"Nix Packages" = { "Nix Packages" = {
@ -47,6 +47,16 @@ in
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ]; definedAliases = [ "@np" ];
}; };
"NixOS Wiki" = {
urls = [{
template = "https://wiki.nixos.org/w/index.php";
params = [
{ name = "search"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@nix" ];
};
"MySQL Docs" = { "MySQL Docs" = {
urls = [{ urls = [{
template = "https://dev.mysql.com/doc/search"; template = "https://dev.mysql.com/doc/search";