mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-25 03:17:13 +00:00
593e11fd94
According to https://repology.org/repository/nix_unstable/problems, we have a lot of packages that have http links that redirect to https as their homepage. This commit updates all these packages to use the https links as their homepage. The following script was used to make these updates: ``` curl https://repology.org/api/v1/repository/nix_unstable/problems \ | jq '.[] | .problem' -r \ | rg 'Homepage link "(.+)" is a permanent redirect to "(.+)" and should be updated' --replace 's@$1@$2@' \ | sort | uniq > script.sed find -name '*.nix' | xargs -P4 -- sed -f script.sed -i ```
112 lines
3 KiB
Nix
112 lines
3 KiB
Nix
{ stdenv, fetchurl, makeFontsConf
|
|
, cacert
|
|
, cairo, coreutils, fontconfig, freefont_ttf
|
|
, glib, gmp
|
|
, gtk3
|
|
, libedit, libffi
|
|
, libiconv
|
|
, libGL
|
|
, libGLU
|
|
, libjpeg
|
|
, libpng, libtool, mpfr, openssl, pango, poppler
|
|
, readline, sqlite
|
|
, disableDocs ? false
|
|
, CoreFoundation
|
|
, gsettings-desktop-schemas
|
|
, wrapGAppsHook
|
|
}:
|
|
|
|
let
|
|
|
|
fontsConf = makeFontsConf {
|
|
fontDirectories = [ freefont_ttf ];
|
|
};
|
|
|
|
libPath = stdenv.lib.makeLibraryPath [
|
|
cairo
|
|
fontconfig
|
|
glib
|
|
gmp
|
|
gtk3
|
|
gsettings-desktop-schemas
|
|
libedit
|
|
libGL
|
|
libGLU
|
|
libjpeg
|
|
libpng
|
|
mpfr
|
|
openssl
|
|
pango
|
|
poppler
|
|
readline
|
|
sqlite
|
|
];
|
|
|
|
in
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "racket";
|
|
version = "7.5"; # always change at once with ./minimal.nix
|
|
|
|
src = (stdenv.lib.makeOverridable ({ name, sha256 }:
|
|
fetchurl {
|
|
url = "https://mirror.racket-lang.org/installers/${version}/${name}-src.tgz";
|
|
inherit sha256;
|
|
}
|
|
)) {
|
|
name = "${pname}-${version}";
|
|
sha256 = "0b74v0pqkx57x2gk0m4sp94jaf6bi1mci4ix9vx4sh2442sbds1j";
|
|
};
|
|
|
|
FONTCONFIG_FILE = fontsConf;
|
|
LD_LIBRARY_PATH = libPath;
|
|
NIX_LDFLAGS = stdenv.lib.concatStringsSep " " [
|
|
(stdenv.lib.optionalString (stdenv.cc.isGNU && ! stdenv.isDarwin) "-lgcc_s")
|
|
(stdenv.lib.optionalString stdenv.isDarwin "-framework CoreFoundation")
|
|
];
|
|
|
|
nativeBuildInputs = [ cacert wrapGAppsHook ];
|
|
|
|
buildInputs = [ fontconfig libffi libtool sqlite gsettings-desktop-schemas gtk3 ]
|
|
++ stdenv.lib.optionals stdenv.isDarwin [ libiconv CoreFoundation ];
|
|
|
|
preConfigure = ''
|
|
unset AR
|
|
for f in src/lt/configure src/cs/c/configure src/racket/src/string.c; do
|
|
substituteInPlace "$f" --replace /usr/bin/uname ${coreutils}/bin/uname
|
|
done
|
|
mkdir src/build
|
|
cd src/build
|
|
|
|
gappsWrapperArgs+=("--prefix" "LD_LIBRARY_PATH" ":" ${LD_LIBRARY_PATH})
|
|
'';
|
|
|
|
shared = if stdenv.isDarwin then "dylib" else "shared";
|
|
configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ]
|
|
++ stdenv.lib.optional disableDocs [ "--disable-docs" ]
|
|
++ stdenv.lib.optional stdenv.isDarwin [ "--enable-xonx" ];
|
|
|
|
configureScript = "../configure";
|
|
|
|
enableParallelBuilding = false;
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "A programmable programming language";
|
|
longDescription = ''
|
|
Racket is a full-spectrum programming language. It goes beyond
|
|
Lisp and Scheme with dialects that support objects, types,
|
|
laziness, and more. Racket enables programmers to link
|
|
components written in different dialects, and it empowers
|
|
programmers to create new, project-specific dialects. Racket's
|
|
libraries support applications from web servers and databases to
|
|
GUIs and charts.
|
|
'';
|
|
homepage = https://racket-lang.org/;
|
|
license = with licenses; [ asl20 /* or */ mit ];
|
|
maintainers = with maintainers; [ kkallio henrytill vrthra ];
|
|
platforms = [ "x86_64-darwin" "x86_64-linux" ];
|
|
broken = stdenv.isDarwin; # No support yet for setting FFI lookup path
|
|
};
|
|
}
|