mirror of
https://github.com/Nexoniarz/nexoniarz-config-nixos-laptop.git
synced 2026-11-03 04:24:27 +00:00
- nexopass and nexopass-gui (scripts.nix, with the wordlist and icon) - AppImages run directly through appimage-run's binfmt (apps.nix) - Firefox: full fingerprinting protection except forced light mode, Accept-Language en-US, and its own font list without corefonts - README updated to match Left out as PC-only: OpenRGB, acpi_enforce_resources=lax, the Vega 8/RTX 3060 Ti graphics setup. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
56 lines
2.5 KiB
Nix
56 lines
2.5 KiB
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
let
|
|
vaultToggle = pkgs.writeShellScriptBin "vault-toggle" (builtins.readFile ./scripts/vault-toggle.sh);
|
|
stripMetadata = pkgs.writeShellScriptBin "strip-metadata" (builtins.readFile ./scripts/strip-metadata.sh);
|
|
brightnessCtl = pkgs.writeShellScriptBin "brightness-ctl" (builtins.readFile ./scripts/brightness-ctl.sh);
|
|
hotspotStart = pkgs.writeShellScriptBin "hotspot-start" (builtins.readFile ./scripts/hotspot-start.sh);
|
|
systemTelemetry = pkgs.writeShellScriptBin "system-telemetry" (builtins.readFile ./scripts/system-telemetry.sh);
|
|
weatherFetch = pkgs.writeShellScriptBin "weather-fetch" (builtins.readFile ./scripts/weather-fetch.sh);
|
|
|
|
nexopass = pkgs.writeShellApplication {
|
|
name = "nexopass";
|
|
runtimeInputs = with pkgs; [ libargon2 gnupg wl-clipboard keyutils coreutils gnused ];
|
|
runtimeEnv.NEXOPASS_WORDLIST = "${./scripts/eff_large_wordlist.txt}";
|
|
text = builtins.readFile ./scripts/nexopass.sh;
|
|
};
|
|
|
|
# NexoPass window (github.com/Nexoniarz/NexoPass). Shares accounts, site
|
|
# lists and the app password with the nexopass command above.
|
|
nexopassGuiVersion = "1.3.1";
|
|
nexopassGuiJar = pkgs.fetchurl {
|
|
url = "https://github.com/Nexoniarz/NexoPass/releases/download/v${nexopassGuiVersion}/NexoPass-linux-x64-${nexopassGuiVersion}.jar";
|
|
hash = "sha256-WeUixuz+aLPsMDj+a0Gs09gfikMYYCf8uuZIN89CqVo=";
|
|
};
|
|
nexopassGuiLibs = with pkgs; [ libGL libx11 libxext libxrender libxtst libxi libxrandr libxcursor fontconfig freetype ];
|
|
nexopassGuiDesktop = pkgs.makeDesktopItem {
|
|
name = "nexopass";
|
|
desktopName = "NexoPass";
|
|
comment = "Passwords derived from a master";
|
|
exec = "nexopass-gui";
|
|
icon = "nexopass";
|
|
categories = [ "Utility" "Security" ];
|
|
};
|
|
nexopassGui = pkgs.runCommand "nexopass-gui-${nexopassGuiVersion}" { nativeBuildInputs = [ pkgs.makeWrapper ]; } ''
|
|
makeWrapper ${pkgs.jdk17}/bin/java $out/bin/nexopass-gui \
|
|
--add-flags "-Xmx1g -jar ${nexopassGuiJar}" \
|
|
--prefix LD_LIBRARY_PATH : /run/opengl-driver/lib:${lib.makeLibraryPath nexopassGuiLibs}
|
|
install -Dm644 ${./scripts/nexopass.png} $out/share/icons/hicolor/512x512/apps/nexopass.png
|
|
install -Dm644 ${nexopassGuiDesktop}/share/applications/nexopass.desktop $out/share/applications/nexopass.desktop
|
|
'';
|
|
in
|
|
{
|
|
environment.systemPackages = with pkgs; [
|
|
gocryptfs
|
|
exiftool
|
|
jq
|
|
vaultToggle
|
|
stripMetadata
|
|
brightnessCtl
|
|
hotspotStart
|
|
systemTelemetry
|
|
weatherFetch
|
|
nexopass
|
|
nexopassGui
|
|
];
|
|
}
|