From 5b8b8f8cab6ffc158c97b2ff5ed5f1c12c944d2e Mon Sep 17 00:00:00 2001 From: clerie Date: Sun, 17 Mar 2024 14:24:06 +0100 Subject: [PATCH] pkgs/chromium-incognito: add package --- flake.nix | 1 + hosts/krypton/programs.nix | 1 + pkgs/chromium-incognito/default.nix | 36 +++++++++++++++++++++++++++++ pkgs/overlay.nix | 1 + 4 files changed, 39 insertions(+) create mode 100644 pkgs/chromium-incognito/default.nix diff --git a/flake.nix b/flake.nix index 65d6676..c20ec46 100644 --- a/flake.nix +++ b/flake.nix @@ -112,6 +112,7 @@ }; in { inherit (pkgs) + chromium-incognito iot-data nixfiles-add-secret nixfiles-auto-install diff --git a/hosts/krypton/programs.nix b/hosts/krypton/programs.nix index 44b7585..2284729 100644 --- a/hosts/krypton/programs.nix +++ b/hosts/krypton/programs.nix @@ -25,6 +25,7 @@ nmap okular + chromium-incognito ]; # Wireshark diff --git a/pkgs/chromium-incognito/default.nix b/pkgs/chromium-incognito/default.nix new file mode 100644 index 0000000..d8b9db0 --- /dev/null +++ b/pkgs/chromium-incognito/default.nix @@ -0,0 +1,36 @@ +{ pkgs, ... }: + +let + chromium-incognito-wrapper = pkgs.writeScriptBin "chromium" '' + ${pkgs.ungoogled-chromium}/bin/chromium --incognito "$@" + ''; + +in pkgs.stdenv.mkDerivation { + pname = "chromium-incognito"; + version = "0.1.0"; + src = pkgs.writeTextDir "chromium-incognito.desktop" '' + [Desktop Entry] + Version=1.0 + Name=Chromium Incognito + Exec=${chromium-incognito-wrapper}/bin/chromium %U + StartupNotify=true + Terminal=false + Icon=chromium + Type=Application + Categories=Network;WebBrowser; + MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https; + Actions=new-private-window; + + [Desktop Action new-private-window] + Name=New Incognito Window + Exec=${chromium-incognito-wrapper}/bin/chromium + ''; + buildPhase = '' + mkdir -p $out/bin + ln -s ${chromium-incognito-wrapper}/bin/chromium $out/bin + install -D chromium-incognito.desktop $out/share/applications/chromium-incognito.desktop + ln -s ${pkgs.ungoogled-chromium}/share/icons $out/share + ''; + + meta.mainProgram = "chromium"; +} diff --git a/pkgs/overlay.nix b/pkgs/overlay.nix index e22f81c..59705f6 100644 --- a/pkgs/overlay.nix +++ b/pkgs/overlay.nix @@ -1,4 +1,5 @@ final: prev: { + chromium-incognito = final.callPackage ./chromium-incognito {}; iot-data = final.python3.pkgs.callPackage ./iot-data {}; nixfiles-add-secret = final.callPackage ./nixfiles/nixfiles-add-secret.nix {}; nixfiles-auto-install = final.callPackage ./nixfiles/nixfiles-auto-install.nix {};