From 1c7d3389e43b2836a8f5de10f648833d610e86b2 Mon Sep 17 00:00:00 2001 From: Antoine Eiche Date: Tue, 10 Sep 2019 22:16:33 +0200 Subject: [PATCH] next: init at 1.3.1 --- .../browsers/next-gtk-webkit/default.nix | 25 ++++++ .../networking/browsers/next/default.nix | 80 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 + 3 files changed, 109 insertions(+) create mode 100644 pkgs/applications/networking/browsers/next-gtk-webkit/default.nix create mode 100644 pkgs/applications/networking/browsers/next/default.nix diff --git a/pkgs/applications/networking/browsers/next-gtk-webkit/default.nix b/pkgs/applications/networking/browsers/next-gtk-webkit/default.nix new file mode 100644 index 00000000000..6ab53376310 --- /dev/null +++ b/pkgs/applications/networking/browsers/next-gtk-webkit/default.nix @@ -0,0 +1,25 @@ +{ stdenv, gcc7, pkg-config +, next +, webkitgtk, gsettings-desktop-schemas +}: + +stdenv.mkDerivation rec { + pname = "next-gtk-webkit"; + inherit (next) src version; + + makeFlags = [ "gtk-webkit" "PREFIX=$(out)" ]; + installTargets = "install-gtk-webkit"; + + nativeBuildInputs = [ gcc7 pkg-config ]; + buildInputs = [ + webkitgtk + gsettings-desktop-schemas + ]; + meta = with stdenv.lib; { + description = "Infinitely extensible web-browser (user interface only)"; + homepage = https://next.atlas.engineer; + license = licenses.bsd3; + maintainers = [ maintainers.lewo ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/applications/networking/browsers/next/default.nix b/pkgs/applications/networking/browsers/next/default.nix new file mode 100644 index 00000000000..2b2e173342c --- /dev/null +++ b/pkgs/applications/networking/browsers/next/default.nix @@ -0,0 +1,80 @@ +{ pkgs, stdenv, fetchFromGitHub +, gcc7, pkg-config, makeWrapper +, glib-networking +, next-gtk-webkit +, lispPackages +, sbcl +}: + +stdenv.mkDerivation rec { + pname = "next"; + version = "1.3.1"; + + src = fetchFromGitHub { + owner = "atlas-engineer"; + repo = "next"; + rev = version; + sha256 = "01fn1f080ydk0wj1bwkyakqz93bdq9xb5x8qz820jpl9id17bqgj"; + }; + + # Stripping destroys the generated SBCL image + dontStrip = true; + + prePatch = '' + substituteInPlace source/ports/gtk-webkit.lisp \ + --replace "next-gtk-webkit" "${next-gtk-webkit}/bin/next-gtk-webkit" + ''; + + nativeBuildInputs = [ sbcl makeWrapper ]; + buildInputs = with lispPackages; [ + trivial-features + trivial-garbage + alexandria + bordeaux-threads + cl-json + cl-markup + cl-ppcre + cl-ppcre-unicode + closer-mop + dexador + ironclad + lparallel + parenscript + quri + cl-css + log4cl + mk-string-metrics + sqlite + str + swank + trivia + trivial-clipboard + unix-opts + dbus + ]; + propagatedBuildInputs = [ next-gtk-webkit ]; + + buildPhase = '' + common-lisp.sh --eval "(require :asdf)" \ + --eval "(asdf:load-asd (truename \"next.asd\") :name \"next\")" \ + --eval '(asdf:make :next)' \ + --quit + ''; + + installPhase = '' + install -D -m0755 next $out/bin/next + ''; + + preFixup = '' + wrapProgram $out/bin/next \ + --prefix GIO_EXTRA_MODULES : "${glib-networking.out}/lib/gio/modules" + ''; + + meta = with stdenv.lib; { + description = "Infinitely extensible web-browser (with Lisp development files)"; + homepage = https://next.atlas.engineer; + license = licenses.bsd3; + maintainers = [ maintainers.lewo ]; + platforms = [ "x86_64-linux" ]; + }; + } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 98e13c2bbf7..9cdb550e962 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4421,6 +4421,10 @@ in netsniff-ng = callPackage ../tools/networking/netsniff-ng { }; + next = callPackage ../applications/networking/browsers/next { }; + + next-gtk-webkit = callPackage ../applications/networking/browsers/next-gtk-webkit { }; + nfpm = callPackage ../tools/package-management/nfpm { }; nginx-config-formatter = callPackage ../tools/misc/nginx-config-formatter { };