commit b7f2bf438995f4afe2ff376ec6a040fde71980f9
parent ce2c0b4f04e48b4da90c90097ad9957921fa3dd8
Author: maydayv7 <maydayv7@gmail.com>
Date: Wed, 24 Jun 2026 21:10:25 +0530
feat: Keepass + Discord
Diffstat:
14 files changed, 105 insertions(+), 76 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
@@ -2,6 +2,7 @@
### June
+- Use Discord instead of Vesktop
- Script to update Minecraft mods
- Drop manually-packaged `wine` applications
- Robust GitHub Actions CI
diff --git a/files/_module.nix b/files/_module.nix
@@ -87,6 +87,9 @@ in {
extension = ".png";
};
+ # Password Manager
+ keepassxc = readFile ./keepassxc.ini;
+
# Logseq Notes
logseq = {
settings = ./logseq/settings;
diff --git a/files/keepassxc.ini b/files/keepassxc.ini
@@ -0,0 +1,18 @@
+[General]
+ConfigVersion=2
+
+[Browser]
+Enabled=true
+UpdateBinaryPath=false
+
+[GUI]
+ApplicationTheme=classic
+Language=en_US
+MinimizeOnClose=true
+MinimizeOnStartup=false
+MinimizeToTray=true
+ShowTrayIcon=true
+TrayIconAppearance=monochrome-light
+
+[Security]
+LockDatabaseIdle=false
diff --git a/flake.lock b/flake.lock
@@ -1613,11 +1613,11 @@
]
},
"locked": {
- "lastModified": 1782135344,
- "narHash": "sha256-JGxXmcTsHWSXvnveDLMT8xX3E9ldd+jumgtJUdGoR0M=",
+ "lastModified": 1782228865,
+ "narHash": "sha256-vnmo148gkbMNtyNoWYzcPOKCoaAq+zY69WE2xgMox/I=",
"owner": "noctalia-dev",
"repo": "noctalia",
- "rev": "c8d24dfa450f8b4eca21abcab397b3555e5bb890",
+ "rev": "efb96e41fdac7cb3e5bcc9864d1bd0118da2470f",
"type": "github"
},
"original": {
diff --git a/modules/apps/auth.nix b/modules/apps/auth.nix
@@ -1,6 +1,7 @@
## Auth Credential Programs ##
{config, ...}: let
inherit (config) util;
+ inherit (config.flake) files;
in {
flake.modules.homeManager.auth = {pkgs, ...}: {
home.packages = [pkgs.ente-auth];
@@ -13,10 +14,17 @@ in {
password = ["org.keepassxc.KeePassXC.desktop"];
};
- home.persist.directories = [
- ".config/keepassxc"
- ".cache/keepassxc"
- ".local/share/io.ente.auth"
- ];
+ home = {
+ persist.directories = [
+ ".cache/keepassxc"
+ ".local/share/io.ente.auth"
+ ];
+
+ file.".config/keepassxc/keepassxc.ini" = {
+ mutable = true;
+ force = true;
+ text = files.keepassxc;
+ };
+ };
};
}
diff --git a/modules/apps/discord.nix b/modules/apps/discord.nix
@@ -1,7 +1,6 @@
## Discord Configuration ##
{inputs, ...}: {
flake.modules.homeManager.discord = {
- pkgs,
lib,
osConfig ? {},
...
@@ -9,13 +8,12 @@
isGnome = osConfig.services.desktopManager.gnome.enable or false;
in {
imports = [inputs.nixcord.homeModules.nixcord];
- home.persist.directories = [".config/vesktop"];
+ home.persist.directories = [".config/discord"];
programs.nixcord = {
enable = true;
- discord.enable = false;
- vesktop = {
+ discord = {
enable = true;
- package = pkgs.vesktop;
+ vencord.enable = true;
};
# Theming
diff --git a/modules/apps/internet.nix b/modules/apps/internet.nix
@@ -2,21 +2,42 @@
{config, ...}: let
inherit (config) util;
in {
- flake.modules.homeManager.internet = {pkgs, ...}: {
+ flake.modules.homeManager.internet = {
+ config,
+ lib,
+ pkgs,
+ ...
+ }: {
programs = {
# Browser
brave = {
enable = true;
- extensions = [
- "djflhoibgkdhkhhcedjiklpkjnoahfmg" # User Agent Switcher
- "lckanjgmijmafbedllaakclkaicjfmnk" # ClearURLs
- "oofgbpoabipfcfjapgnbbjjaenockbdp" # SetupVPN
- "jghecgabfgfdldnmbfkhmffcabddioke" # Volume Booster
- "jaioibhbkffompljnnipmpkeafhpicpd" # Tab Auto Refresh
- "eimadpbcbfnmbkopoojfekhnkhdbieeh" # Dark Reader
- "clngdbkpkpeebahjckkjfobafhncgmne" # Stylus
- "oboonakemofpalcgghocfoadofidjkkk" # KeePassXC
- ];
+ extensions =
+ [
+ "djflhoibgkdhkhhcedjiklpkjnoahfmg" # User Agent Switcher
+ "lckanjgmijmafbedllaakclkaicjfmnk" # ClearURLs
+ "oofgbpoabipfcfjapgnbbjjaenockbdp" # SetupVPN
+ "jghecgabfgfdldnmbfkhmffcabddioke" # Volume Booster
+ "jaioibhbkffompljnnipmpkeafhpicpd" # Tab Auto Refresh
+ "eimadpbcbfnmbkopoojfekhnkhdbieeh" # Dark Reader
+ "clngdbkpkpeebahjckkjfobafhncgmne" # Stylus
+ ]
+ # KeePassXC
+ ++ lib.optional config.programs.keepassxc.enable "oboonakemofpalcgghocfoadofidjkkk";
+ nativeMessagingHosts =
+ lib.optional config.programs.keepassxc.enable
+ (pkgs.writeTextDir
+ "etc/chromium/native-messaging-hosts/org.keepassxc.keepassxc_browser.json"
+ (builtins.toJSON {
+ name = "org.keepassxc.keepassxc_browser";
+ description = "KeePassXC integration with native messaging support";
+ path = "${pkgs.keepassxc}/bin/keepassxc-proxy";
+ type = "stdio";
+ allowed_origins = [
+ "chrome-extension://oboonakemofpalcgghocfoadofidjkkk/"
+ "chrome-extension://pdffhmdngciaglkoonimfcmckehcpafo/"
+ ];
+ }));
};
# Mail Client
@@ -35,10 +56,10 @@ in {
};
home.packages = with pkgs; [
- unstable.karere
linux-wifi-hotspot
openfortivpn
teams-for-linux
+ zapzap
zoom-us
];
@@ -49,9 +70,8 @@ in {
".cache/BraveSoftware"
".thunderbird"
".cache/thunderbird"
- ".config/karere"
- ".local/share/karere"
- ".cache/karere"
+ ".local/share/ZapZap"
+ ".cache/ZapZap"
".zoom"
".cache/zoom"
];
diff --git a/modules/desktop/gnome/_settings/apps.nix b/modules/desktop/gnome/_settings/apps.nix
@@ -130,10 +130,10 @@ lib.mkIf (osConfig != null) (
name = "Social";
apps = [
"Zoom.desktop"
- "io.github.tobagin.karere.desktop"
+ "com.rtosta.zapzap.desktop"
"teams-for-linux.desktop"
"org.gnome.Fractal.desktop"
- "vesktop.desktop"
+ "discord.desktop"
];
};
diff --git a/modules/desktop/hyprland/_features/shell.nix b/modules/desktop/hyprland/_features/shell.nix
@@ -59,6 +59,7 @@
center = ["launcher" "clock" "control-center"];
end = [
"group:g2"
+ "recorder"
"clipboard"
"bluetooth"
"network"
@@ -103,6 +104,7 @@
clock.anchor = true;
control-center.glyph = "menu";
network.show_label = false;
+ recorder.type = "noctalia/screen_recorder:recorder";
media = {
hide_when_no_media = true;
title_scroll = "on_hover";
@@ -347,7 +349,10 @@
jq = lib.getExe pkgs.jq;
socket2 = "${lib.getExe pkgs.socat} -u UNIX-CONNECT:$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock -";
in {
- "noctalia/screen_recorder".copy_to_clipboard = true;
+ "noctalia/screen_recorder" = {
+ copy_to_clipboard = true;
+ video_source = "focused";
+ };
"maydayv7/hyprland-submap".command = socket2;
"maydayv7/hyprland-layout" = {
command = socket2;
diff --git a/modules/hardware/gpu.nix b/modules/hardware/gpu.nix
@@ -45,13 +45,8 @@ _: {
services.xserver.videoDrivers = mkForce ["nvidia"];
environment = {
systemPackages = [pkgs.btop-cuda];
- variables = mkIf mode {
- "__GLX_VENDOR_LIBRARY_NAME" = "nvidia";
- "LIBVA_DRIVER_NAME" = "nvidia";
- };
- sessionVariables = {
- "GAMEMODERUNEXEC" = mkIf (hybrid && gamemode && !mode) "nvidia-offload";
- };
+ variables."__GLX_VENDOR_LIBRARY_NAME" = mkIf mode "nvidia";
+ sessionVariables."GAMEMODERUNEXEC" = mkIf (hybrid && gamemode && !mode) "nvidia-offload";
};
boot = {
diff --git a/modules/hardware/mobile.nix b/modules/hardware/mobile.nix
@@ -5,8 +5,10 @@ _: {
services.usbmuxd.enable = true;
environment.systemPackages = with pkgs; [
android-tools
- libimobiledevice
scrcpy
+
+ ifuse
+ libimobiledevice
];
};
}
diff --git a/packages/overlays/brave.nix b/packages/overlays/brave.nix
@@ -1,13 +1,13 @@
final: prev: {
# Brave Browser Flags
brave = prev.brave.overrideAttrs (old: {
- installPhase =
- old.installPhase
+ postFixup =
+ (old.postFixup or "")
+ ''
- exe="$out/bin/brave"
- fix=" --enable-features=TouchpadOverscrollHistoryNavigation --gtk-version=4"
- substituteInPlace $out/share/applications/{brave-browser,com.brave.Browser}.desktop \
- --replace-fail $exe "$exe$fix"
+ flags="--enable-features="
+ fix="--gtk-version=4 --enable-features=TouchpadOverscrollHistoryNavigation,"
+ substituteInPlace $out/bin/brave \
+ --replace-fail "$flags" "$fix"
'';
});
}
diff --git a/packages/overlays/copilot.nix b/packages/overlays/copilot.nix
@@ -0,0 +1,10 @@
+final: prev: {
+ # GitHub Copilot CLI
+ github-copilot-cli = prev.github-copilot-cli.overrideAttrs (_: rec {
+ version = "1.0.64";
+ src = prev.fetchurl {
+ url = "https://github.com/github/copilot-cli/releases/download/v${version}/github-copilot-${version}-linux-x64.tgz";
+ hash = "sha256-p2I4BHdW9wRLP8ns7wmuWBwUW2RGOuARgDtItMovxGA=";
+ };
+ });
+}
diff --git a/packages/patches/copilot.patch b/packages/patches/copilot.patch
@@ -1,31 +0,0 @@
---- a/pkgs/by-name/gi/github-copilot-cli/package.nix
-+++ b/pkgs/by-name/gi/github-copilot-cli/package.nix
-@@ -15,7 +15,7 @@
-
- stdenv.mkDerivation (finalAttrs: {
- pname = "github-copilot-cli";
-- version = "1.0.26";
-+ version = "1.0.61";
-
- # GitHub provide platform-specific SEA binaries as well as a "universal"
- # package. Use the universal package as it gives us a bit more flexibility
-@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
- # about how paths should be set up which don't reliably hold when using Nix.
- src = fetchurl {
- url = "https://github.com/github/copilot-cli/releases/download/v${finalAttrs.version}/github-copilot-${finalAttrs.version}.tgz";
-- hash = "sha256-zNO0clQRfgw6CX9K8NaJXsoOhhNjBfK7KAr0AoL7Oqo=";
-+ hash = "sha256-8Lks8lHa5XF9ZrC+fU/9VlzD1W32MbRZ7PZtL5YWLTA=";
- };
-
- nativeBuildInputs = [
-@@ -58,6 +58,10 @@ stdenv.mkDerivation (finalAttrs: {
- '';
-
- postInstall = ''
-+ # Upstream bundles linuxmusl prebuilds in the universal tarball; they are
-+ # not needed on glibc systems and make autoPatchelf fail on musl libc deps.
-+ find "$out"/lib/github-copilot-cli -depth -path '*/linuxmusl-*' -exec rm -rf '{}' +
-+
- makeWrapper ${nodejs}/bin/node "$out"/bin/copilot \
- --add-flag "$out"/lib/github-copilot-cli/index.js \
- --add-flag --no-auto-update \