diff options
| -rw-r--r-- | flake.lock | 23 | ||||
| -rw-r--r-- | flake.nix | 5 | ||||
| -rw-r--r-- | home/ebisu/fortune/multimedia/browser/default.nix | 4 | ||||
| -rw-r--r-- | home/ebisu/fortune/nix/development/tools.nix | 2 | ||||
| -rw-r--r-- | pkgs/zen-browser-bin.nix | 128 |
5 files changed, 132 insertions, 30 deletions
@@ -1363,8 +1363,7 @@ "pywal-nix": "pywal-nix", "spicetify-nix": "spicetify-nix", "systems": "systems_4", - "tailray": "tailray", - "zen-browser": "zen-browser" + "tailray": "tailray" } }, "rust-analyzer-src": { @@ -1600,26 +1599,6 @@ "repo": "xdg-desktop-portal-hyprland", "type": "github" } - }, - "zen-browser": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1726001766, - "narHash": "sha256-ADvEWfo0AuHR06ah1nnzOyhsG05/b5QpUc7vFNbiEfM=", - "owner": "MarceColl", - "repo": "zen-browser-flake", - "rev": "06505a088396e2c0b9ad100302502783a6bcdb40", - "type": "github" - }, - "original": { - "owner": "MarceColl", - "repo": "zen-browser-flake", - "type": "github" - } } }, "root": "root", @@ -51,11 +51,6 @@ systems.url = "github:nix-systems/default"; chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; - zen-browser = { - url = "github:MarceColl/zen-browser-flake"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - tailray = { url = "github:NotAShelf/tailray"; inputs.nixpkgs.follows = "nixpkgs"; diff --git a/home/ebisu/fortune/multimedia/browser/default.nix b/home/ebisu/fortune/multimedia/browser/default.nix index 35bf2cd..03cd2bd 100644 --- a/home/ebisu/fortune/multimedia/browser/default.nix +++ b/home/ebisu/fortune/multimedia/browser/default.nix @@ -1,4 +1,4 @@ -{ pkgs, inputs, ... }: +{ pkgs, ... }: { imports = [ ./thorium.nix ]; @@ -11,7 +11,7 @@ ladybird web-ext tor-browser-bundle-bin - inputs.zen-browser.packages.${pkgs.system}.default + (pkgs.callPackage ../../../../../pkgs/zen-browser-bin.nix { }) epiphany ]; } diff --git a/home/ebisu/fortune/nix/development/tools.nix b/home/ebisu/fortune/nix/development/tools.nix index dff0f12..16b5d6b 100644 --- a/home/ebisu/fortune/nix/development/tools.nix +++ b/home/ebisu/fortune/nix/development/tools.nix @@ -11,7 +11,7 @@ devenv niv nixpkgs-hammering - # devbox + devbox compose2nix nix-update ]; diff --git a/pkgs/zen-browser-bin.nix b/pkgs/zen-browser-bin.nix new file mode 100644 index 0000000..aa53e96 --- /dev/null +++ b/pkgs/zen-browser-bin.nix @@ -0,0 +1,128 @@ +{ + stdenv, + lib, + fetchzip, + makeDesktopItem, + autoPatchelfHook, + wrapGAppsHook3, + copyDesktopItems, + gtk3, + alsa-lib, + dbus-glib, + xorg, + pciutils, + libva, + pipewire, + libglvnd, +}: +let + desktopItem = makeDesktopItem { + name = "zen-browser"; + desktopName = "Zen Browser"; + genericName = "Web Browser"; + categories = [ + "Network" + "WebBrowser" + ]; + keywords = [ + "internet" + "www" + "browser" + "web" + "explorer" + ]; + exec = "zen %u"; + icon = "zen"; + mimeTypes = [ + "text/html" + "text/xml" + "application/xhtml+xml" + "application/vnd.mozilla.xul+xml" + "x-scheme-handler/http" + "x-scheme-handler/https" + ]; + startupNotify = true; + startupWMClass = "zen-alpha"; + terminal = false; + actions = { + new-window = { + name = "New Window"; + exec = "zen --new-window %u"; + }; + new-private-window = { + name = "New Private Window"; + exec = "zen --private-window %u"; + }; + profile-manager-window = { + name = "Profile Manager"; + exec = "zen --ProfileManager %u"; + }; + }; + }; +in +stdenv.mkDerivation rec { + pname = "zen-browser-bin"; + version = "1.0.0-a.39"; + + src = fetchzip { + url = "https://github.com/zen-browser/desktop/releases/download/${version}/zen.linux-specific.tar.bz2"; + hash = "sha256-CcY0BDC3nZspwV1S4SheKn9MzjZRVY7QhqXCnK1Oj78="; + }; + + desktopItems = [ desktopItem ]; + + nativeBuildInputs = [ + autoPatchelfHook + wrapGAppsHook3 + copyDesktopItems + ]; + + buildInputs = [ + gtk3 + alsa-lib + dbus-glib + xorg.libXtst + ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/lib + cp -r $src $out/lib/zen/ + + mkdir -p $out/bin + ln -s $out/lib/zen/zen $out/bin/zen + + for n in {16,32,48,64,128}; do + size=$n"x"$n + mkdir -p $out/share/icons/hicolor/$size/apps + file="default"$n".png" + cp $out/lib/zen/browser/chrome/icons/default/$file $out/share/icons/hicolor/$size/apps/zen.png + done + + runHook postInstall + ''; + + preFixup = '' + gappsWrapperArgs+=( + --prefix LD_LIBRARY_PATH : "${ + lib.makeLibraryPath [ + pciutils + pipewire + libva + libglvnd + ] + }" + ) + gappsWrapperArgs+=(--set MOZ_LEGACY_PROFILES 1) + wrapGApp $out/lib/zen/zen + ''; + + meta = with lib; { + license = licenses.mpl20; + maintainers = with maintainers; [ mordrag ]; + description = "Experience tranquillity while browsing the web without people tracking you! "; + platforms = platforms.linux; + mainProgram = "zen"; + }; +} |