Kieran's opinionated (and probably slightly dumb) nix config

feat: add vesktop

dunkirk.sh 22f4c0b3 e7fcfdcd

verified
Changed files
+126 -46
home-manager
app
dots
machines
moonlark
wm
hyprland
moonlark
+49
home-manager/app/discord.nix
···
···
+
{
+
...
+
}: {
+
programs.vesktop = {
+
settings = {
+
minimizeToTray = true;
+
discordBranch = "stable";
+
arRPC = true;
+
splashColor = "oklch(0.75 0 0)";
+
splashBackground = "oklch(0.19 0 0)";
+
disableSmoothScroll = false;
+
};
+
vencord = {
+
settings = {
+
autoUpdate = true;
+
autoUpdateNotification = true;
+
useQuickCss = true;
+
themeLinks = [
+
"https://refact0r.github.io/system24/build/system24.css"
+
];
+
enabledThemes = [];
+
plugins = {
+
FakeNitro = {
+
enabled = true;
+
enableStickerBypass = true;
+
enableStreamQualityBypass = true;
+
enableEmojiBypass = true;
+
transformEmojis = true;
+
transformStickers = true;
+
};
+
MessageLogger = {
+
enabled = true;
+
collapseDeleted = false;
+
deleteStyle = "text";
+
};
+
BetterFolders = {
+
enabled = true;
+
sidebar = true;
+
showFolderIcon = 1;
+
};
+
SpotifyCrack.enabled = true;
+
YoutubeAdblock.enabled = true;
+
AlwaysTrust.enabled = true;
+
NoTrack.enabled = true;
+
};
+
};
+
};
+
};
+
}
+1
home-manager/dots/hyprland.conf
···
exec-once = nm-applet
exec-once = clipse -listen
exec-once=[workspace 8 silent] slack
exec-once=[workspace 1 silent] firefox
···
exec-once = nm-applet
exec-once = clipse -listen
+
exec-once=[workspace 7 silent] vesktop
exec-once=[workspace 8 silent] slack
exec-once=[workspace 1 silent] firefox
+1
home-manager/machines/moonlark/default.nix
···
../../app/irssi.nix
../../app/qutebrowser.nix
../../app/gh-dash.nix
];
nixpkgs = {
···
../../app/irssi.nix
../../app/qutebrowser.nix
../../app/gh-dash.nix
+
# ../../app/discord.nix
];
nixpkgs = {
+74 -46
home-manager/wm/hyprland/waybar.nix
···
lib,
pkgs,
...
-
}: let
-
commonDeps = with pkgs; [coreutils gnugrep systemd];
# Function to simplify making waybar outputs
-
mkScript = {
-
name ? "script",
-
deps ? [],
-
script ? "",
-
}:
-
lib.getExe (pkgs.writeShellApplication {
-
inherit name;
-
text = script;
-
runtimeInputs = commonDeps ++ deps;
-
});
# Specialized for JSON outputs
-
mkScriptJson = {
-
name ? "script",
-
deps ? [],
-
pre ? "",
-
text ? "",
-
tooltip ? "",
-
alt ? "",
-
class ? "",
-
percentage ? "",
-
}:
mkScript {
inherit name;
-
deps = [pkgs.jq] ++ deps;
script = ''
${pre}
jq -cn \
···
'{text:$text,tooltip:$tooltip,alt:$alt,class:$class,percentage:$percentage}'
'';
};
-
in {
# Let it try to start a few more times
systemd.user.services.waybar = {
Unit.StartLimitBurst = 30;
···
programs.waybar = {
enable = true;
package = pkgs.waybar.overrideAttrs (oa: {
-
mesonFlags = (oa.mesonFlags or []) ++ ["-Dexperimental=true"];
});
systemd.enable = true;
settings = {
···
height = 46;
margin = "6";
position = "top";
-
modules-left =
-
[
-
"custom/os"
-
"hyprland/workspaces"
-
"hyprland/submap"
-
];
modules-center = [
"cpu"
···
activated = "󰅶 ";
deactivated = "󰾫 ";
};
-
tooltip-format-activated =
-
"Caffinated! device will not sleep.";
-
tooltip-format-deactivated =
-
"no caffeine :( device will sleep when not in use.";
};
battery = {
···
bat = "BAT1";
# full-at = 94;
format = "{icon} {capacity}%";
-
format-icons = [ "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹" ];
states = {
battery-10 = 10;
battery-20 = 20;
···
};
"hyprland/workspaces" = {
-
format = "{icon} {windows}";
-
window-rewrite-default = " ";
window-rewrite-seperator = "";
window-rewrite = {
"title<.*github.*>" = "󰊤 ";
···
"class<kicad>" = " ";
"class<dev.zed.Zed>" = " ";
"class<chromium-browser>" = " ";
};
};
network = {
interval = 3;
format-wifi = "{icon} {essid}";
-
format-icons = [ "󰤟" "󰤢" "󰤥" "󰤨" ];
format-ethernet = "󰈁 Connected";
format-disconnected = "󱐤 ";
tooltip-format = ''
···
Up: {bandwidthUpBits}
Down: {bandwidthDownBits}'';
on-click = mkScript {
-
deps = [pkgs.wpa_supplicant pkgs.notify-desktop];
script = ''wpa_cli reconnect; notify-desktop "reconnecting to wifi" -t 1200'';
};
};
···
};
"custom/hostname" = {
-
exec = mkScript {script = ''echo "$USER@$HOSTNAME"'';};
-
on-click = mkScript {script = "systemctl --user restart waybar";};
};
privacy = {
···
return-type = "json";
interval = 2;
exec = mkScript {
-
deps = [pkgs.jq pkgs.psmisc];
script = ''
# get programs using the video0 endpoint
PIDS=$(fuser /dev/video0 2>/dev/null || echo "")
···
# x y z -> top, horizontal, bottom
# w x y z -> top, right, bottom, left
style =
-
/*
-
css
-
*/
''
* {
font-family: Fira Sans, FiraCode Nerd Font;
···
lib,
pkgs,
...
+
}:
+
let
+
commonDeps = with pkgs; [
+
coreutils
+
gnugrep
+
systemd
+
];
# Function to simplify making waybar outputs
+
mkScript =
+
{
+
name ? "script",
+
deps ? [ ],
+
script ? "",
+
}:
+
lib.getExe (
+
pkgs.writeShellApplication {
+
inherit name;
+
text = script;
+
runtimeInputs = commonDeps ++ deps;
+
}
+
);
# Specialized for JSON outputs
+
mkScriptJson =
+
{
+
name ? "script",
+
deps ? [ ],
+
pre ? "",
+
text ? "",
+
tooltip ? "",
+
alt ? "",
+
class ? "",
+
percentage ? "",
+
}:
mkScript {
inherit name;
+
deps = [ pkgs.jq ] ++ deps;
script = ''
${pre}
jq -cn \
···
'{text:$text,tooltip:$tooltip,alt:$alt,class:$class,percentage:$percentage}'
'';
};
+
in
+
{
# Let it try to start a few more times
systemd.user.services.waybar = {
Unit.StartLimitBurst = 30;
···
programs.waybar = {
enable = true;
package = pkgs.waybar.overrideAttrs (oa: {
+
mesonFlags = (oa.mesonFlags or [ ]) ++ [ "-Dexperimental=true" ];
});
systemd.enable = true;
settings = {
···
height = 46;
margin = "6";
position = "top";
+
modules-left = [
+
"custom/os"
+
"hyprland/workspaces"
+
"hyprland/submap"
+
];
modules-center = [
"cpu"
···
activated = "󰅶 ";
deactivated = "󰾫 ";
};
+
tooltip-format-activated = "Caffinated! device will not sleep.";
+
tooltip-format-deactivated = "no caffeine :( device will sleep when not in use.";
};
battery = {
···
bat = "BAT1";
# full-at = 94;
format = "{icon} {capacity}%";
+
format-icons = [
+
"󰁺"
+
"󰁻"
+
"󰁼"
+
"󰁽"
+
"󰁾"
+
"󰁿"
+
"󰂀"
+
"󰂁"
+
"󰂂"
+
"󰁹"
+
];
states = {
battery-10 = 10;
battery-20 = 20;
···
};
"hyprland/workspaces" = {
+
format = "{icon} {windows}";
+
window-rewrite-default = " ";
window-rewrite-seperator = "";
window-rewrite = {
"title<.*github.*>" = "󰊤 ";
···
"class<kicad>" = " ";
"class<dev.zed.Zed>" = " ";
"class<chromium-browser>" = " ";
+
"class<vesktop>" = " ";
};
};
network = {
interval = 3;
format-wifi = "{icon} {essid}";
+
format-icons = [
+
"󰤟"
+
"󰤢"
+
"󰤥"
+
"󰤨"
+
];
format-ethernet = "󰈁 Connected";
format-disconnected = "󱐤 ";
tooltip-format = ''
···
Up: {bandwidthUpBits}
Down: {bandwidthDownBits}'';
on-click = mkScript {
+
deps = [
+
pkgs.wpa_supplicant
+
pkgs.notify-desktop
+
];
script = ''wpa_cli reconnect; notify-desktop "reconnecting to wifi" -t 1200'';
};
};
···
};
"custom/hostname" = {
+
exec = mkScript { script = ''echo "$USER@$HOSTNAME"''; };
+
on-click = mkScript { script = "systemctl --user restart waybar"; };
};
privacy = {
···
return-type = "json";
interval = 2;
exec = mkScript {
+
deps = [
+
pkgs.jq
+
pkgs.psmisc
+
];
script = ''
# get programs using the video0 endpoint
PIDS=$(fuser /dev/video0 2>/dev/null || echo "")
···
# x y z -> top, horizontal, bottom
# w x y z -> top, right, bottom, left
style =
+
# css
''
* {
font-family: Fira Sans, FiraCode Nerd Font;
+1
moonlark/configuration.nix
···
pkgs.clipse
pkgs.lazygit
pkgs.gh-dash
];
programs.nh = {
···
pkgs.clipse
pkgs.lazygit
pkgs.gh-dash
+
pkgs.vesktop
];
programs.nh = {