Merge pull request #119542 from AndersonTorres/new-haunt

guile-commonmark: init at 0.1.2;
haunt: init at 0.2.4
This commit is contained in:
Anderson Torres 2021-04-16 18:34:56 -03:00 committed by GitHub
commit 818dcc8492
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 354 additions and 118 deletions

View File

@ -0,0 +1,59 @@
{ lib
, stdenv
, fetchurl
, guile
, guile-commonmark
, guile-reader
, makeWrapper
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "haunt";
version = "0.2.4";
src = fetchurl {
url = "https://files.dthompson.us/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-zOkICg7KmJJhPWPtJRT3C9sYB1Oig1xLtgPNGe0n3xQ=";
};
nativeBuildInputs = [
makeWrapper
pkg-config
];
buildInputs = [
guile
guile-commonmark
guile-reader
];
postInstall = ''
wrapProgram $out/bin/haunt \
--prefix GUILE_LOAD_PATH : "$out/share/guile/site:${guile-commonmark}/share/guile/site:${guile-reader}/share/guile/site" \
--prefix GUILE_LOAD_COMPILED_PATH : "$out/share/guile/site:${guile-commonmark}/share/guile/site:${guile-reader}/share/guile/site"
'';
meta = with lib; {
homepage = "https://dthompson.us/projects/haunt.html";
description = "Guile-based static site generator";
longDescription = ''
Haunt is a simple, functional, hackable static site generator that gives
authors the ability to treat websites as Scheme programs.
By giving authors the full expressive power of Scheme, they are able to
control every aspect of the site generation process. Haunt provides a
simple, functional build system that can be easily extended for this
purpose.
Haunt has no opinion about what markup language authors should use to
write posts, though it comes with support for the popular Markdown
format. Likewise, Haunt has no opinion about how authors structure their
sites. Though it comes with support for building simple blogs or Atom
feeds, authors should feel empowered to tweak, replace, or create builders
to do things that aren't provided out-of-the-box.
'';
license = licenses.gpl3Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = guile.meta.platforms;
};
}

View File

@ -1,23 +1,38 @@
{ lib, stdenv, fetchurl, pkg-config, guile, guile-lib, cairo, expat }:
{ lib
, stdenv
, fetchurl
, cairo
, expat
, guile
, guile-lib
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "guile-cairo";
version = "1.11.2";
src = fetchurl {
url = "mirror://savannah/guile-cairo/${pname}-${version}.tar.gz";
sha256 = "0yx0844p61ljd4d3d63qrawiygiw6ks02fwv2cqx7nav5kfd8ck2";
url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-YjLU3Cxb2dMxE5s7AfQ0PD4fucp4mDYaaZIGcwlBoHs=";
};
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [
pkg-config
];
buildInputs = [
cairo
expat
guile
];
buildInputs = [ guile cairo expat ];
enableParallelBuilding = true;
doCheck = false; # Cannot find unit-test module from guile-lib
checkInputs = [ guile-lib ];
meta = with lib; {
homepage = "https://www.nongnu.org/guile-cairo/";
description = "Cairo bindings for GNU Guile";
longDescription = ''
Guile-Cairo wraps the Cairo graphics library for Guile Scheme.
@ -28,7 +43,6 @@ stdenv.mkDerivation rec {
maintained graphics library with all of the benefits of Scheme: memory
management, exceptions, macros, and a dynamic programming environment.
'';
homepage = "https://www.nongnu.org/guile-cairo/";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;

View File

@ -0,0 +1,42 @@
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, guile
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "guile-commonmark";
version = "0.1.2";
src = fetchFromGitHub {
owner = "OrangeShark";
repo = pname;
rev = "v${version}";
hash = "sha256-qYDcIiObKOU8lmcfk327LMPx/2Px9ecI3QLrSWWLxMo=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
guile
];
# https://github.com/OrangeShark/guile-commonmark/issues/20
doCheck = false;
makeFlags = [
"GUILE_AUTO_COMPILE=0"
];
meta = with lib; {
homepage = "https://github.com/OrangeShark/guile-commonmark";
description = "Implementation of CommonMark for Guile";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = guile.meta.platforms;
};
}

View File

@ -1,26 +1,37 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, guile, texinfo }:
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, guile
, pkg-config
, texinfo
}:
let
stdenv.mkDerivation rec {
pname = "guile-fibers";
version = "1.0.0";
name = "guile-fibers-${version}";
in stdenv.mkDerivation {
inherit name;
src = fetchFromGitHub {
owner = "wingo";
repo = "fibers";
rev = "v${version}";
sha256 = "1r47m1m112kxf23xny99f0qkqsk6626iyc5jp7vzndfiyp5yskwi";
hash = "sha256-kU/ty/XRNfv3ubIwH40wZmo8MXApeduHcH2KEGqoh+Q=";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ guile texinfo ];
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
guile
texinfo
];
autoreconfPhase = "./autogen.sh";
meta = with lib; {
description = "Concurrent ML-like concurrency for Guile";
homepage = "https://github.com/wingo/fibers";
description = "Concurrent ML-like concurrency for Guile";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;

View File

@ -1,7 +1,21 @@
{ fetchurl, lib, stdenv, guile, guile-lib, gwrap
, pkg-config, gconf, glib, gnome_vfs, gtk2
, libglade, libgnome, libgnomecanvas, libgnomeui
, pango, guile-cairo, texinfo
{ lib
, stdenv
, fetchurl
, gconf
, glib
, gnome_vfs
, gtk2
, guile
, guile-cairo
, guile-lib
, gwrap
, libglade
, libgnome
, libgnomecanvas
, libgnomeui
, pango
, pkg-config
, texinfo
}:
stdenv.mkDerivation rec {
@ -10,20 +24,37 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnu/guile-gnome/${pname}/${pname}-${version}.tar.gz";
sha256 = "adabd48ed5993d8528fd604e0aa0d96ad81a61d06da6cdd68323572ad6c216c3";
hash = "sha256-ravUjtWZPYUo/WBOCqDZatgaYdBtps3WgyNXKtbCFsM=";
};
nativeBuildInputs = [
pkg-config
texinfo
];
buildInputs = [
texinfo guile gwrap pkg-config gconf glib gnome_vfs gtk2
libglade libgnome libgnomecanvas libgnomeui pango guile-cairo
gconf
glib
gnome_vfs
gtk2
guile
guile-cairo
gwrap
libglade
libgnome
libgnomecanvas
libgnomeui
pango
] ++ lib.optional doCheck guile-lib;
# The test suite tries to open an X display, which fails.
doCheck = false;
GUILE_AUTO_COMPILE = 0;
makeFlags = [
"GUILE_AUTO_COMPILE=0"
];
meta = with lib; {
homepage = "https://www.gnu.org/software/guile-gnome/";
description = "GNOME bindings for GNU Guile";
longDescription = ''
GNU guile-gnome brings the power of Scheme to your graphical application.
@ -32,7 +63,6 @@ stdenv.mkDerivation rec {
guile-gnome a comprehensive environment for developing modern
applications.
'';
homepage = "https://www.gnu.org/software/guile-gnome/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;

View File

@ -1,20 +1,29 @@
{ lib, stdenv, fetchurl, guile, texinfo, pkg-config }:
{ lib
, stdenv
, fetchurl
, guile
, pkg-config
, texinfo
}:
assert stdenv ? cc && stdenv.cc.isGNU;
let
name = "guile-lib-${version}";
stdenv.mkDerivation rec {
pname = "guile-lib";
version = "0.2.6.1";
in stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "mirror://savannah/guile-lib/${name}.tar.gz";
sha256 = "0aizxdif5dpch9cvs8zz5g8ds5s4xhfnwza2il5ji7fv2h7ks7bd";
url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-bR09DxTbnSgLjUJ9bh3sRBfd0Cv/I71Zguy24mLrPyo=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ guile texinfo ];
nativeBuildInputs = [
pkg-config
];
buildInputs = [
guile
texinfo
];
doCheck = true;
@ -25,6 +34,7 @@ in stdenv.mkDerivation {
'';
meta = with lib; {
homepage = "https://www.nongnu.org/guile-lib/";
description = "A collection of useful Guile Scheme modules";
longDescription = ''
guile-lib is intended as an accumulation place for pure-scheme Guile
@ -32,7 +42,6 @@ in stdenv.mkDerivation {
modules into a coherent library. Think "a down-scaled, limited-scope CPAN
for Guile".
'';
homepage = "https://www.nongnu.org/guile-lib/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.gnu ++ platforms.linux;

View File

@ -1,18 +1,29 @@
{ lib, stdenv, fetchurl, pkg-config, guile, ncurses, libffi }:
{ lib
, stdenv
, fetchurl
, pkg-config
, guile
, libffi
, ncurses
}:
let
name = "guile-ncurses-${version}";
stdenv.mkDerivation rec {
pname = "guile-ncurses";
version = "1.7";
in stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "mirror://gnu/guile-ncurses/${name}.tar.gz";
sha256 = "153vv75gb7l62sp3666rc97i63rnaqbx2rjar7d9b5w81fhwv4r5";
url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-JZPNoQuIl5XayUpm0RdWNg8TT2LZGDOuFoae9crZe5Q=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ guile ncurses libffi ];
nativeBuildInputs = [
pkg-config
];
buildInputs = [
guile
libffi
ncurses
];
preConfigure = ''
configureFlags="$configureFlags --with-guilesitedir=$out/share/guile/site"
@ -29,6 +40,7 @@ in stdenv.mkDerivation {
doCheck = false;
meta = with lib; {
homepage = "https://www.gnu.org/software/guile-ncurses/";
description = "Scheme interface to the NCurses libraries";
longDescription = ''
GNU Guile-Ncurses is a library for the Guile Scheme interpreter that
@ -36,7 +48,6 @@ in stdenv.mkDerivation {
interface functionality is built on the ncurses libraries: curses, form,
panel, and menu.
'';
homepage = "https://www.gnu.org/software/guile-ncurses/";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.gnu ++ platforms.linux;

View File

@ -1,21 +1,27 @@
{ lib, stdenv, fetchurl, pkg-config, guile }:
{ lib
, stdenv
, fetchurl
, guile
, pkg-config
}:
let
name = "guile-opengl-${version}";
stdenv.mkDerivation rec {
pname = "guile-opengl";
version = "0.1.0";
in stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "mirror://gnu/guile-opengl/${name}.tar.gz";
sha256 = "13qfx4xh8baryxqrv986l848ygd0piqwm6s2s90pxk9c0m9vklim";
url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-NdK5UwUszX5B0kKbynG8oD2PCKIGpZ1x91ktBDvpDo8=";
};
nativeBuildInputs = [ pkg-config guile ];
nativeBuildInputs = [
pkg-config
guile
];
meta = with lib; {
description = "Guile bindings for the OpenGL graphics API";
homepage = "https://www.gnu.org/software/guile-opengl/";
description = "Guile bindings for the OpenGL graphics API";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.unix;

View File

@ -1,36 +1,49 @@
{ lib, stdenv, fetchurl, fetchpatch, pkg-config
, gperf, guile, guile-lib, libffi }:
{ lib
, stdenv
, fetchurl
, fetchpatch
, gperf
, guile
, guile-lib
, libffi
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "guile-reader";
version = "0.6.3";
src = fetchurl {
url = "http://download.savannah.nongnu.org/releases/guile-reader/${pname}-${version}.tar.gz";
sha256 = "sha256-OMK0ROrbuMDKt42QpE7D6/9CvUEMW4SpEBjO5+tk0rs=";
url = "http://download.savannah.nongnu.org/releases/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-OMK0ROrbuMDKt42QpE7D6/9CvUEMW4SpEBjO5+tk0rs=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gperf guile guile-lib libffi ];
nativeBuildInputs = [
pkg-config
];
buildInputs = [
gperf
guile
guile-lib
libffi
];
GUILE_SITE="${guile-lib}/share/guile/site";
configureFlags = [ "--with-guilemoduledir=$(out)/share/guile/site" ];
meta = with lib; {
homepage = "https://www.nongnu.org/guile-reader/";
description = "A simple framework for building readers for GNU Guile";
longDescription = ''
Guile-Reader is a simple framework for building readers for GNU
Guile.
Guile-Reader is a simple framework for building readers for GNU Guile.
The idea is to make it easy to build procedures that extend
Guile's read procedure. Readers supporting various syntax
variants can easily be written, possibly by re-using existing
"token readers" of a standard Scheme readers. For example, it
is used to implement Skribilo's R5RS-derived document syntax.
The idea is to make it easy to build procedures that extend Guile's read
procedure. Readers supporting various syntax variants can easily be
written, possibly by re-using existing "token readers" of a standard
Scheme readers. For example, it is used to implement Skribilo's
R5RS-derived document syntax.
'';
homepage = "https://www.nongnu.org/guile-reader/";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.gnu;

View File

@ -1,5 +1,13 @@
{ lib, stdenv, fetchurl, pkg-config, guile, buildEnv
, SDL, SDL_image, SDL_ttf, SDL_mixer
{ lib
, stdenv
, fetchurl
, SDL
, SDL_image
, SDL_mixer
, SDL_ttf
, buildEnv
, guile
, pkg-config
}:
stdenv.mkDerivation rec {
@ -8,25 +16,33 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
sha256 = "0cjgs012a9922hn6xqwj66w6qmfs3nycnm56hyykx5n3g5p7ag01";
hash = "sha256-ATx1bnnDlj69h6ZUy7wd2lVsuDGS424sFCIlJQLQTzI=";
};
nativeBuildInputs = [ pkg-config guile ];
buildInputs = [ SDL.dev SDL_image SDL_ttf SDL_mixer ];
GUILE_AUTO_COMPILE = 0;
nativeBuildInputs = [
guile
pkg-config
];
buildInputs = [
SDL.dev
SDL_image
SDL_mixer
SDL_ttf
];
makeFlags = let
sdl = buildEnv {
sdl-env = buildEnv {
name = "sdl-env";
paths = buildInputs;
};
in [ "SDLMINUSI=-I${sdl}/include/SDL" ];
in [
"GUILE_AUTO_COMPILE=0"
"SDLMINUSI=-I${sdl-env}/include/SDL"
];
meta = with lib; {
description = "Guile bindings for SDL";
homepage = "https://www.gnu.org/software/guile-sdl/";
description = "Guile bindings for SDL";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;

View File

@ -1,36 +1,50 @@
{ lib, stdenv, fetchurl, guile, libtool, pkg-config
, SDL2, SDL2_image, SDL2_ttf, SDL2_mixer
{ lib
, stdenv
, fetchurl
, SDL2
, SDL2_image
, SDL2_mixer
, SDL2_ttf
, guile
, libtool
, pkg-config
}:
let
name = "${pname}-${version}";
stdenv.mkDerivation rec {
pname = "guile-sdl2";
version = "0.5.0";
in stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "https://files.dthompson.us/${pname}/${name}.tar.gz";
sha256 = "118x0cg7fzbsyrfhy5f9ab7dqp9czgia0ycgzp6sn3nlsdrcnr4m";
url = "https://files.dthompson.us/${pname}/${pname}-${version}.tar.gz";
hash = "sha256-lWTLctPUDqvN/Y95oOL7LF3czlLJFQ9d9np9dx4DHYU=";
};
nativeBuildInputs = [ libtool pkg-config ];
nativeBuildInputs = [
pkg-config
libtool
];
buildInputs = [
guile SDL2 SDL2_image SDL2_ttf SDL2_mixer
SDL2
SDL2_image
SDL2_mixer
SDL2_ttf
guile
];
configureFlags = [
"--with-libsdl2-prefix=${SDL2}"
"--with-libsdl2-image-prefix=${SDL2_image}"
"--with-libsdl2-ttf-prefix=${SDL2_ttf}"
"--with-libsdl2-mixer-prefix=${SDL2_mixer}"
"--with-libsdl2-prefix=${SDL2}"
"--with-libsdl2-ttf-prefix=${SDL2_ttf}"
];
makeFlags = [ "GUILE_AUTO_COMPILE=0" ];
makeFlags = [
"GUILE_AUTO_COMPILE=0"
];
meta = with lib; {
description = "Bindings to SDL2 for GNU Guile";
homepage = "https://dthompson.us/projects/guile-sdl2.html";
description = "Bindings to SDL2 for GNU Guile";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ seppeljordan vyp ];
platforms = platforms.all;

View File

@ -1,29 +1,36 @@
{ lib, stdenv, fetchurl, pkg-config, guile, texinfo }:
{ lib
, stdenv
, fetchurl
, guile
, pkg-config
, texinfo
}:
let
name = "guile-xcb-${version}";
stdenv.mkDerivation rec {
pname = "guile-xcb";
version = "1.3";
in stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "http://www.markwitmer.com/dist/${name}.tar.gz";
sha256 = "04dvbqdrrs67490gn4gkq9zk8mqy3mkls2818ha4p0ckhh0pm149";
url = "http://www.markwitmer.com/dist/${pname}-${version}.tar.gz";
hash = "sha256-iYR6AYSTgUsURAEJTWcdHlc0f8LzEftAIsfonBteuxE=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ guile texinfo ];
nativeBuildInputs = [
pkg-config
];
buildInputs = [
guile
texinfo
];
preConfigure = ''
configureFlags="
--with-guile-site-dir=$out/share/guile/site
--with-guile-site-ccache-dir=$out/share/guile/site
";
'';
configureFlags = [
"--with-guile-site-dir=$out/share/guile/site"
"--with-guile-site-ccache-dir=$out/share/guile/site"
];
meta = with lib; {
description = "XCB bindings for Guile";
homepage = "http://www.markwitmer.com/guile-xcb/guile-xcb.html";
description = "XCB bindings for Guile";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ vyp ];
platforms = platforms.linux;

View File

@ -11658,15 +11658,6 @@ in
groovy = callPackage ../development/interpreters/groovy { };
guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { };
# Needed for autogen
guile_2_0 = callPackage ../development/interpreters/guile/2.0.nix { };
guile_2_2 = callPackage ../development/interpreters/guile { };
guile = guile_2_2;
inherit (callPackages ../applications/networking/cluster/hadoop {
jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
})
@ -12088,8 +12079,19 @@ in
gImageReader = callPackage ../applications/misc/gImageReader { };
guile_1_8 = callPackage ../development/interpreters/guile/1.8.nix { };
# Needed for autogen
guile_2_0 = callPackage ../development/interpreters/guile/2.0.nix { };
guile_2_2 = callPackage ../development/interpreters/guile { };
guile = guile_2_2;
guile-cairo = callPackage ../development/guile-modules/guile-cairo { };
guile-commonmark = callPackage ../development/guile-modules/guile-commonmark { };
guile-fibers = callPackage ../development/guile-modules/guile-fibers { };
guile-gnome = callPackage ../development/guile-modules/guile-gnome {
@ -23521,6 +23523,8 @@ in
wxGTK = wxGTK30;
};
haunt = callPackage ../applications/misc/haunt { };
hugo = callPackage ../applications/misc/hugo { };
go-org = callPackage ../applications/misc/go-org { };