summaryrefslogtreecommitdiff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/default.nix8
-rw-r--r--pkgs/dmenu-bluetooth/default.nix19
-rw-r--r--pkgs/mercury-browser/default.nix149
-rw-r--r--pkgs/neo-comic-mono-font/default.nix45
4 files changed, 221 insertions, 0 deletions
diff --git a/pkgs/default.nix b/pkgs/default.nix
new file mode 100644
index 0000000..54dd028
--- /dev/null
+++ b/pkgs/default.nix
@@ -0,0 +1,8 @@
+# Custom packages, that can be defined similarly to ones from nixpkgs
+# You can build them using 'nix build .#example' or (legacy) 'nix-build -A example'
+
+{ pkgs ? (import ../nixpkgs.nix) { } }: {
+ mercury-browser = pkgs.callPackage ./mercury-browser { };
+ dmenu-bluetooth = pkgs.callPackage ./dmenu-bluetooth { };
+ neo-comic-mono-font = pkgs.callPackage ./neo-comic-mono-font { };
+}
diff --git a/pkgs/dmenu-bluetooth/default.nix b/pkgs/dmenu-bluetooth/default.nix
new file mode 100644
index 0000000..73af067
--- /dev/null
+++ b/pkgs/dmenu-bluetooth/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, dmenu }:
+
+let
+ dmenu-bluetooth = fetchurl {
+ url = "https://raw.githubusercontent.com/Layerex/dmenu-bluetooth/e6fbfbdb1c968b591523ed7de932cde10628876e/dmenu-bluetooth";
+ sha256 = "sha256-N7pCl9kLvJ2+ljczOWhaNJPLej62JWrF+uWlLp+l6lE=";
+ };
+in stdenv.mkDerivation rec {
+ pname = "dmenu-bluetooth";
+ version = "0.0.1";
+
+ unpackPhase = "true";
+ srcs = [];
+
+ postInstall = ''
+ mkdir -p $out/bin
+ install ${dmenu-bluetooth} $out/bin/dmenu-bluetooth
+ '';
+}
diff --git a/pkgs/mercury-browser/default.nix b/pkgs/mercury-browser/default.nix
new file mode 100644
index 0000000..7502c58
--- /dev/null
+++ b/pkgs/mercury-browser/default.nix
@@ -0,0 +1,149 @@
+{ lib
+, stdenv
+, fetchurl
+, autoPatchelfHook
+, dpkg
+, wrapGAppsHook
+, alsa-lib
+, browserpass
+, bukubrow
+, cairo
+, cups
+, dbus
+, dbus-glib
+, ffmpeg
+, fontconfig
+, freetype
+, fx_cast_bridge
+, glib
+, glibc
+, gnome-browser-connector
+, gtk3
+, harfbuzz
+, libcanberra
+, libdbusmenu
+, libdbusmenu-gtk3
+, libglvnd
+, libjack2
+, libkrb5
+, libnotify
+, libpulseaudio
+, libva
+, lyx
+, mesa
+, nspr
+, nss
+, opensc
+, pango
+, pciutils
+, pipewire
+, plasma5Packages
+, sndio
+, speechd
+, tridactyl-native
+, udev
+, uget-integrator
+, vulkan-loader
+, xdg-utils
+, xorg
+}:
+
+stdenv.mkDerivation rec {
+ pname = "mercury-browser";
+ version = "115.4.0";
+
+ src = fetchurl {
+ url =
+ "https://github.com/Alex313031/Mercury/releases/download/v.${version}/mercury-browser_${version}_amd64.deb";
+ hash = "sha256-78b2QEgf312TDBIy4lXzYUBtTfdNui3VJBbyDfXqOtc=";
+ };
+
+ nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ];
+
+ buildInputs = [
+ stdenv.cc.cc.lib
+ alsa-lib
+ browserpass
+ bukubrow
+ cairo
+ cups
+ dbus
+ dbus-glib
+ ffmpeg
+ fontconfig
+ freetype
+ fx_cast_bridge
+ glib
+ glibc
+ gnome-browser-connector
+ gtk3
+ harfbuzz
+ libcanberra
+ libdbusmenu
+ libdbusmenu-gtk3
+ libglvnd
+ libjack2
+ libkrb5
+ libnotify
+ libpulseaudio
+ libva
+ lyx
+ mesa
+ nspr
+ nss
+ opensc
+ pango
+ pciutils
+ pipewire
+ plasma5Packages.plasma-browser-integration
+ sndio
+ speechd
+ tridactyl-native
+ udev
+ uget-integrator
+ vulkan-loader
+ xdg-utils
+ xorg.libxcb
+ xorg.libX11
+ xorg.libXcursor
+ xorg.libXcomposite
+ xorg.libXdamage
+ xorg.libXext
+ xorg.libXfixes
+ xorg.libXi
+ xorg.libXrandr
+ xorg.libXrender
+ xorg.libXtst
+ xorg.libXxf86vm
+ ];
+
+ installPhase = ''
+ runHook preInstall
+
+ mkdir -p $out
+ cp -r usr/* $out
+
+ substituteInPlace $out/share/applications/mercury-browser.desktop \
+ --replace Exec=mercury-browser Exec=$out/bin/mercury-browser \
+ --replace StartupWMClass=mercury StartupWMClass=mercury-default \
+ --replace Icon=mercury Icon=$out/share/icons/hicolor/512x512/apps/mercury.png
+ addAutoPatchelfSearchPath $out/lib/mercury
+ substituteInPlace $out/bin/mercury-browser \
+ --replace 'export LD_LIBRARY_PATH' "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${
+ lib.makeLibraryPath buildInputs
+ }:$out/lib/mercury" \
+ --replace /usr $out
+
+ runHook postInstall
+ '';
+
+ meta = with lib; {
+ description = "Compiler-optimized private Firefox fork";
+ homepage = "https://thorium.rocks/mercury";
+ maintainers = with lib.maintainers; [ redxtech ];
+ sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+ license = licenses.mpl20;
+ platforms = [ "x86_64-linux" ];
+ mainProgram = "mercury-browser";
+ };
+}
diff --git a/pkgs/neo-comic-mono-font/default.nix b/pkgs/neo-comic-mono-font/default.nix
new file mode 100644
index 0000000..7351f09
--- /dev/null
+++ b/pkgs/neo-comic-mono-font/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl, python311, wget, fontforge, python311Packages, lib }: let
+ cousine-font = fetchurl {
+ url = "https://github.com/google/fonts/raw/main/apache/cousine/Cousine-Regular.ttf";
+ sha256 = "sha256-aeHqWet3ABQgTlF0+AV1D5p5PbSiUx5lFrMLdGDUcLM=";
+ };
+
+ comic-shans-font = fetchurl {
+ url = "https://github.com/shannpersand/comic-shanns/raw/master/v2/comic%20shanns.otf";
+ sha256 = "sha256-ogAILIIBbTnwUYzUSdX6VIbbSo7kuXihDUOZpVo1fVQ=";
+ };
+in stdenv.mkDerivation rec {
+ pname = "neo-comic-mono-font";
+ version = "0.0.1";
+
+ src = builtins.fetchTarball "https://git.jptrzy.xyz/neo-comic-mono-font/snapshot/neo-comic-mono-font-221bf59c1f75f8db922a3688dc5d282b0868e21a.tar.gz";
+
+ buildInputs = [
+ python311
+ python311Packages.fontforge
+ wget
+ fontforge
+ ];
+
+ buildPhase = ''
+ mkdir -p vendor build
+
+ ln -sf "${cousine-font}" vendor/cousine.ttf
+ ln -sf "${comic-shans-font}" vendor/comic-shanns.otf
+
+ python generate.py
+ '';
+
+ installPhase = ''
+ local out_font="$out/share/fonts/neo-comic"
+ install -m444 -Dt "$out_font" "build/"*.ttf
+ '';
+
+ meta = with lib; {
+ description = "Mono font created basing on Comic Shanns";
+ homepage = "https://github.com/jptrzy/neo-comic-mono-font";
+ license = licenses.mit;
+ maintainers = [ maintainers.jp3 ];
+ platforms = platforms.all;
+ };
+}
Software created with 💖