feat(koishi): new laptop!!!

This commit is contained in:
Kat Inskip 2024-03-09 14:54:11 -08:00
parent 8820db6792
commit 26ad2434b0
Signed by: kat
GPG key ID: 465E64DECEA8CF0F
36 changed files with 1403 additions and 698 deletions

View file

@ -1,27 +1,32 @@
{ pkgs, ... }: {
home.pointerCursor = {
gtk.enable = true;
# x11.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 16;
{pkgs, ...}: {
home.pointerCursor = {
gtk.enable = true;
# x11.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 16;
};
gtk = {
enable = true;
iconTheme = {
name = "Numix-Square-Light";
package = pkgs.numix-icon-theme-square;
};
gtk = {
enable = true;
theme = {
package = pkgs.flat-remix-gtk;
name = "Flat-Remix-GTK-Grey-Darkest";
};
iconTheme = {
package = pkgs.gnome.adwaita-icon-theme;
name = "Adwaita";
};
font = {
name = "Sans";
size = 11;
};
theme = {
name = "Arc";
package = pkgs.arc-theme;
};
}
cursorTheme = {
name = "Numix-Cursor";
package = pkgs.numix-cursor-theme;
};
font = {
name = "Monaspace Krypton";
size = 11;
};
};
}

View file

@ -0,0 +1,30 @@
{ pkgs, ... }: {
services.hypridle = {
enable = true;
listeners = [
{
timeout = 150;
onTimeout = "${pkgs.brightnessctl}/bin/brightnessctl -s set 5";
onResume = "${pkgs.brightnessctl}/bin/brightnessctl -r";
}
{
timeout = 300;
onTimeout = "${pkgs.systemd}/bin/loginctl lock-session";
}
{
timeout = 330;
onTimeout = "${pkgs.hyprland}/bin/hyprctl dispatch dpms off";
onResume = "${pkgs.hyprland}/bin/hyprctl dispatch dpms on";
}
{
timeout = 600;
onTimeout = "${pkgs.systemd}/bin/systemctl suspend";
}
];
beforeSleepCmd = "${pkgs.systemd}/bin/loginctl lock-session";
afterSleepCmd = "${pkgs.hyprland}/bin/hyprctl dispatch dpms on";
lockCmd = "pidof hyprlock || ${pkgs.hyprlock}/bin/hyprlock";
unlockCmd = "${pkgs.psmisc}/bin/killall hyprlock";
};
}

View file

@ -16,6 +16,11 @@ in {
slurp
grim
swww
pavucontrol
hyprpicker
gnome.nautilus
brightnessctl
playerctl
inputs.hyprsome.packages.${pkgs.system}.default
];
home.sessionVariables = {
@ -40,13 +45,15 @@ in {
input = {
kb_options = "ctrl:nocaps";
};
monitor = [
"HDMI-A-2, 1920x1080, 0x0, 1"
"eDP-1, 1920x1080, 1920x0, 1"
];
workspace = ["1,monitor:eDP-1,default:true"] ++ (list.map (workspace:
"${toString workspace},monitor:eDP-1"
) (list.range 2 10)) ++ [ "11,monitor:DP-3,default:true"] ++ (list.map (workspace:
workspace = let
commonOptions = "gapsin:0,gapsout:0,rounding:false";
in
["1,monitor:eDP-1,default:true,${commonOptions}"]
++ (list.map (
workspace: "${toString workspace},monitor:eDP-1${commonOptions}"
) (list.range 2 10));
/*
++ [ "11,monitor:DP-3,default:true"] ++ (list.map (workspace:
"${toString workspace},monitor:DP-3"
) (list.range 12 20));
/*list.concat (list.generate (
@ -60,13 +67,21 @@ in {
"${toString (x + 10)},monitor:DP-3"
]
)
10);*/
10);
*/
monitor = [
"eDP-1, 2256x1504, 0x0, 1"
];
exec-once = [
"${pkgs.hypridle}/bin/hypridle"
"${pkgs.udiskie}/bin/udiskie &"
"${pkgs.dbus}/bin/dbus-update-activation-environment --all"
"${pkgs.libsForQt5.polkit-kde-agent}/bin/polkit-kde-agent"
"${pkgs.networkmanagerapplet}/bin/nm-applet"
"${pkgs.mako}/bin/mako"
"${pkgs.swww}/bin/swww init"
"${pkgs.systemd}/bin/systemctl --user restart waybar.service"
"${pkgs.pasystray}/bin/pasystray"
"${inputs.konawall-py.packages.${pkgs.system}.konawall-py}/bin/konawall"
];
xwayland = {
@ -77,8 +92,19 @@ in {
"$mod, mouse:273, resizewindow"
"$mod ALT, mouse:272, resizewindow"
];
binde = [
", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"
", XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
", XF86MonBrightnessUp, exec, ${pkgs.brightnessctl}/bin/brightnessctl -c backlight set 5%+"
", XF86MonBrightnessDown, exec, ${pkgs.brightnessctl}/bin/brightnessctl -c backlight set 5%-"
];
bind =
[
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
", XF86AudioPlay, exec, ${pkgs.playerctl}/bin/playerctl play-pause"
", XF86AudioNext, exec, ${pkgs.playerctl}/bin/playerctl next"
", XF86AudioPrev, exec, ${pkgs.playerctl}/bin/playerctl prev"
"$mod, F, exec, firefox"
"$mod, R, exec, wofi -t wezterm -IS drun"
"$mod SHIFT, R, exec, wofi -t wezterm -IS run"
@ -93,7 +119,7 @@ in {
"$mod SHIFT, P, changegroupactive, b"
"$mod, R, togglesplit,"
"$mod, T, togglefloating,"
"$mod, P, pseudo,"
"$mod SHIFT, P, pseudo,"
"$mod ALT, ,resizeactive,"
"$mod, Escape, exec, wlogout -p layer-shell"
"$mod, L, exec, loginctl lock-session"
@ -106,6 +132,9 @@ in {
"$mod SHIFT, right, movewindow, r"
"$mod SHIFT, up, movewindow, u"
"$mod SHIFT, down, movewindow, d"
"$mod, P, exec, $[pkgs.hyprpicker}/bin/hyprpicker -na"
"CTRL, Print, exec, grimblast --notify --cursor copysave output"
"$mod SHIFT CTRL, R, exec, grimblast --notify --cursor copysave output"

View file

@ -0,0 +1,13 @@
{ pkgs, ... }: {
programs.hyprlock = {
enable = true;
backgrounds = [
{
path = "screenshot";
blur_size = 8;
blur_passes = 1;
}
];
};
}

View file

@ -1,4 +1,8 @@
{ config, pkgs, ... }: {
{
config,
pkgs,
...
}: {
programs.swaylock = {
enable = true;
package = pkgs.swaylock-effects;

View file

@ -29,9 +29,8 @@
"hyprland/window"
];
modules-right = [
"network"
"temperature"
"idle_inhibitor"
"power-profiles-daemon"
"tray"
"battery"
"clock"
@ -40,27 +39,34 @@
# Modules Definition
"hyprland/workspaces" = {
format = "{icon}";
/*format-icons = {
/*
format-icons = {
# https://fontawesome.com/v5/cheatsheet
"1" = ""; # chats
"2" = ""; # cloud (browser)
"3" = ""; # music
"4" = ""; # brain
"5" = ""; # terminal >_
};*/
};
*/
};
"hyprland/window" = {
format = "{}";
rewrite = {
"(.*) Mozilla Firefox" = "🌎 $1";
"(.*) - fish" = "> [$1]";
"(.*) Mozilla Firefox" = "🌎 $1";
"(.*) - fish" = "> [$1]";
};
};
tray = {
show-passive-items = true;
icon-size = 12;
icon-size = 24;
spacing = 2;
};
power-profiles-daemon = {
format = "{profile}";
tooltip-format = "Power profile: {profile}\nDriver: {driver}";
tooltip = true;
};
mpris = {
format = "{player_icon} {dynamic}";
format-paused = "{status_icon} {dynamic}";
@ -74,10 +80,6 @@
paused = "";
};
};
temperature = {
format = " {temperatureC}°C";
critical-threshold = 80;
};
idle_inhibitor = {
format = "{icon}";
format-icons = {
@ -85,13 +87,6 @@
deactivated = "";
};
};
network = {
format-wifi = " {essid} ({signalStrength}%)";
format-ethernet = " {ipaddr}/{cidr}";
format-linked = " No IP";
format-disconnected = " Disconnected";
format-alt = "{ifname}: {ipaddr}/{cidr}";
};
clock = {
format = "{:%F %H:%M %Z}";
};

View file

@ -4,7 +4,7 @@
border: none
border-radius: 0
background: none
font-family: "Iosevka", "Font Awesome 6 Free", "Font Awesome 6 Brands"
font-family: "Monaspace Krypton", "Font Awesome 6 Free", "Font Awesome 6 Brands"
font-size: $font_size
text-shadow: none
box-shadow: none
@ -18,6 +18,7 @@
%widget
@extend %widget_unpadded
padding: 0 4px
padding-top: 2px
window#waybar
background: rgba($base00, 0.9)

View file

@ -0,0 +1,158 @@
{
config,
pkgs,
inputs,
nur,
...
}: {
home.sessionVariables = {
BROWSER = "firefox";
};
programs.firefox = {
enable = true;
profiles = {
main = {
id = 0;
isDefault = true;
extensions = with nur.repos.rycee.firefox-addons; [
sponsorblock
link-cleaner
canvasblocker
a11ycss
view-image
wappalyzer
auto-tab-discard
bitwarden
darkreader
decentraleyes
clearurls
df-youtube
old-reddit-redirect
privacy-badger
reddit-enhancement-suite
refined-github
stylus
temporary-containers
tree-style-tab
multi-account-containers
ublock-origin
violentmonkey
];
settings = {
# Derived from https://github.com/arcnmx/home/blob/9eb1cd4dd43883e1a0c6a2a55c00d7c3bede1776/cfg/firefox/default.nix#L7
# and https://git.ztn.sh/zotan/snowleopard/src/branch/dev/assets/prefs.js
"services.sync.engine.prefs" = false;
"services.sync.engine.prefs.modified" = false;
"services.sync.engine.passwords" = false;
"services.sync.declinedEngines" = "passwords,adblockplus,prefs";
"media.eme.enabled" = true; # whee drm
"gfx.webrender.all.qualified" = true;
"gfx.webrender.all" = true;
"webgl.enable-draft-extensions" = true;
"layers.acceleration.force-enabled" = true;
"gfx.canvas.azure.accelerated" = true;
"browser.ctrlTab.recentlyUsedOrder" = false;
"privacy.resistFingerprinting.block_mozAddonManager" = true;
"extensions.webextensions.restrictedDomains" = "";
"browser.shell.checkDefaultBrowser" = false;
"spellchecker.dictionary" = "en-CA";
"ui.context_menus.after_mouseup" = true;
"browser.warnOnQuit" = false;
"browser.quitShortcut.disabled" = true;
"browser.startup.homepage" = "about:blank";
"browser.contentblocking.category" = "strict";
"browser.discovery.enabled" = false;
"browser.tabs.multiselect" = true;
"browser.tabs.remote.separatedMozillaDomains" = "";
"browser.tabs.remote.separatePrivilegedContentProcess" = false;
"browser.tabs.remote.separatePrivilegedMozillaWebContentProcess" = false;
"browser.tabs.unloadOnLowMemory" = true;
"browser.tabs.closeWindowWithLastTab" = false;
"browser.newtab.privateAllowed" = true;
"browser.newtabpage.enabled" = false;
"browser.urlbar.placeholderName" = "";
"extensions.privatebrowsing.notification" = false;
"browser.startup.page" = 3;
"devtools.chrome.enabled" = true;
#"devtools.debugger.remote-enabled" = true;
"devtools.inspector.showUserAgentStyles" = true;
"services.sync.prefs.sync.privacy.donottrackheader.value" = false;
"services.sync.prefs.sync.browser.safebrowsing.malware.enabled" = false;
"services.sync.prefs.sync.browser.safebrowsing.phishing.enabled" = false;
"app.shield.optoutstudies.enabled" = true;
"datareporting.healthreport.uploadEnabled" = false;
"datareporting.policy.dataSubmissionEnabled" = false;
"datareporting.sessions.current.clean" = true;
"devtools.onboarding.telemetry.logged" = false;
"toolkit.telemetry.updatePing.enabled" = false;
"browser.ping-centre.telemetry" = false;
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons" = false;
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features" = false;
"toolkit.telemetry.bhrPing.enabled" = false;
"toolkit.telemetry.enabled" = false;
"toolkit.telemetry.firstShutdownPing.enabled" = false;
"toolkit.telemetry.hybridContent.enabled" = false;
"toolkit.telemetry.newProfilePing.enabled" = false;
"toolkit.telemetry.reportingpolicy.firstRun" = false;
"toolkit.telemetry.shutdownPingSender.enabled" = false;
"toolkit.telemetry.unified" = false;
"toolkit.telemetry.server" = "";
"toolkit.telemetry.archive.enabled" = false;
"toolkit.telemetry.coverage.opt-out" = true;
"toolkit.coverage.enabled" = false;
"toolkit.coverage.endpoint.base" = "";
"toolkit.crashreporter.infoURL" = "";
"browser.onboarding.enabled" = false;
"experiments.enabled" = false;
"network.allow-experiments" = false;
"social.directories" = "";
"social.remote-install.enabled" = false;
"social.toast-notifications.enabled" = false;
"social.whitelist" = "";
"browser.safebrowsing.malware.enabled" = false;
"browser.safebrowsing.blockedURIs.enabled" = false;
"browser.safebrowsing.downloads.enabled" = false;
"browser.safebrowsing.downloads.remote.enabled" = false;
"browser.safebrowsing.phishing.enabled" = false;
"dom.ipc.plugins.reportCrashURL" = false;
"breakpad.reportURL" = "";
"beacon.enabled" = false;
"browser.search.geoip.url" = "";
"browser.search.region" = "CA";
"browser.search.suggest.enabled" = false;
"browser.search.update" = false;
"browser.selfsupport.url" = "";
"extensions.getAddons.cache.enabled" = false;
"extensions.pocket.enabled" = false;
"geo.enabled" = false;
"geo.wifi.uri" = false;
"keyword.enabled" = false;
"media.getusermedia.screensharing.enabled" = false;
"media.video_stats.enabled" = false;
"device.sensors.enabled" = false;
"dom.battery.enabled" = false;
"dom.enable_performance" = false;
"network.dns.disablePrefetch" = false;
"network.http.speculative-parallel-limit" = 8;
"network.predictor.cleaned-up" = true;
"network.predictor.enabled" = true;
"network.prefetch-next" = true;
"security.dialog_enable_delay" = 300;
"dom.event.contextmenu.enabled" = true;
"reader.parse-on-load.enabled" = false;
"media.webspeech.synth.enabled" = false;
"privacy.trackingprotection.enabled" = true;
"privacy.trackingprotection.fingerprinting.enabled" = true;
"privacy.trackingprotection.cryptomining.enabled" = true;
"privacy.trackingprotection.introCount" = 20;
"signon.rememberSignons" = false;
"xpinstall.whitelist.required" = false;
"xpinstall.signatures.required" = false;
"general.smoothScroll" = false;
"general.warnOnAboutConfig" = false;
};
};
};
};
}

View file

@ -1,135 +0,0 @@
{ config, pkgs, ... }: {
home.sessionVariables = {
BROWSER = "firefox";
};
programs.firefox = {
enable = true;
packageUnwrapped = pkgs.firefox-unwrapped;
wrapperConfig = {
extraPolicies = {
DisableAppUpdate = true;
};
};
profiles = {
main = {
id = 0;
isDefault = true;
settings = {
# Derived from https://github.com/arcnmx/home/blob/9eb1cd4dd43883e1a0c6a2a55c00d7c3bede1776/cfg/firefox/default.nix#L7
# and https://git.ztn.sh/zotan/snowleopard/src/branch/dev/assets/prefs.js
"browser.download.dir" = "${config.xdg.userDirs.absolute.download}";
"services.sync.engine.prefs" = false;
"services.sync.engine.prefs.modified" = false;
"services.sync.engine.passwords" = false;
"services.sync.declinedEngines" = "passwords,adblockplus,prefs";
"media.eme.enabled" = true; # whee drm
"gfx.webrender.all.qualified" = true;
"gfx.webrender.all" = true;
"webgl.enable-draft-extensions" = true;
"layers.acceleration.force-enabled" = true;
"gfx.canvas.azure.accelerated" = true;
"browser.ctrlTab.recentlyUsedOrder" = false;
"privacy.resistFingerprinting.block_mozAddonManager" = true;
"extensions.webextensions.restrictedDomains" = "";
"browser.shell.checkDefaultBrowser" = false;
"spellchecker.dictionary" = "en-CA";
"ui.context_menus.after_mouseup" = true;
"browser.warnOnQuit" = false;
"browser.quitShortcut.disabled" = true;
"browser.startup.homepage" = "about:blank";
"browser.contentblocking.category" = "strict";
"browser.discovery.enabled" = false;
"browser.tabs.multiselect" = true;
"browser.tabs.remote.separatedMozillaDomains" = "";
"browser.tabs.remote.separatePrivilegedContentProcess" = false;
"browser.tabs.remote.separatePrivilegedMozillaWebContentProcess" = false;
"browser.tabs.unloadOnLowMemory" = true;
"browser.tabs.closeWindowWithLastTab" = false;
"browser.newtab.privateAllowed" = true;
"browser.newtabpage.enabled" = false;
"browser.urlbar.placeholderName" = "";
"extensions.privatebrowsing.notification" = false;
"browser.startup.page" = 3;
"devtools.chrome.enabled" = true;
#"devtools.debugger.remote-enabled" = true;
"devtools.inspector.showUserAgentStyles" = true;
"services.sync.prefs.sync.privacy.donottrackheader.value" = false;
"services.sync.prefs.sync.browser.safebrowsing.malware.enabled" = false;
"services.sync.prefs.sync.browser.safebrowsing.phishing.enabled" = false;
"app.shield.optoutstudies.enabled" = true;
"datareporting.healthreport.uploadEnabled" = false;
"datareporting.policy.dataSubmissionEnabled" = false;
"datareporting.sessions.current.clean" = true;
"devtools.onboarding.telemetry.logged" = false;
"toolkit.telemetry.updatePing.enabled" = false;
"browser.ping-centre.telemetry" = false;
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons" = false;
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features" = false;
"toolkit.telemetry.bhrPing.enabled" = false;
"toolkit.telemetry.enabled" = false;
"toolkit.telemetry.firstShutdownPing.enabled" = false;
"toolkit.telemetry.hybridContent.enabled" = false;
"toolkit.telemetry.newProfilePing.enabled" = false;
"toolkit.telemetry.reportingpolicy.firstRun" = false;
"toolkit.telemetry.shutdownPingSender.enabled" = false;
"toolkit.telemetry.unified" = false;
"toolkit.telemetry.server" = "";
"toolkit.telemetry.archive.enabled" = false;
"toolkit.telemetry.coverage.opt-out" = true;
"toolkit.coverage.enabled" = false;
"toolkit.coverage.endpoint.base" = "";
"toolkit.crashreporter.infoURL" = "";
"browser.onboarding.enabled" = false;
"experiments.enabled" = false;
"network.allow-experiments" = false;
"social.directories" = "";
"social.remote-install.enabled" = false;
"social.toast-notifications.enabled" = false;
"social.whitelist" = "";
"browser.safebrowsing.malware.enabled" = false;
"browser.safebrowsing.blockedURIs.enabled" = false;
"browser.safebrowsing.downloads.enabled" = false;
"browser.safebrowsing.downloads.remote.enabled" = false;
"browser.safebrowsing.phishing.enabled" = false;
"dom.ipc.plugins.reportCrashURL" = false;
"breakpad.reportURL" = "";
"beacon.enabled" = false;
"browser.search.geoip.url" = "";
"browser.search.region" = "CA";
"browser.search.suggest.enabled" = false;
"browser.search.update" = false;
"browser.selfsupport.url" = "";
"extensions.getAddons.cache.enabled" = false;
"extensions.pocket.enabled" = true;
"geo.enabled" = false;
"geo.wifi.uri" = false;
"keyword.enabled" = false;
"media.getusermedia.screensharing.enabled" = false;
"media.video_stats.enabled" = false;
"device.sensors.enabled" = false;
"dom.battery.enabled" = false;
"dom.enable_performance" = false;
"network.dns.disablePrefetch" = false;
"network.http.speculative-parallel-limit" = 8;
"network.predictor.cleaned-up" = true;
"network.predictor.enabled" = true;
"network.prefetch-next" = true;
"security.dialog_enable_delay" = 300;
"dom.event.contextmenu.enabled" = true;
"reader.parse-on-load.enabled" = false;
"media.webspeech.synth.enabled" = false;
"privacy.trackingprotection.enabled" = true;
"privacy.trackingprotection.fingerprinting.enabled" = true;
"privacy.trackingprotection.cryptomining.enabled" = true;
"privacy.trackingprotection.introCount" = 20;
"signon.rememberSignons" = false;
"xpinstall.whitelist.required" = false;
"xpinstall.signatures.required" = false;
"general.smoothScroll" = false;
"general.warnOnAboutConfig" = false;
};
};
};
};
}

View file

@ -1,7 +1,11 @@
{ pkgs, lib, ... }: let
{
pkgs,
lib,
...
}: let
inherit (lib.attrsets) mapAttrsToList;
in {
# TODO: remove the libs
# TODO: remove the libs
programs.mpv = {
enable = true;
scripts = with pkgs.mpvScripts; [
@ -15,20 +19,21 @@ in {
vo = "gpu";
volume-max = 200;
opengl-waitvsync = true;
script-opts = builtins.concatStringsSep ","
script-opts =
builtins.concatStringsSep ","
(mapAttrsToList (k: v: "${k}=${builtins.toString v}") {
ytdl_hook-ytdl_path = "${pkgs.yt-dlp}/bin/yt-dlp";
osc-layout = "slimbox";
osc-vidscale = "no";
osc-deadzonesize = 0.75;
osc-minmousemove = 4;
osc-hidetimeout = 2000;
osc-valign = 0.9;
osc-timems = "yes";
osc-seekbarstyle = "knob";
osc-seekbarkeyframes = "no";
osc-seekrangestyle = "slider";
});
ytdl_hook-ytdl_path = "${pkgs.yt-dlp}/bin/yt-dlp";
osc-layout = "slimbox";
osc-vidscale = "no";
osc-deadzonesize = 0.75;
osc-minmousemove = 4;
osc-hidetimeout = 2000;
osc-valign = 0.9;
osc-timems = "yes";
osc-seekbarstyle = "knob";
osc-seekbarkeyframes = "no";
osc-seekrangestyle = "slider";
});
};
};

View file

@ -15,8 +15,7 @@
# Chat
discord
gtkcord4
nheko # Matrix
fractal # Matrix
tdesktop # Telegram
dino # XMPP
signal-desktop

View file

@ -4,8 +4,8 @@ _: {
extraConfig = ''
local wezterm = require 'wezterm';
return {
font = wezterm.font "Iosevka",
font_size = 11.0,
font = wezterm.font "Monaspace Krypton",
font_size = 10.0,
check_for_updates = false,
show_update_window = false,
enable_tab_bar = true

View file

@ -2,11 +2,5 @@
programs.starship = {
enable = true;
enableZshIntegration = true;
settings = {
"custom.kubeprompt" = {
command = ''${pkgs.kubeprompt}/bin/kubeprompt -f default'';
when = ''test "$KUBECONFIG" '';
};
};
};
}