next: Fix #74258
Next had a few issues with its packaging: * the platform port was exposed in all-packages And this is not useful for outside users. It's now a local attribute in the next package. * the platform port wasn't wrapped correctly It appears that the lisp core was being wrapped, when instead the actual gtk application that's called within the lisp core had to be wrapped. * codestyle/indentation
This commit is contained in:
parent
e716e86bed
commit
417d6354c8
@ -1,25 +0,0 @@
|
|||||||
{ 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" ];
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,86 +1,90 @@
|
|||||||
{ pkgs, stdenv, fetchFromGitHub
|
{ stdenv
|
||||||
, gcc7, pkg-config, makeWrapper
|
, fetchFromGitHub
|
||||||
, glib-networking
|
|
||||||
, next-gtk-webkit
|
|
||||||
, lispPackages
|
, lispPackages
|
||||||
, sbcl
|
, sbcl
|
||||||
|
, callPackage
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
# This is the wrapped webkitgtk platform port that we hardcode into the Lisp Core.
|
||||||
|
# See https://github.com/atlas-engineer/next/tree/master/ports#next-platform-ports
|
||||||
|
next-gtk-webkit = callPackage ./next-gtk-webkit.nix {};
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "next";
|
pname = "next";
|
||||||
version = "1.3.4";
|
version = "1.3.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "atlas-engineer";
|
owner = "atlas-engineer";
|
||||||
repo = "next";
|
repo = "next";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "00iqv4xarabl98gdl1rzqkc5v0vfljx1nawsxqsx9x3a9mnxmgxi";
|
sha256 = "00iqv4xarabl98gdl1rzqkc5v0vfljx1nawsxqsx9x3a9mnxmgxi";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Stripping destroys the generated SBCL image
|
nativeBuildInputs = [
|
||||||
dontStrip = true;
|
sbcl
|
||||||
|
] ++ (with lispPackages; [
|
||||||
|
prove-asdf
|
||||||
|
trivial-features
|
||||||
|
]);
|
||||||
|
|
||||||
prePatch = ''
|
buildInputs = with lispPackages; [
|
||||||
substituteInPlace source/ports/gtk-webkit.lisp \
|
alexandria
|
||||||
--replace "next-gtk-webkit" "${next-gtk-webkit}/bin/next-gtk-webkit"
|
bordeaux-threads
|
||||||
'';
|
cl-annot
|
||||||
|
cl-ansi-text
|
||||||
|
cl-css
|
||||||
|
cl-hooks
|
||||||
|
cl-json
|
||||||
|
cl-markup
|
||||||
|
cl-ppcre
|
||||||
|
cl-ppcre-unicode
|
||||||
|
cl-prevalence
|
||||||
|
closer-mop
|
||||||
|
dbus
|
||||||
|
dexador
|
||||||
|
ironclad
|
||||||
|
local-time
|
||||||
|
log4cl
|
||||||
|
lparallel
|
||||||
|
mk-string-metrics
|
||||||
|
parenscript
|
||||||
|
quri
|
||||||
|
sqlite
|
||||||
|
str
|
||||||
|
swank
|
||||||
|
trivia
|
||||||
|
trivial-clipboard
|
||||||
|
unix-opts
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs =
|
prePatch = ''
|
||||||
[ sbcl makeWrapper ] ++ (with lispPackages;
|
substituteInPlace source/ports/gtk-webkit.lisp \
|
||||||
[ prove-asdf trivial-features ]);
|
--replace "next-gtk-webkit" "${next-gtk-webkit}/bin/next-gtk-webkit"
|
||||||
|
'';
|
||||||
|
|
||||||
buildInputs = with lispPackages; [
|
buildPhase = ''
|
||||||
alexandria
|
common-lisp.sh --eval "(require :asdf)" \
|
||||||
bordeaux-threads
|
--eval "(asdf:load-asd (truename \"next.asd\") :name \"next\")" \
|
||||||
cl-annot
|
--eval '(asdf:make :next)' \
|
||||||
cl-ansi-text
|
--quit
|
||||||
cl-css
|
'';
|
||||||
cl-hooks
|
|
||||||
cl-json
|
|
||||||
cl-markup
|
|
||||||
cl-ppcre
|
|
||||||
cl-ppcre-unicode
|
|
||||||
cl-prevalence
|
|
||||||
closer-mop
|
|
||||||
dbus
|
|
||||||
dexador
|
|
||||||
ironclad
|
|
||||||
local-time
|
|
||||||
log4cl
|
|
||||||
lparallel
|
|
||||||
mk-string-metrics
|
|
||||||
parenscript
|
|
||||||
quri
|
|
||||||
sqlite
|
|
||||||
str
|
|
||||||
swank
|
|
||||||
trivia
|
|
||||||
trivial-clipboard
|
|
||||||
unix-opts
|
|
||||||
];
|
|
||||||
propagatedBuildInputs = [ next-gtk-webkit ];
|
|
||||||
|
|
||||||
buildPhase = ''
|
installPhase = ''
|
||||||
common-lisp.sh --eval "(require :asdf)" \
|
install -D -m0755 next $out/bin/next
|
||||||
--eval "(asdf:load-asd (truename \"next.asd\") :name \"next\")" \
|
'';
|
||||||
--eval '(asdf:make :next)' \
|
|
||||||
--quit
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
# Stripping destroys the generated SBCL image
|
||||||
install -D -m0755 next $out/bin/next
|
dontStrip = true;
|
||||||
'';
|
|
||||||
|
|
||||||
preFixup = ''
|
meta = with stdenv.lib; {
|
||||||
wrapProgram $out/bin/next \
|
description = "Infinitely extensible web-browser (with Lisp development files using WebKitGTK platform port)";
|
||||||
--prefix GIO_EXTRA_MODULES : "${glib-networking.out}/lib/gio/modules"
|
homepage = https://next.atlas.engineer;
|
||||||
'';
|
license = licenses.bsd3;
|
||||||
|
maintainers = [ maintainers.lewo ];
|
||||||
meta = with stdenv.lib; {
|
platforms = [ "x86_64-linux" ];
|
||||||
description = "Infinitely extensible web-browser (with Lisp development files)";
|
};
|
||||||
homepage = https://next.atlas.engineer;
|
}
|
||||||
license = licenses.bsd3;
|
|
||||||
maintainers = [ maintainers.lewo ];
|
|
||||||
platforms = [ "x86_64-linux" ];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
@ -0,0 +1,50 @@
|
|||||||
|
# https://github.com/atlas-engineer/next/tree/master/ports/gtk-webkit
|
||||||
|
|
||||||
|
{ stdenv
|
||||||
|
, pkg-config
|
||||||
|
, next
|
||||||
|
, webkitgtk
|
||||||
|
, gtk3
|
||||||
|
, glib
|
||||||
|
, gsettings-desktop-schemas
|
||||||
|
, glib-networking
|
||||||
|
, gst_all_1
|
||||||
|
, wrapGAppsHook
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
pname = "next-gtk-webkit";
|
||||||
|
inherit (next) src version;
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkg-config
|
||||||
|
wrapGAppsHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
glib
|
||||||
|
glib-networking
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
gtk3
|
||||||
|
webkitgtk
|
||||||
|
gst_all_1.gst-plugins-base
|
||||||
|
gst_all_1.gstreamer
|
||||||
|
];
|
||||||
|
|
||||||
|
makeFlags = [
|
||||||
|
"gtk-webkit"
|
||||||
|
"PREFIX=${placeholder "out"}"
|
||||||
|
];
|
||||||
|
|
||||||
|
installTargets = [
|
||||||
|
"install-gtk-webkit"
|
||||||
|
];
|
||||||
|
|
||||||
|
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" ];
|
||||||
|
};
|
||||||
|
}
|
@ -4559,8 +4559,6 @@ in
|
|||||||
|
|
||||||
next = callPackage ../applications/networking/browsers/next { };
|
next = callPackage ../applications/networking/browsers/next { };
|
||||||
|
|
||||||
next-gtk-webkit = callPackage ../applications/networking/browsers/next-gtk-webkit { };
|
|
||||||
|
|
||||||
nfpm = callPackage ../tools/package-management/nfpm { };
|
nfpm = callPackage ../tools/package-management/nfpm { };
|
||||||
|
|
||||||
nginx-config-formatter = callPackage ../tools/misc/nginx-config-formatter { };
|
nginx-config-formatter = callPackage ../tools/misc/nginx-config-formatter { };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user