forked from mirrors/nixpkgs
Merge master into staging-next
This commit is contained in:
commit
629cea2cd0
|
@ -4,6 +4,11 @@ with lib;
|
|||
|
||||
let
|
||||
cfg = config.services.minio;
|
||||
|
||||
legacyCredentials = cfg: pkgs.writeText "minio-legacy-credentials" ''
|
||||
MINIO_ROOT_USER=${cfg.accessKey}
|
||||
MINIO_ROOT_PASSWORD=${cfg.secretKey}
|
||||
'';
|
||||
in
|
||||
{
|
||||
meta.maintainers = [ maintainers.bachp ];
|
||||
|
@ -49,6 +54,17 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
rootCredentialsFile = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
description = ''
|
||||
File containing the MINIO_ROOT_USER, default is "minioadmin", and
|
||||
MINIO_ROOT_PASSWORD (length >= 8), default is "minioadmin"; in the format of
|
||||
an EnvironmentFile=, as described by systemd.exec(5).
|
||||
'';
|
||||
example = "/etc/nixos/minio-root-credentials";
|
||||
};
|
||||
|
||||
region = mkOption {
|
||||
default = "us-east-1";
|
||||
type = types.str;
|
||||
|
@ -72,6 +88,8 @@ in
|
|||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
warnings = optional ((cfg.accessKey != "") || (cfg.secretKey != "")) "services.minio.`accessKey` and services.minio.`secretKey` are deprecated, please use services.minio.`rootCredentialsFile` instead.";
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d '${cfg.configDir}' - minio minio - -"
|
||||
] ++ (map (x: "d '" + x + "' - minio minio - - ") cfg.dataDir);
|
||||
|
@ -86,14 +104,13 @@ in
|
|||
User = "minio";
|
||||
Group = "minio";
|
||||
LimitNOFILE = 65536;
|
||||
EnvironmentFile = if (cfg.rootCredentialsFile != null) then cfg.rootCredentialsFile
|
||||
else if ((cfg.accessKey != "") || (cfg.secretKey != "")) then (legacyCredentials cfg)
|
||||
else null;
|
||||
};
|
||||
environment = {
|
||||
MINIO_REGION = "${cfg.region}";
|
||||
MINIO_BROWSER = "${if cfg.browser then "on" else "off"}";
|
||||
} // optionalAttrs (cfg.accessKey != "") {
|
||||
MINIO_ACCESS_KEY = "${cfg.accessKey}";
|
||||
} // optionalAttrs (cfg.secretKey != "") {
|
||||
MINIO_SECRET_KEY = "${cfg.secretKey}";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -19,13 +19,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cherrytree";
|
||||
version = "0.99.37";
|
||||
version = "0.99.38";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "giuspen";
|
||||
repo = "cherrytree";
|
||||
rev = version;
|
||||
sha256 = "1a2scwjrjijxwyfpqih23zzay3yqhyzpxnp66388fcir1cmp8zih";
|
||||
sha256 = "sha256-04MRw6pMtJGxTMKwOzPNGg1T85SfVY5bMkF3gt2V0e0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "seaweedfs";
|
||||
version = "2.50";
|
||||
version = "2.56";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "chrislusf";
|
||||
repo = "seaweedfs";
|
||||
rev = version;
|
||||
sha256 = "sha256-ai8/XryFw/7GYuWAmLkqHzK97QgTBPyE6m3dflck94w=";
|
||||
sha256 = "1y9abk2i0qk5c00dnw8wvasy7dmmy6az8d1cf9bq0dwh8g8kylbn";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-gJQDcACMWZWS4CgS2NDALoBzxu7Hh4ZW3f0gUFUALCM=";
|
||||
vendorSha256 = "015qvd0h786z1iwv81i107z92mqhzldp1hkcsp75wzf4j7nmzxvf";
|
||||
|
||||
subPackages = [ "weed" ];
|
||||
|
||||
|
|
|
@ -1,19 +1,32 @@
|
|||
{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, gtk3, wxGTK30-gtk3,
|
||||
curl, gettext, glib, indi-full, libnova, wrapGAppsHook }:
|
||||
{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, gtk3, wxGTK30-gtk3
|
||||
, curl, gettext, glib, indi-full, libnova, wrapGAppsHook }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "phd2";
|
||||
version = "2.6.9dev1";
|
||||
version = "2.6.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpenPHDGuiding";
|
||||
repo = "phd2";
|
||||
rev = "v${version}";
|
||||
sha256 = "1ih7m9lilh12xbhmwm9kkicaqy72mi3firl6df7m5x38n2zj3zm4";
|
||||
sha256 = "sha256-2ZiPjhlguWXFcC53xG1aqAode7twtoHWszFUMQkK5xU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config wrapGAppsHook ];
|
||||
buildInputs = [ gtk3 wxGTK30-gtk3 curl gettext glib indi-full libnova ];
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
wxGTK30-gtk3
|
||||
curl
|
||||
gettext
|
||||
glib
|
||||
indi-full
|
||||
libnova
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DOPENSOURCE_ONLY=1"
|
||||
|
@ -27,8 +40,9 @@ stdenv.mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = "https://openphdguiding.org/";
|
||||
description = "Telescope auto-guidance application";
|
||||
changelog = "https://github.com/OpenPHDGuiding/phd2/releases/tag/v${version}";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ hjones2199 ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gtkwave";
|
||||
version = "3.3.109";
|
||||
version = "3.3.110";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/gtkwave/${pname}-gtk3-${version}.tar.gz";
|
||||
sha256 = "sha256-NUYezNm4tEcMqnirmo8U7Ky8ye/2MDPY3OWAk+eG3rc=";
|
||||
sha256 = "sha256-Ku25IVa8ot3SWxODeMrOaxBY5X022TnvD3l2kAa3Wao=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config wrapGAppsHook ];
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "emuflight-configurator";
|
||||
version = "0.3.5";
|
||||
version = "0.3.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/emuflight/EmuConfigurator/releases/download/${version}/emuflight-configurator_${version}_linux64.zip";
|
||||
sha256 = "d55bdc52cf93d58c728ccb296ef912a5fc0f42c57ed95f3ded5f85d1c10838c4";
|
||||
sha256 = "sha256-egSUd/+RNo0vr2EJibgk9nNnql5sHC11gctUMK+DzW0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ wrapGAppsHook unzip copyDesktopItems ];
|
||||
|
|
|
@ -133,7 +133,7 @@ let
|
|||
unwrapped = php;
|
||||
# Select the right php tests for the php version
|
||||
tests = nixosTests."php${lib.strings.replaceStrings [ "." ] [ "" ] (lib.versions.majorMinor php.version)}";
|
||||
inherit (php-packages) extensions buildPecl;
|
||||
inherit (php-packages) extensions buildPecl mkExtension;
|
||||
packages = php-packages.tools;
|
||||
meta = php.meta // {
|
||||
outputsToInstall = [ "out" ];
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
, x11Support ? !stdenv.isCygwin && !stdenv.hostPlatform.isAndroid
|
||||
, libXext, libICE, libXrandr
|
||||
, pulseaudioSupport ? config.pulseaudio or stdenv.isLinux && !stdenv.hostPlatform.isAndroid, libpulseaudio
|
||||
, OpenGL, CoreAudio, CoreServices, AudioUnit, Kernel, Cocoa
|
||||
, OpenGL, GLUT, CoreAudio, CoreServices, AudioUnit, Kernel, Cocoa
|
||||
}:
|
||||
|
||||
# NOTE: When editing this expression see if the same change applies to
|
||||
|
@ -16,7 +16,8 @@ with lib;
|
|||
let
|
||||
extraPropagatedBuildInputs = [ ]
|
||||
++ optionals x11Support [ libXext libICE libXrandr ]
|
||||
++ optionals openglSupport [ libGL libGLU ]
|
||||
++ optionals (openglSupport && stdenv.isLinux) [ libGL libGLU ]
|
||||
++ optionals (openglSupport && stdenv.isDarwin) [ OpenGL GLUT ]
|
||||
++ optional alsaSupport alsa-lib
|
||||
++ optional pulseaudioSupport libpulseaudio
|
||||
++ optional stdenv.isDarwin Cocoa;
|
||||
|
|
|
@ -4,14 +4,14 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libaec";
|
||||
version = "1.0.4";
|
||||
version = "1.0.5";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.dkrz.de";
|
||||
owner = "k202009";
|
||||
repo = "libaec";
|
||||
rev = "v${version}";
|
||||
sha256 = "1rpma89i35ahbalaqz82y201syxni7jkf9892jlyyrhhrvlnm4l2";
|
||||
sha256 = "sha256-Vi0fCd9V/EH+PcD+e6RZK2/isR1xGX25POhm1Xen5ak=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
43
pkgs/development/python-modules/netmap/default.nix
Normal file
43
pkgs/development/python-modules/netmap/default.nix
Normal file
|
@ -0,0 +1,43 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, substituteAll
|
||||
, nmap
|
||||
, python
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "netmap";
|
||||
version = "0.7.0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "home-assistant-libs";
|
||||
repo = "python-nmap";
|
||||
rev = version;
|
||||
sha256 = "1a44zz9zsxy48ahlpjjrddpyfi7cnfknicfcp35hi588qm430mag";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./nmap-path.patch;
|
||||
nmap = "${lib.getBin nmap}/bin/nmap";
|
||||
})
|
||||
];
|
||||
|
||||
# upstream tests require sudo
|
||||
# make sure nmap is found instead
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
${python.interpreter} -c 'import nmap; nmap.PortScanner()'
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "nmap" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python class to use nmap and access scan results from python3";
|
||||
homepage = "https://github.com/home-assistant-libs/python-nmap";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
17
pkgs/development/python-modules/netmap/nmap-path.patch
Normal file
17
pkgs/development/python-modules/netmap/nmap-path.patch
Normal file
|
@ -0,0 +1,17 @@
|
|||
diff --git a/nmap/nmap.py b/nmap/nmap.py
|
||||
index 91c460d..8c5ff0a 100755
|
||||
--- a/nmap/nmap.py
|
||||
+++ b/nmap/nmap.py
|
||||
@@ -77,11 +77,7 @@ class PortScanner(object):
|
||||
def __init__(
|
||||
self,
|
||||
nmap_search_path=(
|
||||
- "nmap",
|
||||
- "/usr/bin/nmap",
|
||||
- "/usr/local/bin/nmap",
|
||||
- "/sw/bin/nmap",
|
||||
- "/opt/local/bin/nmap",
|
||||
+ "@nmap@",
|
||||
),
|
||||
):
|
||||
"""
|
|
@ -345,6 +345,7 @@ let
|
|||
stsm = [ pkgs.gsl_1 ];
|
||||
stringi = [ pkgs.icu.dev ];
|
||||
survSNP = [ pkgs.gsl_1 ];
|
||||
svglite = [ pkgs.libpng.dev ];
|
||||
sysfonts = [ pkgs.zlib pkgs.libpng pkgs.freetype.dev ];
|
||||
systemfonts = [ pkgs.fontconfig.dev pkgs.freetype.dev ];
|
||||
TAQMNGR = [ pkgs.zlib.dev ];
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-tarpaulin";
|
||||
version = "0.17.0";
|
||||
version = "0.18.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xd009642";
|
||||
repo = "tarpaulin";
|
||||
rev = version;
|
||||
sha256 = "1z104cd3wg718x1d89znppx4h6f0c6icgmpcllyrd0d19lb71a2b";
|
||||
sha256 = "sha256-j5VLxtu8Xg1fwDYWYJXGFUkfpgauG/5NauSniSZ7G2w=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
|
|||
];
|
||||
buildInputs = [ openssl ];
|
||||
|
||||
cargoSha256 = "1hpi9aifn3g19yqkb58lphyw8cbsqllhg5dzbqx15hcfvrb7ip4k";
|
||||
cargoSha256 = "sha256-1lFGczzcN4QPsIpEVQiSmNS7L+9rlSfxi+gopt2E7Ec=";
|
||||
#checkFlags = [ "--test-threads" "1" ];
|
||||
doCheck = false;
|
||||
|
||||
|
|
|
@ -14,13 +14,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "buildah";
|
||||
version = "1.21.1";
|
||||
version = "1.21.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = "buildah";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Wes52lTcv3Jb6gJeUS6fmf4Nee3qEcc3SibaTFvQ8sQ=";
|
||||
sha256 = "sha256-9AYFC10AYbt/qHj5hfuLRxUwibizKk4n9rgtd5RBEQg=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
|
|
@ -14,13 +14,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "skopeo";
|
||||
version = "1.3.0";
|
||||
version = "1.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
owner = "containers";
|
||||
repo = "skopeo";
|
||||
sha256 = "sha256-ZHEujkl+GUk5WjgDWdbJwOIKuOqJnIpGnvD1SsrHuhI=";
|
||||
sha256 = "sha256-ARNsNt5xpXn4ifnnRdmkhJAJq98ri3+oAF+Uov+byI0=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ pkgs, stdenv, stdenvNoCC, gccStdenv, lib, recurseIntoAttrs }:
|
||||
{ stdenv, stdenvNoCC, gccStdenv, lib, recurseIntoAttrs, libsForQt5, newScope, texlive, perlPackages, jdk8, jre8 }:
|
||||
|
||||
# To whomever it may concern:
|
||||
#
|
||||
|
@ -35,7 +35,7 @@
|
|||
with lib;
|
||||
|
||||
let
|
||||
callPackage = pkgs.newScope self;
|
||||
callPackage = newScope self;
|
||||
|
||||
# The latest Dwarf Fortress version. Maintainers: when a new version comes
|
||||
# out, ensure that (unfuck|dfhack|twbt) are all up to date before changing
|
||||
|
@ -45,51 +45,54 @@ let
|
|||
# Converts a version to a package name.
|
||||
versionToName = version: "dwarf-fortress_${lib.replaceStrings ["."] ["_"] version}";
|
||||
|
||||
dwarf-therapist-original = pkgs.qt5.callPackage ./dwarf-therapist {
|
||||
texlive = pkgs.texlive.combine {
|
||||
inherit (pkgs.texlive) scheme-basic float caption wrapfig adjmulticol sidecap preprint enumitem;
|
||||
dwarf-therapist-original = libsForQt5.callPackage ./dwarf-therapist {
|
||||
texlive = texlive.combine {
|
||||
inherit (texlive) scheme-basic float caption wrapfig adjmulticol sidecap preprint enumitem;
|
||||
};
|
||||
};
|
||||
|
||||
# A map of names to each Dwarf Fortress package we know about.
|
||||
df-games = lib.listToAttrs (map (dfVersion: {
|
||||
name = versionToName dfVersion;
|
||||
value =
|
||||
let
|
||||
# I can't believe this syntax works. Spikes of Nix code indeed...
|
||||
dwarf-fortress = callPackage ./game.nix {
|
||||
inherit dfVersion;
|
||||
inherit dwarf-fortress-unfuck;
|
||||
df-games = lib.listToAttrs (map
|
||||
(dfVersion: {
|
||||
name = versionToName dfVersion;
|
||||
value =
|
||||
let
|
||||
# I can't believe this syntax works. Spikes of Nix code indeed...
|
||||
dwarf-fortress = callPackage ./game.nix {
|
||||
inherit dfVersion;
|
||||
inherit dwarf-fortress-unfuck;
|
||||
};
|
||||
|
||||
# unfuck is linux-only right now, we will only use it there.
|
||||
dwarf-fortress-unfuck =
|
||||
if stdenv.isLinux then callPackage ./unfuck.nix { inherit dfVersion; }
|
||||
else null;
|
||||
|
||||
twbt = callPackage ./twbt { inherit dfVersion; };
|
||||
|
||||
dfhack = callPackage ./dfhack {
|
||||
inherit (perlPackages) XMLLibXML XMLLibXSLT;
|
||||
inherit dfVersion twbt;
|
||||
stdenv = gccStdenv;
|
||||
};
|
||||
|
||||
dwarf-therapist = libsForQt5.callPackage ./dwarf-therapist/wrapper.nix {
|
||||
inherit dwarf-fortress;
|
||||
dwarf-therapist = dwarf-therapist-original;
|
||||
};
|
||||
in
|
||||
callPackage ./wrapper {
|
||||
inherit (self) themes;
|
||||
|
||||
dwarf-fortress = dwarf-fortress;
|
||||
twbt = twbt;
|
||||
dfhack = dfhack;
|
||||
dwarf-therapist = dwarf-therapist;
|
||||
|
||||
jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
|
||||
};
|
||||
|
||||
# unfuck is linux-only right now, we will only use it there.
|
||||
dwarf-fortress-unfuck = if stdenv.isLinux then callPackage ./unfuck.nix { inherit dfVersion; }
|
||||
else null;
|
||||
|
||||
twbt = callPackage ./twbt { inherit dfVersion; };
|
||||
|
||||
dfhack = callPackage ./dfhack {
|
||||
inherit (pkgs.perlPackages) XMLLibXML XMLLibXSLT;
|
||||
inherit dfVersion twbt;
|
||||
stdenv = gccStdenv;
|
||||
};
|
||||
|
||||
dwarf-therapist = callPackage ./dwarf-therapist/wrapper.nix {
|
||||
inherit dwarf-fortress;
|
||||
dwarf-therapist = dwarf-therapist-original;
|
||||
};
|
||||
in
|
||||
callPackage ./wrapper {
|
||||
inherit (self) themes;
|
||||
|
||||
dwarf-fortress = dwarf-fortress;
|
||||
twbt = twbt;
|
||||
dfhack = dfhack;
|
||||
dwarf-therapist = dwarf-therapist;
|
||||
|
||||
jdk = pkgs.jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
|
||||
};
|
||||
}) (lib.attrNames self.df-hashes));
|
||||
})
|
||||
(lib.attrNames self.df-hashes));
|
||||
|
||||
self = rec {
|
||||
df-hashes = builtins.fromJSON (builtins.readFile ./game.json);
|
||||
|
@ -107,7 +110,7 @@ let
|
|||
soundSense = callPackage ./soundsense.nix { };
|
||||
|
||||
legends-browser = callPackage ./legends-browser {
|
||||
jre = pkgs.jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
|
||||
jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
|
||||
};
|
||||
|
||||
themes = recurseIntoAttrs (callPackage ./themes {
|
||||
|
@ -119,4 +122,5 @@ let
|
|||
cla-theme = themes.cla;
|
||||
};
|
||||
|
||||
in self // df-games
|
||||
in
|
||||
self // df-games
|
||||
|
|
|
@ -1,7 +1,20 @@
|
|||
{ stdenv, buildEnv, lib, fetchFromGitHub, cmake, writeScriptBin
|
||||
, perl, XMLLibXML, XMLLibXSLT, zlib, ruby
|
||||
, enableStoneSense ? false, allegro5, libGLU, libGL
|
||||
, enableTWBT ? true, twbt
|
||||
{ stdenv
|
||||
, buildEnv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, writeScriptBin
|
||||
, perl
|
||||
, XMLLibXML
|
||||
, XMLLibXSLT
|
||||
, zlib
|
||||
, ruby
|
||||
, enableStoneSense ? false
|
||||
, allegro5
|
||||
, libGLU
|
||||
, libGL
|
||||
, enableTWBT ? true
|
||||
, twbt
|
||||
, SDL
|
||||
, dfVersion
|
||||
}:
|
||||
|
@ -60,9 +73,10 @@ let
|
|||
};
|
||||
};
|
||||
|
||||
release = if hasAttr dfVersion dfhack-releases
|
||||
then getAttr dfVersion dfhack-releases
|
||||
else throw "[DFHack] Unsupported Dwarf Fortress version: ${dfVersion}";
|
||||
release =
|
||||
if hasAttr dfVersion dfhack-releases
|
||||
then getAttr dfVersion dfhack-releases
|
||||
else throw "[DFHack] Unsupported Dwarf Fortress version: ${dfVersion}";
|
||||
|
||||
version = release.dfHackRelease;
|
||||
|
||||
|
@ -125,7 +139,7 @@ let
|
|||
nativeBuildInputs = [ cmake perl XMLLibXML XMLLibXSLT fakegit ];
|
||||
# We don't use system libraries because dfhack needs old C++ ABI.
|
||||
buildInputs = [ zlib SDL ]
|
||||
++ lib.optionals enableStoneSense [ allegro5 libGLU libGL ];
|
||||
++ lib.optionals enableStoneSense [ allegro5 libGLU libGL ];
|
||||
|
||||
preConfigure = ''
|
||||
# Trick build system into believing we have .git
|
||||
|
@ -138,7 +152,7 @@ let
|
|||
'';
|
||||
|
||||
cmakeFlags = [ "-DDFHACK_BUILD_ARCH=${arch}" "-DDOWNLOAD_RUBY=OFF" ]
|
||||
++ lib.optionals enableStoneSense [ "-DBUILD_STONESENSE=ON" "-DSTONESENSE_INTERNAL_SO=OFF" ];
|
||||
++ lib.optionals enableStoneSense [ "-DBUILD_STONESENSE=ON" "-DSTONESENSE_INTERNAL_SO=OFF" ];
|
||||
|
||||
# dfhack expects an unversioned libruby.so to be present in the hack
|
||||
# subdirectory for ruby plugins to function.
|
||||
|
|
|
@ -1,5 +1,12 @@
|
|||
{ lib, stdenv, fetchFromGitHub, qtbase
|
||||
, qtdeclarative, cmake, texlive, ninja }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, qtbase
|
||||
, qtdeclarative
|
||||
, cmake
|
||||
, texlive
|
||||
, ninja
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "dwarf-therapist";
|
||||
|
@ -15,10 +22,11 @@ stdenv.mkDerivation rec {
|
|||
nativeBuildInputs = [ texlive cmake ninja ];
|
||||
buildInputs = [ qtbase qtdeclarative ];
|
||||
|
||||
installPhase = if stdenv.isDarwin then ''
|
||||
mkdir -p $out/Applications
|
||||
cp -r DwarfTherapist.app $out/Applications
|
||||
'' else null;
|
||||
installPhase =
|
||||
if stdenv.isDarwin then ''
|
||||
mkdir -p $out/Applications
|
||||
cp -r DwarfTherapist.app $out/Applications
|
||||
'' else null;
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
|
|
|
@ -5,22 +5,21 @@
|
|||
install_dir="@install@"
|
||||
therapist_dir="@therapist@"
|
||||
|
||||
cat <<EOF >&2
|
||||
@cat@ <<EOF >&2
|
||||
Using $DT_DIR as Dwarf Therapist overlay directory.
|
||||
EOF
|
||||
|
||||
update_path() {
|
||||
local path="$1"
|
||||
|
||||
mkdir -p "$DT_DIR/$(dirname "$path")"
|
||||
@mkdir@ -p "$DT_DIR/$(@dirname@ "$path")"
|
||||
if [ ! -e "$DT_DIR/$path" ] || [ -L "$DT_DIR/$path" ]; then
|
||||
rm -f "$DT_DIR/$path"
|
||||
ln -s "$install_dir/share/dwarftherapist/$path" "$DT_DIR/$path"
|
||||
@rm@ -f "$DT_DIR/$path"
|
||||
@ln@ -s "$install_dir/share/dwarftherapist/$path" "$DT_DIR/$path"
|
||||
fi
|
||||
}
|
||||
|
||||
cd "$install_dir/share/dwarftherapist"
|
||||
update_path memory_layouts
|
||||
|
||||
QT_QPA_PLATFORM_PLUGIN_PATH="@qt_plugin_path@" \
|
||||
exec "$therapist_dir/bin/dwarftherapist" "$@"
|
||||
exec "$therapist_dir/bin/dwarftherapist" "$@"
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
{ pkgs, stdenv, dwarf-therapist, dwarf-fortress, makeWrapper }:
|
||||
{ stdenv, dwarf-therapist, dwarf-fortress, substituteAll, coreutils, wrapQtAppsHook }:
|
||||
|
||||
let
|
||||
platformSlug = if stdenv.targetPlatform.is32bit then
|
||||
"linux32" else "linux64";
|
||||
platformSlug =
|
||||
if stdenv.targetPlatform.is32bit then
|
||||
"linux32" else "linux64";
|
||||
inifile = "linux/v0.${dwarf-fortress.baseVersion}.${dwarf-fortress.patchVersion}_${platformSlug}.ini";
|
||||
|
||||
in
|
||||
|
@ -10,24 +11,32 @@ in
|
|||
stdenv.mkDerivation {
|
||||
name = "dwarf-therapist-${dwarf-therapist.version}";
|
||||
|
||||
wrapper = ./dwarf-therapist.in;
|
||||
wrapper = substituteAll {
|
||||
src = ./dwarf-therapist.in;
|
||||
stdenv_shell = "${stdenv.shell}";
|
||||
rm = "${coreutils}/bin/rm";
|
||||
ln = "${coreutils}/bin/ln";
|
||||
cat = "${coreutils}/bin/cat";
|
||||
mkdir = "${coreutils}/bin/mkdir";
|
||||
dirname = "${coreutils}/bin/dirname";
|
||||
therapist = "${dwarf-therapist}";
|
||||
};
|
||||
|
||||
paths = [ dwarf-therapist ];
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
nativeBuildInputs = [ wrapQtAppsHook ];
|
||||
|
||||
passthru = { inherit dwarf-fortress dwarf-therapist; };
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/bin/dwarftherapist $out/bin/DwarfTherapist
|
||||
substitute $wrapper $out/bin/dwarftherapist \
|
||||
--subst-var-by stdenv_shell ${stdenv.shell} \
|
||||
--subst-var-by install $out \
|
||||
--subst-var-by therapist ${dwarf-therapist} \
|
||||
--subst-var-by qt_plugin_path "${pkgs.qt5.qtbase}/lib/qt-${pkgs.qt5.qtbase.qtCompatVersion}/plugins/platforms"
|
||||
|
||||
chmod 755 $out/bin/dwarftherapist
|
||||
install -Dm755 $wrapper $out/bin/dwarftherapist
|
||||
ln -s $out/bin/dwarftherapist $out/bin/DwarfTherapist
|
||||
|
||||
substituteInPlace $out/bin/dwarftherapist \
|
||||
--subst-var-by install $out
|
||||
wrapQtApp $out/bin/dwarftherapist
|
||||
|
||||
# Fix up memory layouts
|
||||
rm -rf $out/share/dwarftherapist/memory_layouts/linux
|
||||
|
|
|
@ -1,10 +1,16 @@
|
|||
{ stdenv, lib, fetchurl
|
||||
, SDL, dwarf-fortress-unfuck
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchurl
|
||||
, SDL
|
||||
, dwarf-fortress-unfuck
|
||||
|
||||
# Our own "unfuck" libs for macOS
|
||||
, ncurses, fmodex, gcc
|
||||
# Our own "unfuck" libs for macOS
|
||||
, ncurses
|
||||
, fmodex
|
||||
, gcc
|
||||
|
||||
, dfVersion, df-hashes
|
||||
, dfVersion
|
||||
, df-hashes
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
@ -30,15 +36,18 @@ let
|
|||
baseVersion = elemAt dfVersionTriple 1;
|
||||
patchVersion = elemAt dfVersionTriple 2;
|
||||
|
||||
game = if hasAttr dfVersion df-hashes
|
||||
then getAttr dfVersion df-hashes
|
||||
else throw "Unknown Dwarf Fortress version: ${dfVersion}";
|
||||
dfPlatform = if hasAttr stdenv.hostPlatform.system platforms
|
||||
then getAttr stdenv.hostPlatform.system platforms
|
||||
else throw "Unsupported system: ${stdenv.hostPlatform.system}";
|
||||
sha256 = if hasAttr dfPlatform game
|
||||
then getAttr dfPlatform game
|
||||
else throw "Unsupported dfPlatform: ${dfPlatform}";
|
||||
game =
|
||||
if hasAttr dfVersion df-hashes
|
||||
then getAttr dfVersion df-hashes
|
||||
else throw "Unknown Dwarf Fortress version: ${dfVersion}";
|
||||
dfPlatform =
|
||||
if hasAttr stdenv.hostPlatform.system platforms
|
||||
then getAttr stdenv.hostPlatform.system platforms
|
||||
else throw "Unsupported system: ${stdenv.hostPlatform.system}";
|
||||
sha256 =
|
||||
if hasAttr dfPlatform game
|
||||
then getAttr dfPlatform game
|
||||
else throw "Unsupported dfPlatform: ${dfPlatform}";
|
||||
|
||||
in
|
||||
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
{ stdenvNoCC, lib, buildEnv
|
||||
, df-games, themes, latestVersion, versionToName
|
||||
{ stdenvNoCC
|
||||
, lib
|
||||
, buildEnv
|
||||
, df-games
|
||||
, themes
|
||||
, latestVersion
|
||||
, versionToName
|
||||
, dfVersion ? latestVersion
|
||||
# This package should, at any given time, provide an opinionated "optimal"
|
||||
# DF experience. It's the equivalent of the Lazy Newbie Pack, that is, and
|
||||
|
@ -9,9 +14,10 @@
|
|||
, enableSoundSense ? true
|
||||
, enableStoneSense ? true
|
||||
, enableDwarfTherapist ? true
|
||||
, enableLegendsBrowser ? true, legends-browser
|
||||
, enableLegendsBrowser ? true
|
||||
, legends-browser
|
||||
, theme ? themes.phoebus
|
||||
# General config options:
|
||||
# General config options:
|
||||
, enableIntro ? true
|
||||
, enableTruetype ? true
|
||||
, enableFPS ? false
|
||||
|
@ -23,9 +29,10 @@ with lib;
|
|||
|
||||
let
|
||||
dfGame = versionToName dfVersion;
|
||||
dwarf-fortress = if hasAttr dfGame df-games
|
||||
then getAttr dfGame df-games
|
||||
else throw "Unknown Dwarf Fortress version: ${dfVersion}";
|
||||
dwarf-fortress =
|
||||
if hasAttr dfGame df-games
|
||||
then getAttr dfGame df-games
|
||||
else throw "Unknown Dwarf Fortress version: ${dfVersion}";
|
||||
dwarf-therapist = dwarf-fortress.dwarf-therapist;
|
||||
in
|
||||
buildEnv {
|
||||
|
@ -33,10 +40,11 @@ buildEnv {
|
|||
paths = [
|
||||
(dwarf-fortress.override {
|
||||
inherit enableDFHack enableTWBT enableSoundSense enableStoneSense theme
|
||||
enableIntro enableTruetype enableFPS enableTextMode enableSound;
|
||||
})]
|
||||
++ lib.optional enableDwarfTherapist dwarf-therapist
|
||||
++ lib.optional enableLegendsBrowser legends-browser;
|
||||
enableIntro enableTruetype enableFPS enableTextMode enableSound;
|
||||
})
|
||||
]
|
||||
++ lib.optional enableDwarfTherapist dwarf-therapist
|
||||
++ lib.optional enableLegendsBrowser legends-browser;
|
||||
|
||||
meta = with lib; {
|
||||
description = "An opinionated wrapper for Dwarf Fortress";
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
{ stdenv, fetchzip, dos2unix
|
||||
{ stdenv
|
||||
, fetchzip
|
||||
, dos2unix
|
||||
, soundPack ? stdenv.mkDerivation {
|
||||
name = "soundsense-soundpack";
|
||||
src = fetchzip {
|
||||
|
@ -8,7 +10,8 @@
|
|||
installPhase = ''
|
||||
cp -r . $out
|
||||
'';
|
||||
}}:
|
||||
}
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2016-1_196";
|
||||
|
|
|
@ -1,19 +1,21 @@
|
|||
{lib, fetchFromGitHub, ...}:
|
||||
{ lib, fetchFromGitHub, ... }:
|
||||
|
||||
with builtins;
|
||||
|
||||
listToAttrs (map (v: {
|
||||
inherit (v) name;
|
||||
value = fetchFromGitHub {
|
||||
name = "${v.name}-${v.version}";
|
||||
owner = "DFgraphics";
|
||||
repo = v.name;
|
||||
rev = v.version;
|
||||
sha256 = v.sha256;
|
||||
meta = with lib; {
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.matthewbauer maintainers.shazow ];
|
||||
license = licenses.free;
|
||||
listToAttrs (map
|
||||
(v: {
|
||||
inherit (v) name;
|
||||
value = fetchFromGitHub {
|
||||
name = "${v.name}-${v.version}";
|
||||
owner = "DFgraphics";
|
||||
repo = v.name;
|
||||
rev = v.version;
|
||||
sha256 = v.sha256;
|
||||
meta = with lib; {
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.matthewbauer maintainers.shazow ];
|
||||
license = licenses.free;
|
||||
};
|
||||
};
|
||||
};
|
||||
}) (fromJSON (readFile ./themes.json)))
|
||||
})
|
||||
(fromJSON (readFile ./themes.json)))
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
{ stdenvNoCC, lib, fetchurl, unzip
|
||||
{ stdenvNoCC
|
||||
, lib
|
||||
, fetchurl
|
||||
, unzip
|
||||
, dfVersion
|
||||
}:
|
||||
|
||||
|
@ -49,9 +52,10 @@ let
|
|||
};
|
||||
};
|
||||
|
||||
release = if hasAttr dfVersion twbt-releases
|
||||
then getAttr dfVersion twbt-releases
|
||||
else throw "[TWBT] Unsupported Dwarf Fortress version: ${dfVersion}";
|
||||
release =
|
||||
if hasAttr dfVersion twbt-releases
|
||||
then getAttr dfVersion twbt-releases
|
||||
else throw "[TWBT] Unsupported Dwarf Fortress version: ${dfVersion}";
|
||||
in
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
|
|
|
@ -1,7 +1,21 @@
|
|||
{ stdenv, lib, fetchFromGitHub, cmake
|
||||
, libGL, libSM, SDL, SDL_image, SDL_ttf, glew, openalSoft
|
||||
, ncurses, glib, gtk2, libsndfile, zlib
|
||||
, dfVersion, pkg-config
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, libGL
|
||||
, libSM
|
||||
, SDL
|
||||
, SDL_image
|
||||
, SDL_ttf
|
||||
, glew
|
||||
, openalSoft
|
||||
, ncurses
|
||||
, glib
|
||||
, gtk2
|
||||
, libsndfile
|
||||
, zlib
|
||||
, dfVersion
|
||||
, pkg-config
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
@ -46,9 +60,10 @@ let
|
|||
};
|
||||
};
|
||||
|
||||
release = if hasAttr dfVersion unfuck-releases
|
||||
then getAttr dfVersion unfuck-releases
|
||||
else throw "[unfuck] Unknown Dwarf Fortress version: ${dfVersion}";
|
||||
release =
|
||||
if hasAttr dfVersion unfuck-releases
|
||||
then getAttr dfVersion unfuck-releases
|
||||
else throw "[unfuck] Unknown Dwarf Fortress version: ${dfVersion}";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
|
@ -68,8 +83,17 @@ stdenv.mkDerivation {
|
|||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
buildInputs = [
|
||||
libSM SDL SDL_image SDL_ttf glew openalSoft
|
||||
ncurses gtk2 libsndfile zlib libGL
|
||||
libSM
|
||||
SDL
|
||||
SDL_image
|
||||
SDL_ttf
|
||||
glew
|
||||
openalSoft
|
||||
ncurses
|
||||
gtk2
|
||||
libsndfile
|
||||
zlib
|
||||
libGL
|
||||
];
|
||||
|
||||
# Don't strip unused symbols; dfhack hooks into some of them.
|
||||
|
|
|
@ -1,13 +1,22 @@
|
|||
{ stdenv, lib, buildEnv, substituteAll, runCommand
|
||||
{ stdenv
|
||||
, lib
|
||||
, buildEnv
|
||||
, substituteAll
|
||||
, runCommand
|
||||
, coreutils
|
||||
, dwarf-fortress
|
||||
, dwarf-therapist
|
||||
, enableDFHack ? false, dfhack
|
||||
, enableSoundSense ? false, soundSense, jdk
|
||||
, enableDFHack ? false
|
||||
, dfhack
|
||||
, enableSoundSense ? false
|
||||
, soundSense
|
||||
, jdk
|
||||
, enableStoneSense ? false
|
||||
, enableTWBT ? false, twbt
|
||||
, themes ? {}
|
||||
, enableTWBT ? false
|
||||
, twbt
|
||||
, themes ? { }
|
||||
, theme ? null
|
||||
# General config options:
|
||||
# General config options:
|
||||
, enableIntro ? true
|
||||
, enableTruetype ? true
|
||||
, enableFPS ? false
|
||||
|
@ -31,11 +40,11 @@ let
|
|||
# These are in inverse order for first packages to override the next ones.
|
||||
themePkg = lib.optional (theme != null) ptheme;
|
||||
pkgs = lib.optional enableDFHack dfhack_
|
||||
++ lib.optional enableSoundSense soundSense
|
||||
++ lib.optional enableTWBT twbt.art
|
||||
++ [ dwarf-fortress ];
|
||||
++ lib.optional enableSoundSense soundSense
|
||||
++ lib.optional enableTWBT twbt.art
|
||||
++ [ dwarf-fortress ];
|
||||
|
||||
fixup = lib.singleton (runCommand "fixup" {} (''
|
||||
fixup = lib.singleton (runCommand "fixup" { } (''
|
||||
mkdir -p $out/data/init
|
||||
'' + (if (theme != null) then ''
|
||||
cp ${lib.head themePkg}/data/init/init.txt $out/data/init/init.txt
|
||||
|
@ -61,7 +70,7 @@ let
|
|||
substituteInPlace $out/data/init/init.txt \
|
||||
--replace '[PRINT_MODE:2D]' '[PRINT_MODE:TWBT]'
|
||||
'' +
|
||||
lib.optionalString enableTextMode ''
|
||||
lib.optionalString enableTextMode ''
|
||||
substituteInPlace $out/data/init/init.txt \
|
||||
--replace '[PRINT_MODE:2D]' '[PRINT_MODE:TEXT]'
|
||||
'' + ''
|
||||
|
@ -89,8 +98,15 @@ stdenv.mkDerivation {
|
|||
name = "dwarf-fortress-init";
|
||||
src = ./dwarf-fortress-init.in;
|
||||
inherit env;
|
||||
exe = if stdenv.isLinux then "libs/Dwarf_Fortress"
|
||||
else "dwarfort.exe";
|
||||
exe =
|
||||
if stdenv.isLinux then "libs/Dwarf_Fortress"
|
||||
else "dwarfort.exe";
|
||||
stdenv_shell = "${stdenv.shell}";
|
||||
cp = "${coreutils}/bin/cp";
|
||||
rm = "${coreutils}/bin/rm";
|
||||
ln = "${coreutils}/bin/ln";
|
||||
cat = "${coreutils}/bin/cat";
|
||||
mkdir = "${coreutils}/bin/mkdir";
|
||||
};
|
||||
|
||||
runDF = ./dwarf-fortress.in;
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
#!@stdenv_shell@ -e
|
||||
shopt -s extglob
|
||||
|
||||
[ -z "$DF_DIR" ] && export DF_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/df_linux"
|
||||
|
@ -7,25 +8,25 @@ exe="$env_dir/@exe@"
|
|||
update_path() {
|
||||
local path="$1"
|
||||
|
||||
mkdir -p "$DF_DIR/$(dirname "$path")"
|
||||
@mkdir@ -p "$DF_DIR/$(dirname "$path")"
|
||||
# If user has replaced these data directories, let them stay.
|
||||
if [ ! -e "$DF_DIR/$path" ] || [ -L "$DF_DIR/$path" ]; then
|
||||
rm -f "$DF_DIR/$path"
|
||||
ln -s "$env_dir/$path" "$DF_DIR/$path"
|
||||
@rm@ -f "$DF_DIR/$path"
|
||||
@ln@ -s "$env_dir/$path" "$DF_DIR/$path"
|
||||
fi
|
||||
}
|
||||
|
||||
forcecopy_path() {
|
||||
local path="$1"
|
||||
|
||||
mkdir -p "$DF_DIR/$(dirname "$path")"
|
||||
rm -rf "$DF_DIR/$path"
|
||||
cp -rL --no-preserve=all "$env_dir/$path" "$DF_DIR/$path"
|
||||
@mkdir@ -p "$DF_DIR/$(dirname "$path")"
|
||||
@rm@ -rf "$DF_DIR/$path"
|
||||
@cp@ -rL --no-preserve=all "$env_dir/$path" "$DF_DIR/$path"
|
||||
}
|
||||
|
||||
mkdir -p "$DF_DIR"
|
||||
@mkdir@ -p "$DF_DIR"
|
||||
|
||||
cat <<EOF >&2
|
||||
@cat@ <<EOF >&2
|
||||
Using $DF_DIR as Dwarf Fortress overlay directory.
|
||||
If you do any changes in it, don't forget to clean it when updating the game version!
|
||||
We try to detect changes based on data directories being symbolic links -- keep this in mind.
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "dnsx";
|
||||
version = "1.0.4";
|
||||
version = "1.0.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "projectdiscovery";
|
||||
repo = "dnsx";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-dfjchsmGqyWLxO2sP+TlBEeKz9Fd4bHWG2r4FJPGNMs=";
|
||||
sha256 = "sha256-w+FQp5pvySM36UHFxBH5WRZvnGi43NZeI2tLr6HAF3Q=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-KJyWb+coWSdvZGwDw/JSLtPeynndnaevwyYIzyEH4Kc=";
|
||||
vendorSha256 = "sha256-gsoeAau3klOFTu+ZEYEMdIuXw/5IVsfFJ2maxPaZKjA=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fast and multi-purpose DNS toolkit";
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libtpms";
|
||||
version = "0.8.3";
|
||||
version = "0.8.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stefanberger";
|
||||
repo = "libtpms";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-D6lYOVlgtBY6C07YqbG6TPnDKrUoEj82Ra6GK/HB7X8=";
|
||||
sha256 = "sha256-9e7O9SE7e8D6ULXhICabNCrL+QTH55jQm0AI7DVteE0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,31 +1,34 @@
|
|||
{ lib, buildGoModule, fetchFromGitHub, git }:
|
||||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "chroma";
|
||||
version = "0.9.1";
|
||||
version = "0.9.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alecthomas";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-+4UaQrJh3PBf68rlW1lOEyEVw3vWxfc+Casa5+H8F9A=";
|
||||
sha256 = "19d7yr6q8kwrm91yyglmw9n7wa861sgi6dbwn8sl6dp55czfwvaq";
|
||||
# populate values otherwise taken care of by goreleaser,
|
||||
# unfortunately these require us to use git. By doing
|
||||
# this in postFetch we can delete .git afterwards and
|
||||
# maintain better reproducibility of the src.
|
||||
leaveDotGit = true;
|
||||
postFetch = ''
|
||||
cd "$out"
|
||||
|
||||
commit="$(git rev-parse HEAD)"
|
||||
date=$(git show -s --format=%aI "$commit")
|
||||
|
||||
substituteInPlace "$out/cmd/chroma/main.go" \
|
||||
--replace 'version = "?"' 'version = "${version}"' \
|
||||
--replace 'commit = "?"' "commit = \"$commit\"" \
|
||||
--replace 'date = "?"' "date = \"$date\""
|
||||
|
||||
find "$out" -name .git -print0 | xargs -0 rm -rf
|
||||
'';
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ git ];
|
||||
|
||||
# populate values otherwise taken care of by goreleaser
|
||||
# https://github.com/alecthomas/chroma/issues/435
|
||||
postPatch = ''
|
||||
commit="$(git rev-parse HEAD)"
|
||||
date=$(git show -s --format=%aI "$commit")
|
||||
|
||||
substituteInPlace cmd/chroma/main.go \
|
||||
--replace 'version = "?"' 'version = "${version}"' \
|
||||
--replace 'commit = "?"' "commit = \"$commit\"" \
|
||||
--replace 'date = "?"' "date = \"$date\""
|
||||
'';
|
||||
|
||||
vendorSha256 = "0y8mp08zccn9qxrsj9j7vambz8dwzsxbbgrlppzam53rg8rpxhrg";
|
||||
|
||||
subPackages = [ "cmd/chroma" ];
|
||||
|
|
|
@ -18100,7 +18100,7 @@ in
|
|||
};
|
||||
|
||||
SDL = callPackage ../development/libraries/SDL ({
|
||||
inherit (darwin.apple_sdk.frameworks) OpenGL CoreAudio CoreServices AudioUnit Kernel Cocoa;
|
||||
inherit (darwin.apple_sdk.frameworks) OpenGL CoreAudio CoreServices AudioUnit Kernel Cocoa GLUT;
|
||||
} // lib.optionalAttrs stdenv.hostPlatform.isAndroid {
|
||||
# libGLU doesn’t work with Android’s SDL
|
||||
libGLU = null;
|
||||
|
|
|
@ -59,6 +59,73 @@ lib.makeScope pkgs.newScope (self: with self; {
|
|||
pname = "php-${pname}";
|
||||
});
|
||||
|
||||
# Function to build an extension which is shipped as part of the php
|
||||
# source, based on the php version.
|
||||
#
|
||||
# Name passed is the name of the extension and is automatically used
|
||||
# to add the configureFlag "--enable-${name}", which can be overriden.
|
||||
#
|
||||
# Build inputs is used for extra deps that may be needed. And zendExtension
|
||||
# will mark the extension as a zend extension or not.
|
||||
mkExtension =
|
||||
{ name
|
||||
, configureFlags ? [ "--enable-${name}" ]
|
||||
, internalDeps ? [ ]
|
||||
, postPhpize ? ""
|
||||
, buildInputs ? [ ]
|
||||
, zendExtension ? false
|
||||
, doCheck ? true
|
||||
, ...
|
||||
}@args: stdenv.mkDerivation ((builtins.removeAttrs args [ "name" ]) // {
|
||||
pname = "php-${name}";
|
||||
extensionName = name;
|
||||
|
||||
inherit (php.unwrapped) version src;
|
||||
sourceRoot = "php-${php.version}/ext/${name}";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
nativeBuildInputs = [ php.unwrapped autoconf pkg-config re2c ];
|
||||
inherit configureFlags internalDeps buildInputs
|
||||
zendExtension doCheck;
|
||||
|
||||
prePatch = "pushd ../..";
|
||||
postPatch = "popd";
|
||||
|
||||
preConfigure = ''
|
||||
nullglobRestore=$(shopt -p nullglob)
|
||||
shopt -u nullglob # To make ?-globbing work
|
||||
|
||||
# Some extensions have a config0.m4 or config9.m4
|
||||
if [ -f config?.m4 ]; then
|
||||
mv config?.m4 config.m4
|
||||
fi
|
||||
|
||||
$nullglobRestore
|
||||
phpize
|
||||
${postPhpize}
|
||||
${lib.concatMapStringsSep "\n"
|
||||
(dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}")
|
||||
internalDeps}
|
||||
'';
|
||||
checkPhase = "runHook preCheck; NO_INTERACTON=yes make test; runHook postCheck";
|
||||
outputs = [ "out" "dev" ];
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/php/extensions
|
||||
cp modules/${name}.so $out/lib/php/extensions/${name}.so
|
||||
mkdir -p $dev/include
|
||||
${rsync}/bin/rsync -r --filter="+ */" \
|
||||
--filter="+ *.h" \
|
||||
--filter="- *" \
|
||||
--prune-empty-dirs \
|
||||
. $dev/include/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "PHP upstream extension: ${name}";
|
||||
inherit (php.meta) maintainers homepage license;
|
||||
};
|
||||
});
|
||||
|
||||
php = phpPackage;
|
||||
|
||||
# This is a set of interactive tools based on PHP.
|
||||
|
@ -171,72 +238,6 @@ lib.makeScope pkgs.newScope (self: with self; {
|
|||
yaml = callPackage ../development/php-packages/yaml { };
|
||||
} // (
|
||||
let
|
||||
# Function to build a single php extension based on the php version.
|
||||
#
|
||||
# Name passed is the name of the extension and is automatically used
|
||||
# to add the configureFlag "--enable-${name}", which can be overriden.
|
||||
#
|
||||
# Build inputs is used for extra deps that may be needed. And zendExtension
|
||||
# will mark the extension as a zend extension or not.
|
||||
mkExtension =
|
||||
{ name
|
||||
, configureFlags ? [ "--enable-${name}" ]
|
||||
, internalDeps ? [ ]
|
||||
, postPhpize ? ""
|
||||
, buildInputs ? [ ]
|
||||
, zendExtension ? false
|
||||
, doCheck ? true
|
||||
, ...
|
||||
}@args: stdenv.mkDerivation ((builtins.removeAttrs args [ "name" ]) // {
|
||||
pname = "php-${name}";
|
||||
extensionName = name;
|
||||
|
||||
inherit (php.unwrapped) version src;
|
||||
sourceRoot = "php-${php.version}/ext/${name}";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
nativeBuildInputs = [ php.unwrapped autoconf pkg-config re2c ];
|
||||
inherit configureFlags internalDeps buildInputs
|
||||
zendExtension doCheck;
|
||||
|
||||
prePatch = "pushd ../..";
|
||||
postPatch = "popd";
|
||||
|
||||
preConfigure = ''
|
||||
nullglobRestore=$(shopt -p nullglob)
|
||||
shopt -u nullglob # To make ?-globbing work
|
||||
|
||||
# Some extensions have a config0.m4 or config9.m4
|
||||
if [ -f config?.m4 ]; then
|
||||
mv config?.m4 config.m4
|
||||
fi
|
||||
|
||||
$nullglobRestore
|
||||
phpize
|
||||
${postPhpize}
|
||||
${lib.concatMapStringsSep "\n"
|
||||
(dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}")
|
||||
internalDeps}
|
||||
'';
|
||||
checkPhase = "runHook preCheck; NO_INTERACTON=yes make test; runHook postCheck";
|
||||
outputs = [ "out" "dev" ];
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/php/extensions
|
||||
cp modules/${name}.so $out/lib/php/extensions/${name}.so
|
||||
mkdir -p $dev/include
|
||||
${rsync}/bin/rsync -r --filter="+ */" \
|
||||
--filter="+ *.h" \
|
||||
--filter="- *" \
|
||||
--prune-empty-dirs \
|
||||
. $dev/include/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "PHP upstream extension: ${name}";
|
||||
inherit (php.meta) maintainers homepage license;
|
||||
};
|
||||
});
|
||||
|
||||
# This list contains build instructions for different modules that one may
|
||||
# want to build.
|
||||
#
|
||||
|
|
|
@ -5233,6 +5233,8 @@ in {
|
|||
|
||||
phonenumbers = callPackage ../development/python-modules/phonenumbers { };
|
||||
|
||||
netmap = callPackage ../development/python-modules/netmap { };
|
||||
|
||||
openapi-core = callPackage ../development/python-modules/openapi-core { };
|
||||
|
||||
pdunehd = callPackage ../development/python-modules/pdunehd { };
|
||||
|
|
Loading…
Reference in a new issue