Merge master into staging-next

This commit is contained in:
github-actions[bot] 2023-01-30 12:01:22 +00:00 committed by GitHub
commit 1a06f52c21
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
93 changed files with 2407 additions and 1052 deletions

View file

@ -1,6 +1,19 @@
# Testers {#chap-testers}
This chapter describes several testing builders which are available in the <literal>testers</literal> namespace.
## `hasPkgConfigModule` {#tester-hasPkgConfigModule}
Checks whether a package exposes a certain `pkg-config` module.
Example:
```nix
passthru.tests.pkg-config = testers.hasPkgConfigModule {
package = finalAttrs.finalPackage;
moduleName = "libfoo";
}
```
## `testVersion` {#tester-testVersion}
Checks the command output contains the specified version

View file

@ -32,6 +32,7 @@
<xi:include href="octave.section.xml" />
<xi:include href="perl.section.xml" />
<xi:include href="php.section.xml" />
<xi:include href="pkg-config.section.xml" />
<xi:include href="python.section.xml" />
<xi:include href="qt.section.xml" />
<xi:include href="r.section.xml" />

View file

@ -0,0 +1,9 @@
# pkg-config {#sec-pkg-config}
*pkg-config* is a unified interface for declaring and querying built C/C++ libraries.
Nixpkgs provides a couple of facilities for working with this tool.
- A [setup hook](#setup-hook-pkg-config) bundled with in the `pkg-config` package, to bring a derivation's declared build inputs into the environment.
- The [`validatePkgConfig` setup hook](https://nixos.org/manual/nixpkgs/stable/#validatepkgconfig), for packages that provide pkg-config modules.
- The `defaultPkgConfigPackages` package set: a set of aliases, named after the modules they provide. This is meant to be used by language-to-nix integrations. Hand-written packages should use the normal Nixpkgs attribute name instead.

View file

@ -252,7 +252,8 @@ rec {
outputsList = map makeOutput outputs;
drv' = (lib.head outputsList).value;
in lib.deepSeq drv' drv';
in if drv == null then null else
lib.deepSeq drv' drv';
/* Make a set of packages with a common scope. All packages called
with the provided `callPackage` will be evaluated with the same

View file

@ -90,7 +90,7 @@ let
only has an effect if {option}`uid` is
{option}`null`, in which case it determines whether
the user's UID is allocated in the range for system users
(below 500) or in the range for normal users (starting at
(below 1000) or in the range for normal users (starting at
1000).
Exactly one of `isNormalUser` and
`isSystemUser` must be true.
@ -677,7 +677,7 @@ in {
{
assertion = let
xor = a: b: a && !b || b && !a;
isEffectivelySystemUser = user.isSystemUser || (user.uid != null && user.uid < 500);
isEffectivelySystemUser = user.isSystemUser || (user.uid != null && user.uid < 1000);
in xor isEffectivelySystemUser user.isNormalUser;
message = ''
Exactly one of users.users.${user.name}.isSystemUser and users.users.${user.name}.isNormalUser must be set.

View file

@ -42,7 +42,7 @@ in {
environment.ROON_DATAROOT = "/var/lib/${name}";
serviceConfig = {
ExecStart = "${pkgs.roon-bridge}/start.sh";
ExecStart = "${pkgs.roon-bridge}/bin/RoonBridge";
LimitNOFILE = 8192;
User = cfg.user;
Group = cfg.group;

View file

@ -32,7 +32,7 @@ let
usersConf = writeText "users.conf"
''
[UserList]
minimum-uid=500
minimum-uid=1000
hidden-users=${concatStringsSep " " dmcfg.hiddenUsers}
hidden-shells=/run/current-system/sw/bin/nologin
'';

View file

@ -93,14 +93,11 @@ let
fetchWithCurlScript {
inherit name sha256;
script = ''
"''${curl[@]}" --silent --request POST \
"''${curl[@]}" --silent --request GET \
--cookie cookies \
--header "modartt-json: request" \
--header "origin: https://www.modartt.com" \
--header "content-type: application/json; charset=UTF-8" \
--header "accept: application/json, text/javascript, */*" \
--data-raw '{"file": "${name}", "get": "url"}' \
https://www.modartt.com/json/download -o /dev/null
--header "accept: */*" \
https://www.modartt.com/ -o /dev/null
json=$(
"''${curl[@]}" --silent --request POST \
--cookie cookies \
@ -109,8 +106,9 @@ let
--header "content-type: application/json; charset=UTF-8" \
--header "accept: application/json, text/javascript, */*" \
--data-raw '{"file": "${name}", "get": "url"}' \
https://www.modartt.com/json/download
https://www.modartt.com/api/0/download
)
url=$(echo $json | ${jq}/bin/jq -r .url)
"''${curl[@]}" --progress-bar --cookie cookies -o $out "$url"
'';
@ -140,7 +138,7 @@ let
--header "content-type: application/json; charset=UTF-8" \
--header "accept: application/json, text/javascript, */*" \
--data @login.json \
https://www.modartt.com/json/session
https://www.modartt.com/api/0/session
json=$(
"''${curl[@]}" --silent --request POST \
@ -150,10 +148,10 @@ let
--header "content-type: application/json; charset=UTF-8" \
--header "accept: application/json, text/javascript, */*" \
--data-raw '{"file": "${name}", "get": "url"}' \
https://www.modartt.com/json/download
https://www.modartt.com/api/0/download
)
url=$(echo $json | ${jq}/bin/jq -r .url)
url=$(echo $json | ${jq}/bin/jq -r .url)
"''${curl[@]}" --progress-bar --cookie cookies -o $out "$url"
'';
};
@ -162,20 +160,20 @@ in {
# TODO currently can't install more than one because `lame` clashes
stage-trial = mkPianoteq rec {
name = "stage-trial";
version = "7.5.4";
version = "8.0.5";
archdir = "x86-64bit";
src = fetchPianoteqTrial {
name = "pianoteq_stage_linux_trial_v${versionForFile version}.7z";
sha256 = "sha256-ybtq+hjnaQxpLxv2KE0ZcbQXtn5DJJsnMwCmh3rlrIc=";
sha256 = "sha256-9Lo4e1SM1gw2/+TmpDUdZCOQcHEpT/aaG6P80/GRPQY=";
};
};
standard-trial = mkPianoteq rec {
name = "standard-trial";
version = "7.5.4";
version = "8.0.5";
archdir = "x86-64bit";
src = fetchPianoteqTrial {
name = "pianoteq_linux_trial_v${versionForFile version}.7z";
sha256 = "sha256-3a3+SKTEhvDtqK5Kg4E6KiLvn5+j6JN6ntIb72u2bdQ=";
sha256 = "sha256-qxViVIbld8zTMj1+TIfOsIOhmujOGJux2/u2J4hvsqw=";
};
};
stage-6 = mkPianoteq rec {

View file

@ -14,29 +14,30 @@
}:
let
version = "2.7.3";
craftos2-lua = fetchFromGitHub {
owner = "MCJack123";
repo = "craftos2-lua";
rev = "v2.6.6";
sha256 = "cCXH1GTRqJQ57/6sWIxik366YBx/ii3nzQwx4YpEh1w=";
rev = "v${version}";
sha256 = "sha256-lMqYfSA3sI7+glRE+eUf03uLfbf7lipmoqgt74FUaJQ=";
};
craftos2-rom = fetchFromGitHub {
owner = "McJack123";
repo = "craftos2-rom";
rev = "v2.6.6";
sha256 = "VzIqvf83k121DxuH5zgZfFS9smipDonyqqhVgj2kgYw=";
rev = "v${version}";
sha256 = "sha256-t76Yltx7vHNoAAFvNpYLKuwFja4On6M20upmG6w3C1M=";
};
in
stdenv.mkDerivation rec {
pname = "craftos-pc";
version = "2.6.6";
inherit version;
src = fetchFromGitHub {
owner = "MCJack123";
repo = "craftos2";
rev = "v${version}";
sha256 = "9lpAWYFli3/OBfmu2dQxKi+/TaHaBQNpZsCURvl0h/E=";
sha256 = "sha256-a7oMLfjZUkEWPjxDDywlSW4qLhcQrCXPPY2BEOgiafU=";
};
buildInputs = [ patchelf poco openssl SDL2 SDL2_mixer ncurses libpng pngpp libwebp ];
@ -63,7 +64,7 @@ stdenv.mkDerivation rec {
homepage = "https://www.craftos-pc.cc";
license = with licenses; [ mit free ];
platforms = platforms.linux;
maintainers = [ maintainers.siraben ];
maintainers = with maintainers; [ siraben tomodachi94 ];
mainProgram = "craftos";
};
}

View file

@ -1,34 +0,0 @@
{ lib, python3Packages, fetchFromGitHub }:
with python3Packages;
buildPythonApplication rec {
pname = "mps-youtube";
version = "unstable-2020-01-28";
src = fetchFromGitHub {
owner = "mps-youtube";
repo = "mps-youtube";
rev = "b808697133ec2ad7654953232d1e841b20aa7cc3";
sha256 = "0lqprlpc0v092xqkjc0cc395ag45lijwgd34dpg2jy6i0f2szywv";
};
propagatedBuildInputs = [ pafy ];
# disabled due to error in loading unittest
# don't know how to make test from: <mps_youtube. ...>
doCheck = false;
# before check create a directory and redirect XDG_CONFIG_HOME to it
preCheck = ''
mkdir -p check-phase
export XDG_CONFIG_HOME=$(pwd)/check-phase
'';
meta = with lib; {
description = "Terminal based YouTube player and downloader";
homepage = "https://github.com/mps-youtube/mps-youtube";
license = licenses.gpl3;
maintainers = with maintainers; [ koral odi ];
};
}

View file

@ -1,17 +0,0 @@
Fix compatibility with Qt 5.15.
Patch copied from upstream source repository:
https://bazaar.launchpad.net/~adamreichold/qpdfview/trunk/revision/2104
--- a/sources/model.h 2017-04-19 21:01:25 +0000
+++ b/sources/model.h 2020-06-09 06:24:11 +0000
@@ -24,6 +24,7 @@
#define DOCUMENTMODEL_H
#include <QList>
+#include <QPainterPath>
#include <QtPlugin>
#include <QWidget>
#include <QVector>

View file

@ -0,0 +1,48 @@
{ lib, python3Packages, fetchFromGitHub }:
python3Packages.buildPythonApplication rec {
pname = "yewtube";
version = "2.9.0";
src = fetchFromGitHub {
owner = "iamtalhaasghar";
repo = "yewtube";
rev = "v${version}";
hash = "sha256-8GL2ZvRHtnnLZ07nQk3irJUj+XLL+pyUUA+JJPICPRA=";
};
postPatch = ''
# Don't try to detect the version at runtime with pip
substituteInPlace mps_youtube/__init__.py \
--replace "from pip._vendor import pkg_resources" "" \
--replace "__version__ =" "__version__ = '${version}' #"
# https://github.com/iamtalhaasghar/yewtube/pull/105
sed -ie '/pyreadline/d' requirements.txt
'';
propagatedBuildInputs = with python3Packages; [
pyperclip
requests
youtube-search-python
yt-dlp
];
checkInputs = with python3Packages; [
pytestCheckHook
dbus-python
pygobject3
];
preCheck = ''
export XDG_CONFIG_HOME=$(mktemp -d)
'';
pythonImportsCheck = [ "mps_youtube" ];
meta = with lib; {
description = "Terminal based YouTube player and downloader, forked from mps-youtube";
homepage = "https://github.com/iamtalhaasghar/yewtube";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ fgaz koral ];
};
}

View file

@ -12,19 +12,21 @@
, file
, ghostscript
}:
mkDerivation rec {
pname = "qpdfview";
version = "0.4.18";
version = "0.5.0";
src = fetchurl {
url = "https://launchpad.net/qpdfview/trunk/${version}/+download/qpdfview-${version}.tar.gz";
sha256 = "0v1rl126hvblajnph2hkansgi0s8vjdc5yxrm4y3faa0lxzjwr6c";
url = "https://launchpad.net/qpdfview/trunk/${version}/+download/qpdfview-0.5.tar.gz";
hash = "sha256-RO/EQKRhy911eps5bxRh7novQ2ToHfVb0CIfkQIZvpk=";
};
# apply upstream fix for qt5.15 https://bazaar.launchpad.net/~adamreichold/qpdfview/trunk/revision/2104
patches = [ ./qpdfview-qt515-compat.patch ];
nativeBuildInputs = [
qmake
pkg-config
];
nativeBuildInputs = [ qmake pkg-config ];
buildInputs = [
qtbase
qtsvg
@ -35,6 +37,7 @@ mkDerivation rec {
file
ghostscript
];
preConfigure = ''
qmakeFlags+=(*.pro)
'';

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "gerrit";
version = "3.6.2";
version = "3.7.0";
src = fetchurl {
url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
sha256 = "sha256-/OckQD6r9WSMx9Vt44eFpzsacH6VMa6NJX6sj2HBQSs=";
sha256 = "sha256-pbOe7ZN0IM4PTdRywGCyGJ7GIyPudbVJ3QokVP1bazo=";
};
buildCommand = ''

View file

@ -1,21 +1,21 @@
{ lib, buildGoModule, fetchFromGitHub, makeWrapper }:
{ lib, buildGoModule, fetchFromGitHub, makeBinaryWrapper }:
buildGoModule rec {
pname = "docker-slim";
version = "1.39.0";
version = "1.40.0";
src = fetchFromGitHub {
owner = "docker-slim";
repo = "docker-slim";
owner = "slimtoolkit";
repo = "slim";
rev = version;
sha256 = "sha256-CN3mvXjI6c10yvXM2owWASngsU2PjgLhd1N55vxubw0=";
sha256 = "sha256-KbwkZIGkAdzPPo5CrWKnKzFsD8OUONk6JWo1wzwti3s=";
};
vendorSha256 = null;
subPackages = [ "cmd/docker-slim" "cmd/docker-slim-sensor" ];
subPackages = [ "cmd/slim" "cmd/slim-sensor" ];
nativeBuildInputs = [ makeWrapper ];
nativeBuildInputs = [ makeBinaryWrapper ];
ldflags = [
"-s"
@ -27,13 +27,13 @@ buildGoModule rec {
# docker-slim tries to create its state dir next to the binary (inside the nix
# store), so we set it to use the working directory at the time of invocation
postInstall = ''
wrapProgram "$out/bin/docker-slim" --add-flags '--state-path "$(pwd)"'
wrapProgram "$out/bin/slim" --add-flags '--state-path "$(pwd)"'
'';
meta = with lib; {
description = "Minify and secure Docker containers";
homepage = "https://dockersl.im/";
changelog = "https://github.com/docker-slim/docker-slim/raw/${version}/CHANGELOG.md";
homepage = "https://slimtoolkit.org/";
changelog = "https://github.com/slimtoolkit/slim/raw/${version}/CHANGELOG.md";
license = licenses.asl20;
maintainers = with maintainers; [ Br1ght0ne marsam mbrgm ];
};

View file

@ -23,15 +23,15 @@
let
wlroots = wlroots_0_16;
in
stdenv.mkDerivation (finalAttrs: {
stdenv.mkDerivation (self: {
pname = "labwc";
version = "0.6.0";
version = "0.6.1";
src = fetchFromGitHub {
owner = "labwc";
repo = "labwc";
rev = finalAttrs.version;
hash = "sha256-P1hKYTW++dpV3kdmI5nBGun080gVTrKzi2WOJKR84j4=";
rev = self.version;
hash = "sha256-PfvtNbSAz1vt0+ko4zRPyRRN+lhQoA2kJ2xoJy5o4So=";
};
nativeBuildInputs = [
@ -64,6 +64,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = with lib; {
homepage = "https://github.com/labwc/labwc";
description = "A Wayland stacking compositor, similar to Openbox";
changelog = "https://raw.githubusercontent.com/labwc/labwc/${self.version}/NEWS.md";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres ];
inherit (wayland.meta) platforms;

View file

@ -121,4 +121,6 @@
in
nixosTesting.simpleTest calledTest;
hasPkgConfigModule = callPackage ./hasPkgConfigModule/tester.nix { };
}

View file

@ -0,0 +1,47 @@
# Static arguments
{ runCommand, pkg-config }:
# Tester arguments
{ package,
moduleName,
testName ? "check-pkg-config-${moduleName}",
}:
runCommand testName {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ package ];
inherit moduleName;
meta = {
description = "Test whether ${package.name} exposes pkg-config module ${moduleName}";
}
# Make sure licensing info etc is preserved, as this is a concern for e.g. cache.nixos.org,
# as hydra can't check this meta info in dependencies.
# The test itself is just Nixpkgs, with MIT license.
// builtins.intersectAttrs
{
available = throw "unused";
broken = throw "unused";
insecure = throw "unused";
license = throw "unused";
maintainers = throw "unused";
platforms = throw "unused";
unfree = throw "unused";
unsupported = throw "unused";
}
package.meta;
} ''
echo "checking pkg-config module $moduleName in $buildInputs"
set +e
version="$(pkg-config --modversion $moduleName)"
r=$?
set -e
if [[ $r = 0 ]]; then
echo " pkg-config module $moduleName exists and has version $version"
echo "$version" > $out
else
echo "These modules were available in the input propagation closure:"
pkg-config --list-all
echo " pkg-config module $moduleName was not found"
false
fi
''

View file

@ -0,0 +1,36 @@
# cd nixpkgs
# nix-build -A tests.testers.hasPkgConfigModule
{ lib, testers, zlib, runCommand }:
lib.recurseIntoAttrs {
zlib-has-zlib = testers.hasPkgConfigModule {
package = zlib;
moduleName = "zlib";
};
zlib-does-not-have-ylib = runCommand "zlib-does-not-have-ylib" {
failed = testers.testBuildFailure (
testers.hasPkgConfigModule {
package = zlib;
moduleName = "ylib";
}
);
} ''
echo 'it logs a relevant error message'
{
grep -F "pkg-config module ylib was not found" $failed/testBuildFailure.log
}
echo 'it logs which pkg-config modules are available, to be helpful'
{
# grep -v: the string zlib does also occur in a store path in an earlier message, which isn't particularly helpful
grep -v "checking pkg-config module" < $failed/testBuildFailure.log \
| grep -F "zlib"
}
# done
touch $out
'';
}

View file

@ -12,6 +12,8 @@ let
in
lib.recurseIntoAttrs {
hasPkgConfigModule = pkgs.callPackage ../hasPkgConfigModule/tests.nix { };
# Check that the wiring of nixosTest is correct.
# Correct operation of the NixOS test driver should be asserted elsewhere.
nixosTest-example = pkgs-with-overlay.testers.nixosTest ({ lib, pkgs, figlet, ... }: {

View file

@ -1,21 +1,22 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "atkinson-hyperlegible";
version = "unstable-2021-04-29";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "googlefonts";
repo = "atkinson-hyperlegible";
rev = "1cb311624b2ddf88e9e37873999d165a8cd28b46";
sha256 = "sha256-urSTqC3rfDRM8IMG+edwKEe7NPiTuDZph3heGHzLDks=";
src = fetchFromGitHub {
owner = "googlefonts";
repo = "atkinson-hyperlegible";
rev = "1cb311624b2ddf88e9e37873999d165a8cd28b46";
hash = "sha256-RN4m5gyY2OiPzRXgFVQ3pq6JdkPcMxV4fRlX2EK+gOM=";
};
postFetch = ''
install -Dm644 -t $out/share/fonts/opentype $out/fonts/otf/*
shopt -s extglob dotglob
rm -rf $out/!(share)
shopt -u extglob dotglob
installPhase = ''
runHook preInstall
install -Dm644 -t $out/share/fonts/opentype fonts/otf/*
runHook postInstall
'';
meta = with lib; {

View file

@ -1,15 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
name = "aurulent-sans-0.1";
owner = "deepfire";
repo = "hartke-aurulent-sans";
rev = name;
postFetch = ''
mkdir -p $out/share/fonts
tar xf $downloadedFile -C $out/share/fonts --strip=1
stdenvNoCC.mkDerivation rec {
pname = "aurulent-sans";
version = "0.1";
src = fetchFromGitHub {
owner = "deepfire";
repo = "hartke-aurulent-sans";
rev = "${pname}-${version}";
hash = "sha256-M/duhgqxXZJq5su9FrsGjZdm+wtO5B5meoDomde+GwY=";
};
installPhase = ''
runHook preInstall
install -Dm644 *.otf -t $out/share/fonts
runHook postInstall
'';
sha256 = "1l60psfv9x0x9qx9vp1qnhmck7a7kks385m5ycrd3d91irz1j5li";
meta = {
description = "Aurulent Sans";

View file

@ -1,25 +1,25 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
stdenvNoCC.mkDerivation rec {
pname = "b612";
version = "1.008";
owner = "polarsys";
repo = "b612";
rev = version;
src = fetchFromGitHub {
owner = "polarsys";
repo = "b612";
rev = version;
hash = "sha256-uyBC8UNOwztCHXhR9XZuWDwrty0eClbo0E+gI1PmjEg=";
};
installPhase = ''
runHook preInstall
postFetch = ''
mkdir -p $out/share/fonts/truetype
mv fonts/ttf/*.ttf $out/share/fonts/truetype
mv $out/fonts/ttf/*.ttf $out/share/fonts/truetype
shopt -s extglob dotglob
rm -rf $out/!(share)
shopt -u extglob dotglob
runHook postInstall
'';
hash = "sha256-aJ3XzWQauPsWwEDAHT2rD9a8RvLv1kqU3krFXprmypk=";
meta = with lib; {
homepage = "https://b612-font.com/";
description = "Highly legible font family for use on aircraft cockpit screens";
@ -36,8 +36,8 @@ fetchFromGitHub rec {
variants of the font. This one, baptized B612 in reference to the
imaginary asteroid of the aviator SaintExupéry, benefited from a complete
hinting on all the characters.
'';
license = with licenses; [ ofl epl10 bsd3 ] ;
'';
license = with licenses; [ ofl epl10 bsd3 ];
maintainers = with maintainers; [ leenaars ];
platforms = platforms.all;
};

View file

@ -1,19 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "behdad-fonts";
version = "0.0.3";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "font-store";
repo = "BehdadFont";
rev = "v${version}";
postFetch = ''
tar xf $downloadedFile --strip=1
src = fetchFromGitHub {
owner = "font-store";
repo = "BehdadFont";
rev = "v${version}";
hash = "sha256-gKfzxo3/bCMKXl2d6SP07ahIiNrUyrk/SN5XLND2lWY=";
};
installPhase = ''
runHook preInstall
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/behrad-fonts {} \;
runHook postInstall
'';
sha256 = "0c57232462cv1jrfn0m2bl7jzcfkacirrdd2qimrc8iqhkz0ajfz";
meta = with lib; {
homepage = "https://github.com/font-store/BehdadFont";

View file

@ -1,19 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
name = "cabin-1.005";
stdenvNoCC.mkDerivation rec {
pname = "cabin";
version = "1.005";
owner = "impallari";
repo = "Cabin";
rev = "982839c790e9dc57c343972aa34c51ed3b3677fd";
src = fetchFromGitHub {
owner = "impallari";
repo = "Cabin";
rev = "982839c790e9dc57c343972aa34c51ed3b3677fd";
hash = "sha256-9l4QcwCot340Bq41ER68HSZGQ9h0opyzgG3DG/fVZ5s=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -m444 -Dt $out/share/fonts/opentype fonts/OTF/*.otf
install -m444 -Dt $out/share/doc/${name} README.md FONTLOG.txt
'';
install -m444 -Dt $out/share/doc/${pname}-${version} README.md FONTLOG.txt
sha256 = "1bl7h217m695jn4rbniialfk573aa44fslp2rjxnhkicakpcm44h";
runHook postInstall
'';
meta = with lib; {
description = "A humanist sans with 4 weights and true italics";

View file

@ -1,23 +1,27 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "comic-mono-font";
version = "2020-12-28";
in fetchFromGitHub {
name = "comic-mono-font-${version}";
owner = "dtinth";
repo = "comic-mono-font";
rev = "9a96d04cdd2919964169192e7d9de5012ef66de4";
src = fetchFromGitHub {
owner = "dtinth";
repo = "comic-mono-font";
rev = "9a96d04cdd2919964169192e7d9de5012ef66de4";
hash = "sha256-q8NxrluWuH23FfRlntIS0MDdl3TkkGE7umcU2plS6eU=";
};
installPhase = ''
runHook preInstall
postFetch = ''
mkdir -p $out/share/fonts
tar -z -f $downloadedFile --wildcards -x \*.ttf --one-top-level=$out/share/fonts
cp *.ttf $out/share/fonts
mkdir -p $out/etc/fonts/conf.d
ln -s ${./comic-mono-weight.conf} $out/etc/fonts/conf.d/30-comic-mono.conf
'';
hash = "sha256-poMU+WfDZcsyWyFiiXKJ284X22CJlxQIzcJtApnIdAY=";
runHook postInstall
'';
meta = with lib; {
description = "A legible monospace font that looks like Comic Sans";

View file

@ -1,19 +1,22 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "dancing-script";
version = "2.0";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "impallari";
repo = "DancingScript";
rev = "f7f54bc1b8836601dae8696666bfacd306f77e34";
sha256 = "dfFvh8h+oMhAQL9XKMrNr07VUkdQdxAsA8+q27KWWCA=";
src = fetchFromGitHub {
owner = "impallari";
repo = "DancingScript";
rev = "f7f54bc1b8836601dae8696666bfacd306f77e34";
hash = "sha256-B9oAZFPH3dG/Nt5FfKfFVJYtfUKGK0AXNkQHRC7IgdU=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -m444 -Dt $out/share/fonts/truetype fonts/ttf/*.ttf
runHook postInstall
'';
meta = with lib; {

View file

@ -1,19 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
name = "dosis-1.007";
stdenvNoCC.mkDerivation rec {
pname = "dosis";
version = "1.007";
owner = "impallari";
repo = "Dosis";
rev = "12df1e13e58768f20e0d48ff15651b703f9dd9dc";
src = fetchFromGitHub {
owner = "impallari";
repo = "Dosis";
rev = "12df1e13e58768f20e0d48ff15651b703f9dd9dc";
hash = "sha256-rZ49uNBlI+NWkiZykpyXzOonXlbVB6Vf6a/8A56Plj4=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.otf' -exec install -m444 -Dt $out/share/fonts/opentype {} \;
install -m444 -Dt $out/share/doc/${name} README.md FONTLOG.txt
'';
install -m444 -Dt $out/share/doc/${pname}-${version} README.md FONTLOG.txt
sha256 = "0vz25w45i8flfvppymr5h83pa2n1r37da20v7691p44018fdsdny";
runHook postInstall
'';
meta = with lib; {
description = "A very simple, rounded, sans serif family";

View file

@ -1,16 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
rev = "7e8f02dadcc23ba42b491b39e5bdf16e7b383031";
name = "et-book-${builtins.substring 0 6 rev}";
owner = "edwardtufte";
repo = "et-book";
sha256 = "1bfb1l8k7fzgk2l8cikiyfn5x9m0fiwrnsbc1483p8w3qp58s5n2";
stdenvNoCC.mkDerivation rec {
pname = "et-book";
version = "unstable-2015-10-05";
src = fetchFromGitHub {
owner = "edwardtufte";
repo = pname;
rev = "7e8f02dadcc23ba42b491b39e5bdf16e7b383031";
hash = "sha256-B6ryC9ibNop08TJC/w9LSHHwqV/81EezXsTUJFq8xpo=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar -xzf $downloadedFile
mkdir -p $out/share/fonts/truetype
cp -t $out/share/fonts/truetype et-book-${rev}/source/4-ttf/*.ttf
cp -t $out/share/fonts/truetype source/4-ttf/*.ttf
runHook postInstall
'';
meta = with lib; {

View file

@ -1,21 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "fira";
version = "4.202";
in fetchFromGitHub {
name = "fira-${version}";
owner = "mozilla";
repo = "Fira";
rev = version;
src = fetchFromGitHub {
owner = "mozilla";
repo = "Fira";
rev = version;
hash = "sha256-HLReqgL0PXF5vOpwLN0GiRwnzkjGkEVEyOEV2Z4R0oQ=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
mkdir -p $out/share/fonts/opentype
cp otf/*.otf $out/share/fonts/opentype
'';
sha256 = "1iwxbp7kw5kghh5nbycb05zby7p2ib61mywva3h6giv2wd4lpxnz";
runHook postInstall
'';
meta = with lib; {
homepage = "https://mozilla.github.io/Fira/";

View file

@ -1,19 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "gandom-fonts";
version = "0.8";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "gandom-font";
rev = "v${version}";
postFetch = ''
tar xf $downloadedFile --strip=1
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "gandom-font";
rev = "v${version}";
hash = "sha256-nez8T0TtRLyXxIIR69LrVGde5ThCvA0fLXkYLyYQRV8=";
};
installPhase = ''
runHook preInstall
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/gandom-fonts {} \;
runHook postInstall
'';
sha256 = "sha256-EDS3wwKwe2BIcOCxu7DxkVLCoEoTPP31k5ID51lqn3M=";
meta = with lib; {
homepage = "https://github.com/rastikerdar/gandom-font";

View file

@ -1,18 +1,25 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
version = "unstable-2018-08-12";
in fetchFromGitHub {
name = "gelasio-${version}";
owner = "SorkinType";
repo = "Gelasio";
rev = "5bced461d54bcf8e900bb3ba69455af35b0d2ff1";
sha256 = "0dfskz2vpwsmd88rxqsxf0f01g4f2hm6073afcm424x5gc297n39";
stdenvNoCC.mkDerivation {
pname = "gelasio";
version = "unstable-2022-06-09";
src = fetchFromGitHub {
owner = "SorkinType";
repo = "Gelasio";
rev = "a75c6d30a35f74cdbaea1813bdbcdb64bb11d3d5";
hash = "sha256-ncm0lSDPPPREdxTx3dGl6OGBn4FGAjFTlQpA6oDCdMI=";
};
dontBuild = true;
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
mkdir -p $out/share/fonts/truetype
cp *.ttf $out/share/fonts/truetype/
cp fonts/ttf/*.ttf $out/share/fonts/truetype/
runHook postInstall
'';
meta = with lib; {

View file

@ -1,19 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
version = "20180721";
in fetchFromGitHub {
name = "ia-writer-duospace-${version}";
stdenvNoCC.mkDerivation {
pname = "ia-writer-duospace";
version = "unstable-2018-07-21";
owner = "iaolo";
repo = "iA-Fonts";
rev = "55edf60f544078ab1e14987bc67e9029a200e0eb";
sha256 = "0932lcxf861vb3hz52z1xj8r99ag9sdyqsnq9brv7gc4kp2l339c";
src = fetchFromGitHub {
owner = "iaolo";
repo = "iA-Fonts";
rev = "55edf60f544078ab1e14987bc67e9029a200e0eb";
hash = "sha256-/ifzOScILLuFkjFIgpy0ArCcelgealbpypKvZ46xApU=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar --strip-components=1 -xzvf $downloadedFile
mkdir -p $out/share/fonts/opentype
cp "iA Writer Duospace/OTF (Mac)/"*.otf $out/share/fonts/opentype/
runHook postInstall
'';
meta = with lib; {

View file

@ -1,20 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "inriafonts";
version = "1.200";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "BlackFoundry";
repo = "InriaFonts";
rev = "v${version}";
postFetch = ''
tar xf $downloadedFile --strip=1
src = fetchFromGitHub {
owner = "BlackFoundry";
repo = "InriaFonts";
rev = "v${version}";
hash = "sha256-CMKkwGuUEVYavnFi15FCk7Xloyk97w+LhAZ6mpIv5xg=";
};
installPhase = ''
runHook preInstall
install -m444 -Dt $out/share/fonts/truetype fonts/*/TTF/*.ttf
install -m444 -Dt $out/share/fonts/opentype fonts/*/OTF/*.otf
runHook postInstall
'';
sha256 = "0wrwcyycyzvgvgnlmwi1ncdvwb8f6bbclynd1105rsyxgrz5dd70";
meta = with lib; {
homepage = "https://black-foundry.com/work/inria";

View file

@ -1,19 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "ir-standard-fonts";
version = "unstable-2017-01-21";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "morealaz";
repo = pname;
rev = "d36727d6c38c23c01b3074565667a2fe231fe18f";
version = "20170121";
src = fetchFromGitHub {
owner = "molaeiali";
repo = pname;
rev = version;
hash = "sha256-o1d8SBX3nf7g6Gh4OP+JRS+LNrHTQOIiHhW3VNCkDV0=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/ir-standard-fonts {} \;
runHook postInstall
'';
sha256 = "0i2vzhwk77pm6fx5z5gxl026z9f35rhh3cvl003mry2lcg1x5rhp";
meta = with lib; {
homepage = "https://github.com/morealaz/ir-standard-fonts";

View file

@ -1,23 +1,25 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "junicode";
version = "1.003";
in
fetchFromGitHub {
name = "${pname}-${version}";
owner = "psb1558";
repo = "Junicode-font";
rev = "55d816d91a5e19795d9b66edec478379ee2b9ddb";
src = fetchFromGitHub {
owner = "psb1558";
repo = "Junicode-font";
rev = "55d816d91a5e19795d9b66edec478379ee2b9ddb";
hash = "sha256-eTiMgI8prnpR4H6sqKRaB3Gcnt4C5QWZalRajWW49G4=";
};
installPhase = ''
runHook preInstall
postFetch = ''
local out_ttf=$out/share/fonts/junicode-ttf
mkdir -p $out_ttf
tar -f $downloadedFile -C $out_ttf --wildcards -x '*.ttf' --strip=2
'';
cp legacy/*.ttf $out_ttf
sha256 = "1v334gljmidh58kmrarz5pf348b0ac7vh25f1xs3gyvn78khh5nw";
runHook postInstall
'';
meta = {
homepage = "https://github.com/psb1558/Junicode-font";

View file

@ -1,22 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "kreative-square-fonts";
version = "unstable-2021-01-29";
in
fetchFromGitHub {
name = "${pname}-${version}";
owner = "kreativekorp";
repo = "open-relay";
rev = "084f05af3602307499981651eca56851bec01fca";
src = fetchFromGitHub {
owner = "kreativekorp";
repo = "open-relay";
rev = "084f05af3602307499981651eca56851bec01fca";
hash = "sha256-+ihosENczaGal3BGDIaJ/de0pf8txdtelSYMxPok6ww=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -Dm444 -t $out/share/fonts/truetype/ KreativeSquare/KreativeSquare.ttf
install -Dm444 -t $out/share/fonts/truetype/ KreativeSquare/KreativeSquareSM.ttf
runHook postInstall
'';
sha256 = "15vvbbzv6b3jh7lxg77viycdd7yf3y8lxy54vs3rsrsxwncg0pak";
meta = with lib; {
description = "Fullwidth scalable monospace font designed specifically to support pseudographics, semigraphics, and private use characters";

View file

@ -1,20 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "lalezar-fonts";
version = "unstable-2017-02-28";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "BornaIz";
repo = "Lalezar";
rev = "238701c4241f207e92515f845a199be9131c1109";
postFetch = ''
tar xf $downloadedFile --strip=1
src = fetchFromGitHub {
owner = "BornaIz";
repo = "Lalezar";
rev = "238701c4241f207e92515f845a199be9131c1109";
hash = "sha256-95z58ABTx53aREXRpj9xgclX9kuGiQiiKBwqwnF6f8g=";
};
installPhase = ''
runHook preInstall
mkdir -p $out/share/fonts/lalezar-fonts
cp -v $( find . -name '*.ttf') $out/share/fonts/lalezar-fonts
runHook postInstall
'';
sha256 = "0jmwhr2dqgj3vn0v26jh6c0id6n3wd6as3bq39xa870zlk7v307b";
meta = with lib; {
homepage = "https://github.com/BornaIz/Lalezar";

View file

@ -1,19 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
name = "libre-baskerville-1.000";
stdenvNoCC.mkDerivation rec {
pname = "libre-baskerville";
version = "1.000";
owner = "impallari";
repo = "Libre-Baskerville";
rev = "2fba7c8e0a8f53f86efd3d81bc4c63674b0c613f";
src = fetchFromGitHub {
owner = "impallari";
repo = "Libre-Baskerville";
rev = "2fba7c8e0a8f53f86efd3d81bc4c63674b0c613f";
hash = "sha256-1EXi1hxFpc7pFsLbEj1xs9LqjeIf3XBol/8HdKNROUU=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -m444 -Dt $out/share/fonts/truetype *.ttf
install -m444 -Dt $out/share/doc/${name} README.md FONTLOG.txt
'';
install -m444 -Dt $out/share/doc/${pname}-${version} README.md FONTLOG.txt
sha256 = "1kpji85d1mgwq8b4fh1isznrhsrv32la3wf058rwjmhx5a3l7yaj";
runHook postInstall
'';
meta = with lib; {
description = "A webfont family optimized for body text";

View file

@ -1,19 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
name = "libre-bodoni-2.000";
stdenvNoCC.mkDerivation rec {
pname = "libre-bodoni";
version = "2.000";
owner = "impallari";
repo = "Libre-Bodoni";
rev = "995a40e8d6b95411d660cbc5bb3f726ffd080c7d";
src = fetchFromGitHub {
owner = "impallari";
repo = "Libre-Bodoni";
rev = "995a40e8d6b95411d660cbc5bb3f726ffd080c7d";
hash = "sha256-yfqVeT/JiAT+fsqkXUxqlz4sEEFwEJUdvFTAzuqejtk=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -m444 -Dt $out/share/fonts/opentype */v2000\ -\ initial\ glyphs\ migration/OTF/*.otf
install -m444 -Dt $out/share/doc/${name} README.md FONTLOG.txt
'';
install -m444 -Dt $out/share/doc/${pname}-${version} README.md FONTLOG.txt
sha256 = "0my0i5a7f0d27m6dcdirjmlcnswqqfp8gl3ccxa5f2wkn3qlzkvz";
runHook postInstall
'';
meta = with lib; {
description = "Bodoni fonts adapted for today's web requirements";

View file

@ -1,19 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
name = "libre-franklin-1.014";
stdenvNoCC.mkDerivation rec {
pname = "libre-franklin";
version = "1.014";
owner = "impallari";
repo = "Libre-Franklin";
rev = "006293f34c47bd752fdcf91807510bc3f91a0bd3";
src = fetchFromGitHub {
owner = "impallari";
repo = "Libre-Franklin";
rev = "006293f34c47bd752fdcf91807510bc3f91a0bd3";
hash = "sha256-GR1KHiQ1lTOmU8eAPR2pxUlMpWiW2EDMG78VDjELxDU=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -m444 -Dt $out/share/fonts/opentype */OTF/*.otf
install -m444 -Dt $out/share/doc/${name} README.md FONTLOG.txt
'';
install -m444 -Dt $out/share/doc/${pname}-${version} README.md FONTLOG.txt
sha256 = "0aq280m01pbirkzga432340aknf2m5ggalw0yddf40sqz7falykf";
runHook postInstall
'';
meta = with lib; {
description = "A reinterpretation and expansion based on the 1912 Morris Fuller Bentons classic.";

View file

@ -1,18 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "manrope";
version = "3";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "sharanda";
repo = pname;
rev = "3bd68c0c325861e32704470a90dfc1868a5c37e9";
sha256 = "1h4chkfbp75hrrqqarf28ld4yb7hfrr7q4w5yz96ivg94lbwlnld";
postFetch = ''
tar xf $downloadedFile --strip=1
src = fetchFromGitHub {
owner = "sharanda";
repo = pname;
rev = "3bd68c0c325861e32704470a90dfc1868a5c37e9";
hash = "sha256-Gm7mUD/Ud2Rf8mA3jwUL7RE8clCmb6SETOskuj6r1sw=";
};
installPhase = ''
runHook preInstall
install -Dm644 -t $out/share/fonts/opentype "desktop font"/*
runHook postInstall
'';
meta = with lib; {
description = "Open-source modern sans-serif font family";
homepage = "https://github.com/sharanda/manrope";

View file

@ -1,20 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "material-icons";
version = "3.0.1";
in fetchFromGitHub {
name = "material-icons-${version}";
owner = "google";
repo = "material-design-icons";
rev = version;
src = fetchFromGitHub {
owner = "google";
repo = "material-design-icons";
rev = version;
hash = "sha256-4FphNJCsaLWzlVR4TmXnDBid0EVj39fkeoh5j1leBZ8=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
mkdir -p $out/share/fonts/truetype
cp iconfont/*.ttf $out/share/fonts/truetype
runHook postInstall
'';
sha256 = "1syy6v941lb8nqxhdf7mfx28v05lwrfnq53r3c1ym13x05l9kchp";
meta = with lib; {
description = "System status icons by Google, featuring material design";

View file

@ -1,25 +1,27 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub rec {
stdenvNoCC.mkDerivation rec {
pname = "montserrat";
version = "7.222";
owner = "JulietaUla";
repo = pname;
rev = "v${version}";
sha256 = "sha256-MeNnc1e5X5f0JyaLY6fX22rytHkvL++eM2ygsdlGMv0=";
src = fetchFromGitHub {
owner = "JulietaUla";
repo = pname;
rev = "v${version}";
hash = "sha256-eVCRn2OtNI5NuYZBQy06HKnMMXhPPnFxI8m8kguZjg0=";
};
installPhase = ''
runHook preInstall
postFetch = ''
mkdir -p $out/share/fonts/{otf,ttf,woff,woff2}
mv $out/fonts/otf/*.otf $out/share/fonts/otf
mv $out/fonts/ttf/*.ttf $out/share/fonts/ttf
mv $out/fonts/webfonts/*.woff $out/share/fonts/woff
mv $out/fonts/webfonts/*.woff2 $out/share/fonts/woff2
mv fonts/otf/*.otf $out/share/fonts/otf
mv fonts/ttf/*.ttf $out/share/fonts/ttf
mv fonts/webfonts/*.woff $out/share/fonts/woff
mv fonts/webfonts/*.woff2 $out/share/fonts/woff2
shopt -s extglob dotglob
rm -rf $out/!(share)
shopt -u extglob dotglob
runHook postInstall
'';
meta = with lib; {

View file

@ -1,18 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub {
name = "myrica-2.011.20160403";
stdenvNoCC.mkDerivation {
pname = "myrica";
version = "2.011.20160403";
owner = "tomokuni";
repo = "Myrica";
# commit does not exist on any branch on the target repository
rev = "b737107723bfddd917210f979ccc32ab3eb6dc20";
sha256 = "187rklcibbkai6m08173ca99qn8v7xpdfdv0izpymmavj85axm12";
src = fetchFromGitHub {
owner = "tomokuni";
repo = "Myrica";
# commit does not exist on any branch on the target repository
rev = "b737107723bfddd917210f979ccc32ab3eb6dc20";
hash = "sha256-kx+adbN2DsO81KJFt+FGAPZN+1NpE9xiagKZ4KyaJV0=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar --strip-components=1 -xzvf $downloadedFile
mkdir -p $out/share/fonts/truetype
cp product/*.TTC $out/share/fonts/truetype
runHook postInstall
'';
meta = with lib; {

View file

@ -1,19 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "nahid-fonts";
version = "0.3.0";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "nahid-font";
rev = "v${version}";
postFetch = ''
tar xf $downloadedFile --strip=1
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "nahid-font";
rev = "v${version}";
hash = "sha256-r8/W0/pJV6OX954spIITvW7M6lIbZRpbsvEHErnXglg=";
};
installPhase = ''
runHook preInstall
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/nahid-fonts {} \;
runHook postInstall
'';
sha256 = "0df169sibq14j2mj727sq86c00jm1nz8565v85hkvh4zgz2plb7c";
meta = with lib; {
homepage = "https://github.com/rastikerdar/nahid-font";

View file

@ -1,19 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "nika-fonts";
version = "1.0.0";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "font-store";
repo = "NikaFont";
rev = "v${version}";
postFetch = ''
tar xf $downloadedFile --strip=1
src = fetchFromGitHub {
owner = "font-store";
repo = "NikaFont";
rev = "v${version}";
hash = "sha256-jDemm8IyjhoCOg4Bfsp0tzUR7m+JaswL5d7Kug+asJk=";
};
installPhase = ''
runHook preInstall
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/nika-fonts {} \;
runHook postInstall
'';
sha256 = "1x34b2dqn1dymi1vmj5vrjcy2z8s0f3rr6cniyrz85plvid6x40i";
meta = with lib; {
homepage = "https://github.com/font-store/NikaFont/";

View file

@ -1,21 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "office-code-pro";
version = "1.004";
in fetchFromGitHub rec {
name = "${pname}-${version}";
owner = "nathco";
repo = "Office-Code-Pro";
rev = version;
src = fetchFromGitHub {
owner = "nathco";
repo = "Office-Code-Pro";
rev = version;
hash = "sha256-qzKTXYswkithZUJT0a3IifCq4RJFeKciZAPhYr2U1X4=";
};
postFetch = ''
tar xf $downloadedFile --strip=1
install -m644 -Dt $out/share/doc/${name} README.md
installPhase = ''
runHook preInstall
install -m644 -Dt $out/share/doc/${pname}-${version} README.md
install -m444 -Dt $out/share/fonts/opentype 'Fonts/Office Code Pro/OTF/'*.otf 'Fonts/Office Code Pro D/OTF/'*.otf
runHook postInstall
'';
sha256 = "1bagwcaicn6q8qkqazz6wb3x30y4apmkga0mkv8fh6890hfhywr9";
meta = with lib; {
description = "A customized version of Source Code Pro";

View file

@ -1,42 +1,45 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "orbitron";
version = "20110526";
in fetchFromGitHub {
name = "orbitron-${version}";
owner = "theleagueof";
repo = "orbitron";
rev = "13e6a52";
src = fetchFromGitHub {
owner = "theleagueof";
repo = "orbitron";
rev = "13e6a52";
hash = "sha256-zjNPVrDUxcQbrsg1/8fFa6Wenu1yuG/XDfKA7NVZ0rA=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -m444 -Dt $out/share/fonts/opentype/orbitron *.otf
install -m444 -Dt $out/share/fonts/ttf/orbitron *.ttf
'';
sha256 = "1y9yzvpqs2v3ssnqk2iiglrh8amgsscnk8vmfgnqgqi9f4dhdvnv";
runHook postInstall
'';
meta = with lib; {
homepage = "https://www.theleagueofmoveabletype.com/orbitron";
downloadPage = "https://www.theleagueofmoveabletype.com/orbitron/download";
description = "Geometric sans-serif for display purposes by Matt McInerney";
longDescription = ''
Orbitron is a geometric sans-serif typeface intended for display
purposes. It features four weights (light, medium, bold, and
black), a stylistic alternative, small caps, and a ton of
alternate glyphs.
Orbitron is a geometric sans-serif typeface intended for display
purposes. It features four weights (light, medium, bold, and
black), a stylistic alternative, small caps, and a ton of
alternate glyphs.
Orbitron was designed so that graphic designers in the future
will have some alternative to typefaces like Eurostile or Bank
Gothic. If youve ever seen a futuristic sci-fi movie, you have
may noticed that all other fonts have been lost or destroyed in
the apocalypse that led humans to flee earth. Only those very few
geometric typefaces have survived to be used on spaceship
exteriors, space station signage, monopolistic corporate
branding, uniforms featuring aerodynamic shoulder pads, etc. Of
course Orbitron could also be used on the posters for the movies
portraying this inevitable future.
Orbitron was designed so that graphic designers in the future
will have some alternative to typefaces like Eurostile or Bank
Gothic. If youve ever seen a futuristic sci-fi movie, you have
may noticed that all other fonts have been lost or destroyed in
the apocalypse that led humans to flee earth. Only those very few
geometric typefaces have survived to be used on spaceship
exteriors, space station signage, monopolistic corporate
branding, uniforms featuring aerodynamic shoulder pads, etc. Of
course Orbitron could also be used on the posters for the movies
portraying this inevitable future.
'';
license = licenses.ofl;
platforms = platforms.all;

View file

@ -1,19 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub {
name = "oxygenfonts-20160824";
stdenvNoCC.mkDerivation rec {
pname = "oxygenfonts";
version = "20160824";
owner = "vernnobile";
repo = "oxygenFont";
rev = "62db0ebe3488c936406685485071a54e3d18473b";
src = fetchFromGitHub {
owner = "vernnobile";
repo = "oxygenFont";
rev = "62db0ebe3488c936406685485071a54e3d18473b";
hash = "sha256-0LKq8nChkDAb6U1sOUyga/DvzpDmIjoRn+2PB9rok4w=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
mkdir -p $out/share/fonts/truetype
cp */Oxygen-Sans.ttf */Oxygen-Sans-Bold.ttf */OxygenMono-Regular.ttf $out/share/fonts/truetype
'';
sha256 = "17m86p1s7a7d90zqjsr46h5bpmas4vxsgj7kd0j5c8cb7lw92jyf";
runHook postInstall
'';
meta = with lib; {
description = "Desktop/gui font for integrated use with the KDE desktop";

View file

@ -1,20 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "parastoo-fonts";
version = "2.0.1";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "parastoo-font";
rev = "v${version}";
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "parastoo-font";
rev = "v${version}";
hash = "sha256-E94B9R2h227D49dscCBsprmb7w0GrQ+2tWOWRf8FH30=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/parastoo-fonts {} \;
runHook postInstall
'';
sha256 = "sha256-4smobLS43DB7ISmbWDWX0IrtaeiyXpi1QpAiL8NyXoQ=";
meta = with lib; {
homepage = "https://github.com/rastikerdar/parastoo-font";

View file

@ -1,22 +1,27 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
fetchFromGitHub {
name = "powerline-fonts-2018-11-11";
stdenvNoCC.mkDerivation {
pname = "powerline-fonts";
version = "unstable-2018-11-11";
owner = "powerline";
repo = "fonts";
rev = "e80e3eba9091dac0655a0a77472e10f53e754bb0";
src = fetchFromGitHub {
owner = "powerline";
repo = "fonts";
rev = "e80e3eba9091dac0655a0a77472e10f53e754bb0";
hash = "sha256-GGfON6Z/0czCUAGxnqtndgDnaZGONFTU9/Hu4BGDHlk=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.otf' -exec install -Dt $out/share/fonts/opentype {} \;
find . -name '*.ttf' -exec install -Dt $out/share/fonts/truetype {} \;
find . -name '*.bdf' -exec install -Dt $out/share/fonts/bdf {} \;
find . -name '*.pcf.gz' -exec install -Dt $out/share/fonts/pcf {} \;
find . -name '*.psf.gz' -exec install -Dt $out/share/consolefonts {} \;
'';
sha256 = "0r8p4z3db17f5p8jr7sv80nglmjxhg83ncfvwg1dszldswr0dhvr";
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/powerline/fonts";

View file

@ -1,21 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation {
pname = "raleway";
version = "2016-08-30";
in fetchFromGitHub {
name = "raleway-${version}";
owner = "impallari";
repo = "Raleway";
rev = "fa27f47b087fc093c6ae11cfdeb3999ac602929a";
src = fetchFromGitHub {
owner = "impallari";
repo = "Raleway";
rev = "fa27f47b087fc093c6ae11cfdeb3999ac602929a";
hash = "sha256-mcIpE+iqG6M43I5TT95oV+5kNgphunmyxC+Jaj0JysQ=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name "*-Original.otf" -exec install -Dt $out/share/fonts/opentype {} \;
cp *.txt *.md -d $out
'';
sha256 = "16jr7drqg2wib2q48ajlsa7rh1jxjibl1wd4rjndi49vfl463j60";
runHook postInstall
'';
meta = {
description = "Raleway is an elegant sans-serif typeface family";

View file

@ -1,23 +1,26 @@
{ lib, fetchFromGitHub }:
let
{ lib, stdenvNoCC, fetchFromGitHub }:
stdenvNoCC.mkDerivation rec {
pname = "redhat-official";
version = "4.0.2";
in
fetchFromGitHub {
name = "redhat-official-${version}";
owner = "RedHatOfficial";
repo = "RedHatFont";
rev = version;
src = fetchFromGitHub {
owner = "RedHatOfficial";
repo = "RedHatFont";
rev = version;
hash = "sha256-p5RS/57CDApwnRDwMi0gIEJYTDAtibIyyU2w/pnbHJI=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
for kind in mono proportional; do
install -m444 -Dt $out/share/fonts/opentype fonts/$kind/static/otf/*.otf
install -m444 -Dt $out/share/fonts/truetype fonts/$kind/static/ttf/*.ttf
done
'';
sha256 = "sha256-904uQtbAdLx9MJudLk/vVk/+uK0nsPbWbAeXrWxTHm8=";
runHook postInstall
'';
meta = with lib; {
homepage = "https://github.com/RedHatOfficial/RedHatFont";

View file

@ -1,22 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "RhodiumLibre";
version = "1.2.0";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "DunwichType";
repo = pname;
rev = version;
src = fetchFromGitHub {
owner = "DunwichType";
repo = pname;
rev = version;
hash = "sha256-YCQvUdjEAj4G71WCRCM0+NwiqRqwt1Ggeg9jb/oWEsY=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -Dm444 -t $out/share/fonts/opentype/ RhodiumLibre-Regular.otf
install -Dm444 -t $out/share/fonts/truetype/ RhodiumLibre-Regular.ttf
'';
sha256 = "04ax6bri5vsji465806p8d7zbdf12r5bpvcm9nb8isfqm81ggj0r";
runHook postInstall
'';
meta = with lib; {
description = "F/OSS/Libre font for Latin and Devanagari";

View file

@ -1,20 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "sahel-fonts";
version = "3.4.0";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "sahel-font";
rev = "v${version}";
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "sahel-font";
rev = "v${version}";
hash = "sha256-U4tIICXZFK9pk7zdzRwBPIPYFUlYXPSebnItUJUgGJY=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/sahel-fonts {} \;
runHook postInstall
'';
sha256 = "sha256-MrKSgz9WpVgLS37uH/7S0LPBD/n3GLXeUCMBD7x5CG8=";
meta = with lib; {
homepage = "https://github.com/rastikerdar/sahel-font";

View file

@ -1,20 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "samim-fonts";
version = "4.0.4";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "samim-font";
rev = "v${version}";
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "samim-font";
rev = "v${version}";
hash = "sha256-erT8iV5YHbEN47nEE5p5CbQYUgm8daOjymLAWF4fpVk=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/samim-fonts {} \;
runHook postInstall
'';
sha256 = "sha256-WYSJ2mAzAe5H0EaMYU3qNVcQ0lRuHsjZ11YmLnZ2FCo=";
meta = with lib; {
homepage = "https://github.com/rastikerdar/samim-font";

View file

@ -1,20 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "shabnam-fonts";
version = "5.0.1";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "shabnam-font";
rev = "v${version}";
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "shabnam-font";
rev = "v${version}";
hash = "sha256-H03GTKRVPiwU4edkr4x5upW4JCy6320Lo+cKK9FRMQs=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/shabnam-fonts {} \;
runHook postInstall
'';
sha256 = "sha256-m4G4UtW/0S9CsvaSF7QfthfIxGQ02E7SucdDm5s3G7A=";
meta = with lib; {
homepage = "https://github.com/rastikerdar/shabnam-font";

View file

@ -1,20 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "TT2020";
version = "2020-01-05";
in
fetchFromGitHub {
name = "${pname}-${version}";
owner = "ctrlcctrlv";
repo = pname;
rev = "2b418fab5f99f72a18b3b2e7e2745ac4e03aa612";
sha256 = "1z0nizvs0gp0xl7pn6xcjvsysxhnfm7aqfamplkyvya3fxvhncds";
version = "0.2.1";
src = fetchFromGitHub {
owner = "ctrlcctrlv";
repo = pname;
rev = "v${version}";
hash = "sha256-eAJzaookHcQ/7QNq/HUKA/O2liyKynJNdo6QuZ1Bv6k=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
install -Dm644 -t $out/share/fonts/truetype dist/*.ttf
install -Dm644 -t $out/share/fonts/woff2 dist/*.woff2
runHook postInstall
'';
meta = with lib; {

View file

@ -1,20 +1,23 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "vazir-code-font";
version = "1.1.2";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "vazir-code-font";
rev = "v${version}";
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "vazir-code-font";
rev = "v${version}";
hash = "sha256-iBojse3eHr4ucZtPfpkN+mmO6sEExY8WcAallyPgMsI=";
};
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/truetype {} \;
runHook postInstall
'';
sha256 = "0ivwpn9xm2zwhwgg9mghyiy5v66cn4786w9j6rkff5cmzshv279r";
meta = with lib; {
homepage = "https://github.com/rastikerdar/vazir-code-font";

View file

@ -1,20 +1,25 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "vazir-fonts";
version = "32.0.0";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "rastikerdar";
repo = "vazir-font";
rev = "v${version}";
src = fetchFromGitHub {
owner = "rastikerdar";
repo = "vazir-font";
rev = "v${version}";
hash = "sha256-lkjlSW3Sfr1bJ9/IOsZl9yOVh9mYKhoV5XcLkqcQ71g=";
};
dontBuild = true;
installPhase = ''
runHook preInstall
postFetch = ''
tar xf $downloadedFile --strip=1
find . -name '*.ttf' -exec install -m444 -Dt $out/share/fonts/truetype {} \;
runHook postInstall
'';
sha256 = "sha256-Uy8hgBtCcTLwXu9FkLN1WavUfP74Jf53ChxVGS3UBVM=";
meta = with lib; {
homepage = "https://github.com/rastikerdar/vazir-font";

View file

@ -1,24 +1,24 @@
{ lib, fetchFromGitHub }:
{ lib, stdenvNoCC, fetchFromGitHub }:
let
stdenvNoCC.mkDerivation rec {
pname = "xkcd-font";
version = "unstable-2017-08-24";
in fetchFromGitHub {
name = "${pname}-${version}";
owner = "ipython";
repo = pname;
rev = "5632fde618845dba5c22f14adc7b52bf6c52d46d";
src = fetchFromGitHub {
owner = "ipython";
repo = pname;
rev = "5632fde618845dba5c22f14adc7b52bf6c52d46d";
hash = "sha256-1DgSx2L+OpXuPVSXbbl/hcZUyBK9ikPyGWuk6wNzlwc=";
};
postFetch = ''
install -Dm444 -t $out/share/fonts/opentype/ $out/xkcd/build/xkcd.otf
install -Dm444 -t $out/share/fonts/truetype/ $out/xkcd-script/font/xkcd-script.ttf
installPhase = ''
runHook preInstall
shopt -s extglob dotglob
rm -rf $out/!(share)
shopt -u extglob dotglob
install -Dm444 -t $out/share/fonts/opentype/ xkcd/build/xkcd.otf
install -Dm444 -t $out/share/fonts/truetype/ xkcd-script/font/xkcd-script.ttf
runHook postInstall
'';
sha256 = "sha256-ITsJPs+ZXwUWYe2AmwyVZib8RV7bpiWHOUD8qEZRHHY=";
meta = with lib; {
description = "The xkcd font";

View file

@ -11,11 +11,11 @@ assert (ch4backend.pname == "ucx" || ch4backend.pname == "libfabric");
stdenv.mkDerivation rec {
pname = "mpich";
version = "4.0.3";
version = "4.1";
src = fetchurl {
url = "https://www.mpich.org/static/downloads/${version}/mpich-${version}.tar.gz";
sha256 = "sha256-F0BuqQpu1OzVvjnJ3cv6yTQ+arT3esToxevko+O2xQE=";
sha256 = "sha256-ix7GO8RMfKoq+7RXvFs81KcNvka6unABI9Z8SNxatqA=";
};
configureFlags = [

View file

@ -11,10 +11,11 @@ buildDunePackage rec {
version = "0.6.0";
minimalOCamlVersion = "4.08";
duneVersion = "3";
src = fetchurl {
url = "https://github.com/mirage/ocaml-git/releases/download/${pname}-v${version}/git-${pname}-v${version}.tbz";
sha256 = "sha256-NAm4Xq7L0Dgynr8cKZQ356M4GR6D19LbCRxvnSlIf1U=";
hash = "sha256-NAm4Xq7L0Dgynr8cKZQ356M4GR6D19LbCRxvnSlIf1U=";
};
patches = [

View file

@ -9,6 +9,7 @@ buildDunePackage {
pname = "carton-git";
inherit (carton) version src postPatch;
duneVersion = "3";
propagatedBuildInputs = [
carton

View file

@ -11,6 +11,7 @@ buildDunePackage {
pname = "carton-lwt";
inherit (carton) version src postPatch;
duneVersion = "3";
propagatedBuildInputs = [
carton

View file

@ -1,22 +1,24 @@
{ lib, fetchurl, buildDunePackage
, checkseum, optint, cmdliner
, bigstringaf, alcotest, camlzip, base64, ctypes, fmt, crowbar, rresult
, astring, bos
}:
buildDunePackage rec {
pname = "decompress";
version = "1.5.1";
version = "1.5.2";
minimalOCamlVersion = "4.08";
duneVersion = "3";
src = fetchurl {
url = "https://github.com/mirage/decompress/releases/download/v${version}/decompress-${version}.tbz";
sha256 = "sha256-y/OVojFxhksJQQvvtS38SF7ZnMEQhAtwDey0ISwypP4=";
hash = "sha256-qMmmuhMlFNVq02JvvV55EkhEg2AQNQ7hYdQ7spv1di4=";
};
buildInputs = [ cmdliner ];
propagatedBuildInputs = [ optint checkseum ];
nativeCheckInputs = [ alcotest bigstringaf ctypes fmt camlzip base64 crowbar rresult ];
nativeCheckInputs = [ alcotest astring bigstringaf bos ctypes fmt camlzip base64 crowbar rresult ];
doCheck = true;
meta = {

View file

@ -10,12 +10,14 @@ buildDunePackage rec {
pname = "pbkdf";
version = "1.2.0";
duneVersion = "3";
src = fetchzip {
url = "https://github.com/abeaumont/ocaml-pbkdf/archive/${version}.tar.gz";
sha256 = "sha256-dGi4Vw+7VBpK/NpJ6zdpogm+E6G/oJovXCksJBSmqjI=";
};
minimalOCamlVersion = "4.07";
minimalOCamlVersion = "4.08";
propagatedBuildInputs = [ cstruct mirage-crypto ];
nativeCheckInputs = [ alcotest ];
doCheck = true;

View file

@ -1,4 +1,5 @@
{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ctypes, result, SDL2, pkg-config, ocb-stubblr }:
{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ctypes, result, SDL2, pkg-config
, AudioToolbox, Cocoa, CoreAudio, CoreVideo, ForceFeedback }:
if lib.versionOlder ocaml.version "4.03"
then throw "tsdl is not available for OCaml ${ocaml.version}"
@ -20,7 +21,8 @@ stdenv.mkDerivation {
nativeBuildInputs = [ pkg-config ocaml findlib ocamlbuild topkg ];
buildInputs = [ topkg ];
propagatedBuildInputs = [ SDL2 ctypes ];
propagatedBuildInputs = [ SDL2 ctypes ]
++ lib.optionals stdenv.isDarwin [ AudioToolbox Cocoa CoreAudio CoreVideo ForceFeedback ];
preConfigure = ''
# The following is done to avoid an additional dependency (ncurses)

View file

@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "enlighten";
version = "1.11.1";
version = "1.11.2";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-V6vZij0/g0hO+fkfklX00jyLMJfs22R8e5sASdYAt/g=";
hash = "sha256-koSGHe5aJy4OGjdYzT87cYCxvRdUh12naHbyp/Rsy2E=";
};
propagatedBuildInputs = [
@ -47,6 +47,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Enlighten Progress Bar for Python Console Apps";
homepage = "https://github.com/Rockhopper-Technologies/enlighten";
changelog = "https://github.com/Rockhopper-Technologies/enlighten/releases/tag/${version}";
license = with licenses; [ mpl20 ];
maintainers = with maintainers; [ veprbl ];
};

View file

@ -5,18 +5,21 @@
, pytest-benchmark
, pytest-mock
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "getmac";
version = "0.8.3";
version = "0.9.1";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "GhostofGoes";
repo = pname;
rev = version;
sha256 = "sha256-X4uuYisyobCxhoywaSXBZjVxrPAbBiZrWUJAi2/P5mw=";
rev = "refs/tags/${version}";
hash = "sha256-U04mtg7DCC78X5Fd0wGaHrf8XkUpDLi4+ctKCyR4dKg=";
};
nativeCheckInputs = [
@ -43,6 +46,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Python package to get the MAC address of network interfaces and hosts on the local network";
homepage = "https://github.com/GhostofGoes/getmac";
changelog = "https://github.com/GhostofGoes/getmac/blob/${version}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ colemickens ];
};

View file

@ -21,14 +21,14 @@
buildPythonPackage rec {
pname = "google-cloud-logging";
version = "3.4.0";
version = "3.5.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-zeD1n625F0aHRiUrr0sR6gD21obvAhORg+r5IfOu5rQ=";
hash = "sha256-8RVEoh6jVW9w66x7wzj/qKGXkTg07N2IU9F2uHCCOqo=";
};
propagatedBuildInputs = [

View file

@ -15,7 +15,7 @@
buildPythonPackage rec {
pname = "hahomematic";
version = "2023.1.7";
version = "2023.1.8";
format = "pyproject";
disabled = pythonOlder "3.9";
@ -24,7 +24,7 @@ buildPythonPackage rec {
owner = "danielperna84";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "sha256-n/j884ttxFCkNnpRuHquzDeWsJchHS0A13CR2CtO4lo=";
sha256 = "sha256-CzvSISNf+cxcpWwttc+K0/EmG/Z7lWtJLX9ahO0/Pq4=";
};
nativeBuildInputs = [

View file

@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "meshtastic";
version = "2.0.9";
version = "2.0.10";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "meshtastic";
repo = "Meshtastic-python";
rev = "refs/tags/${version}";
hash = "sha256-3OA61cuj9u6ejkQJgCjnu8ERjACKXz2hUekbvZqiPJ8=";
hash = "sha256-p3ELXfTe0bHrsinEz+iXZIifJykdnW5i7FFLsAhtyoc=";
};
propagatedBuildInputs = [

View file

@ -1,23 +0,0 @@
{ lib, buildPythonPackage, youtube-dl, fetchPypi }:
buildPythonPackage rec {
pname = "pafy";
version = "0.5.5";
src = fetchPypi {
inherit pname version;
sha256 = "364f1d1312c89582d97dc7225cf6858cde27cb11dfd64a9c2bab1a2f32133b1e";
};
# No tests included in archive
doCheck = false;
propagatedBuildInputs = [ youtube-dl ];
meta = with lib; {
description = "A library to download YouTube content and retrieve metadata";
homepage = "https://github.com/mps-youtube/pafy";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ odi ];
};
}

View file

@ -5,25 +5,27 @@
, openssl
, stdenv
, curl
, CoreFoundation
, Security
, SystemConfiguration
}:
rustPlatform.buildRustPackage rec {
pname = "cargo-outdated";
version = "0.11.1";
version = "0.11.2";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-vEgYmtRAashBRsGDExewqaGsVYF7EJ4ky+cE/PMFW38=";
sha256 = "sha256-SkFMdE7VAZrT7e5SMrfW8bBA6zPqQV7LhSy3OmshUAs=";
};
cargoSha256 = "sha256-xstcKIXQDk4ngwWSzMueO47U2oFRHAqvvjRnDXFsPE8=";
cargoHash = "sha256-ZcG/4vyrcJNAMiZdR3MFyqX5Udn8wGAfiGT5uP1BSMo=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
curl
CoreFoundation
Security
SystemConfiguration
];

View file

@ -16,18 +16,18 @@
buildGoModule rec {
pname = "skopeo";
version = "1.10.0";
version = "1.11.0";
src = fetchFromGitHub {
rev = "v${version}";
owner = "containers";
repo = "skopeo";
sha256 = "sha256-Q6gdkaIYTDUqDbjmE9TcRtQcHjpOJ3bXLJtN8NPp9KA=";
hash = "sha256-P556Is03BeC0Tf+kNv+Luy0KASgTXsyZ/MrPaPFUHE8=";
};
outputs = [ "out" "man" ];
vendorSha256 = null;
vendorHash = null;
doCheck = false;

View file

@ -54,6 +54,7 @@
, libmbim
, libcbor
, xz
, enableFlashrom ? false
}:
let
@ -76,7 +77,7 @@ let
# # Currently broken on Aarch64
# haveFlashrom = isx86;
# Experimental
haveFlashrom = false;
haveFlashrom = isx86 && enableFlashrom;
runPythonCommand = name: buildCommandPython: runCommand name {
nativeBuildInputs = [ python3 ];
@ -116,7 +117,7 @@ let
self = stdenv.mkDerivation rec {
pname = "fwupd";
version = "1.8.9";
version = "1.8.10";
# libfwupd goes to lib
# daemon, plug-ins and libfwupdplugin go to out
@ -125,7 +126,7 @@ let
src = fetchurl {
url = "https://people.freedesktop.org/~hughsient/releases/fwupd-${version}.tar.xz";
hash = "sha256-cZp5GsS6WYiuuT7EJ3i9ZdM8sHXQwJO1wE5eFoK+Uoo=";
hash = "sha256-vvNUidNdhW9xeksjEVnkIR7CZ4oBQizZJRMFtZUq6Ow=";
};
patches = [
@ -332,7 +333,6 @@ let
"fwupd/remotes.d/lvfs.conf"
"fwupd/remotes.d/vendor.conf"
"fwupd/remotes.d/vendor-directory.conf"
"fwupd/thunderbolt.conf"
"fwupd/uefi_capsule.conf"
"pki/fwupd/GPG-KEY-Linux-Foundation-Firmware"
"pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service"
@ -347,6 +347,8 @@ let
"fwupd/redfish.conf"
] ++ lib.optionals haveMSR [
"fwupd/msr.conf"
] ++ lib.optionals isx86 [
"fwupd/thunderbolt.conf"
];
# DisabledPlugins key in fwupd/daemon.conf

View file

@ -1,21 +1,30 @@
{ lib, rustPlatform, fetchFromGitHub, pkg-config, openssl, stdenv, Security }:
{ lib
, rustPlatform
, fetchFromGitHub
, pkg-config
, openssl
, stdenv
, darwin
}:
rustPlatform.buildRustPackage rec {
pname = "simple-http-server";
version = "0.6.5";
version = "0.6.6";
src = fetchFromGitHub {
owner = "TheWaWaR";
repo = pname;
rev = "v${version}";
sha256 = "sha256-9wssSegekRBUXxpru5WGGu6BLX6BFEgV0QliNJToRFg=";
sha256 = "sha256-b+z3rio+kg1Z0B4pqhTlCTtzXgAeCAhinSa9dkIwcaY=";
};
cargoSha256 = "sha256-P8Zr5KTjXD0qHkf6QfyfN39PjokpZUfywhzVjIO5rE8=";
cargoSha256 = "sha256-teBqgQloI/13F7K/+EBKFcHWqcK1wJrNUu5LO8nwQbo=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ] ++ lib.optional stdenv.isDarwin Security;
buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];
# Currently no tests are implemented, so we avoid building the package twice
doCheck = false;

View file

@ -51,6 +51,8 @@ with pkgs;
php = recurseIntoAttrs (callPackages ./php {});
pkg-config = recurseIntoAttrs (callPackage ../top-level/pkg-config/tests.nix { });
rustCustomSysroot = callPackage ./rust-sysroot {};
buildRustCrate = callPackage ../build-support/rust/build-rust-crate/test { };
importCargoLock = callPackage ../build-support/rust/test/import-cargo-lock { };

View file

@ -1,6 +1,6 @@
{ lib
, stdenv
, fetchurl
, fetchFromGitHub
, autoreconfHook
, pkg-config
, glib
@ -15,11 +15,13 @@
stdenv.mkDerivation rec {
pname = "ddcutil";
version = "1.3.2";
version = "1.4.1";
src = fetchurl {
url = "http://www.ddcutil.com/tarballs/${pname}-${version}.tar.gz";
sha256 = "sha256-vZI7OquGjZ0koArdOWKkfFtfRzCvtXm8lGFCUklloEI=";
src = fetchFromGitHub {
owner = "rockowitz";
repo = pname;
rev = "v${version}";
sha256 = "sha256-y3mubdInYa4gpxhdw2JcRhnhd12O7jNq/oF3qoP82LU=";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];

View file

@ -12,19 +12,19 @@
stdenv.mkDerivation rec {
pname = "uutils-coreutils";
version = "0.0.16";
version = "0.0.17";
src = fetchFromGitHub {
owner = "uutils";
repo = "coreutils";
rev = version;
sha256 = "sha256-03Y7966xB+3iJ1LSZPiuXMR7krhb6Wiri455ycA50SU=";
sha256 = "sha256-r4IpmwZaRKzesvq7jAjCvfvZVmfcvwj23zMH3VnlC4I=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
hash = "sha256-97yyOZCw4bJMpbH2ubyNtAJa7EwJY0AnPWMiUUzIM0M=";
hash = "sha256-ZbGLBjjAsdEhWK3/RS+yRI70xqV+5fzg76Y2Lip1m9A=";
};
nativeBuildInputs = [ rustPlatform.cargoSetupHook sphinx ];

View file

@ -1,22 +1,19 @@
{ stdenv, lib, fetchFromGitHub
, cmake, qtwebsockets, qtwebengine, wrapQtAppsHook, openconnect
{ stdenv, lib, fetchurl
, cmake, qtwebsockets, qtwebengine, qtkeychain, wrapQtAppsHook, openconnect
}:
stdenv.mkDerivation rec {
pname = "globalprotect-openconnect";
version = "1.4.8";
version = "1.4.9";
src = fetchFromGitHub {
owner = "yuezk";
repo = "GlobalProtect-openconnect";
fetchSubmodules = true;
rev = "v${version}";
sha256 = "sha256-PQAlGeHVayImKalCNv2SwPcxD0ts4BVSqeo1hKYmnMA=";
src = fetchurl {
url = "https://github.com/yuezk/GlobalProtect-openconnect/releases/download/v${version}/globalprotect-openconnect-${version}.tar.gz";
hash = "sha256-vhvVKESLbqHx3XumxbIWOXIreDkW3yONDMXMHxhjsvk=";
};
nativeBuildInputs = [ cmake wrapQtAppsHook ];
buildInputs = [ openconnect qtwebsockets qtwebengine ];
buildInputs = [ openconnect qtwebsockets qtwebengine qtkeychain ];
patchPhase = ''
substituteInPlace GPService/gpservice.h \

View file

@ -980,6 +980,7 @@ mapAliases ({
mpc_cli = mpc-cli; # moved from top-level 2022-01-24
mpd_clientlib = libmpdclient; # Added 2021-02-11
mpich2 = throw "'mpich2' has been renamed to/replaced by 'mpich'"; # Converted to throw 2022-02-22
mps-youtube = throw "'mps-youtube' has been removed as it's unmaintained and stopped working. Use 'yewtube', a maintained fork"; # Added 2022-12-29
mqtt-bench = throw "mqtt-bench has been dropped due to the lack of maintenance from upstream since 2017"; # Added 2022-06-02
msf = throw "'msf' has been renamed to/replaced by 'metasploit'"; # Converted to throw 2022-02-22
multimc = throw "multimc was removed from nixpkgs; use prismlauncher instead (see https://github.com/NixOS/nixpkgs/pull/154051 for more information)"; # Added 2022-01-08

View file

@ -112,6 +112,12 @@ with pkgs;
tests = callPackages ../test {};
defaultPkgConfigPackages =
# We don't want nix-env -q to enter this, because all of these are aliases.
dontRecurseIntoAttrs (
import ./pkg-config/defaultPkgConfigPackages.nix pkgs
);
### Nixpkgs maintainer tools
nix-generate-from-cpan = callPackage ../../maintainers/scripts/nix-generate-from-cpan.nix { };
@ -15681,7 +15687,7 @@ with pkgs;
cargo-llvm-lines = callPackage ../development/tools/rust/cargo-llvm-lines { };
cargo-lock = callPackage ../development/tools/rust/cargo-lock { };
cargo-outdated = callPackage ../development/tools/rust/cargo-outdated {
inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration;
};
cargo-pgx = callPackage ../development/tools/rust/cargo-pgx {
inherit (darwin.apple_sdk.frameworks) Security;
@ -31324,8 +31330,6 @@ with pkgs;
mpc-qt = libsForQt5.callPackage ../applications/video/mpc-qt { };
mps-youtube = callPackage ../applications/misc/mps-youtube { };
mplayer = callPackage ../applications/video/mplayer ({
libdvdnav = libdvdnav_4_2_1;
} // (config.mplayer or {}));
@ -33458,7 +33462,7 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) Foundation;
};
qpdfview = libsForQt5.callPackage ../applications/misc/qpdfview {};
qpdfview = libsForQt5.callPackage ../applications/office/qpdfview {};
qtile = callPackage ../applications/window-managers/qtile { };
@ -34134,6 +34138,8 @@ with pkgs;
yelp-tools = callPackage ../development/misc/yelp-tools { };
yewtube = callPackage ../applications/misc/yewtube { };
yokadi = python3Packages.callPackage ../applications/misc/yokadi {};
yoshimi = callPackage ../applications/audio/yoshimi { };
@ -38659,9 +38665,7 @@ with pkgs;
simplehttp2server = callPackage ../servers/simplehttp2server { };
simple-http-server = callPackage ../servers/simple-http-server {
inherit (darwin.apple_sdk.frameworks) Security;
};
simple-http-server = callPackage ../servers/simple-http-server { };
diceware = with python3Packages; toPythonApplication diceware;

View file

@ -1477,7 +1477,9 @@ let
trie = callPackage ../development/ocaml-modules/trie { };
tsdl = callPackage ../development/ocaml-modules/tsdl { };
tsdl = callPackage ../development/ocaml-modules/tsdl {
inherit (pkgs.darwin.apple_sdk.frameworks) AudioToolbox Cocoa CoreAudio CoreVideo ForceFeedback;
};
tsdl-image = callPackage ../development/ocaml-modules/tsdl-image { };

View file

@ -0,0 +1,45 @@
/* A set of aliases to be used in generated expressions.
In case of ambiguity, this will pick a sensible default.
This was initially based on cabal2nix's mapping.
It'd be nice to generate this mapping, based on a set of derivations.
It can not be fully automated, so it should be a expression or tool
that makes suggestions about which pkg-config module names can be added.
*/
pkgs:
let
inherit (pkgs) lib;
inherit (lib)
all
flip
mapAttrs
mapAttrsToList
getAttrFromPath
importJSON
;
data = importJSON ./pkg-config-data.json;
inherit (data) modules;
platform = pkgs.stdenv.hostPlatform;
isSupported = moduleData:
moduleData?supportedWhenPlatformAttrsEqual ->
all (x: x) (
mapAttrsToList
(k: v: platform?${k} && platform.${k} == v)
moduleData.supportedWhenPlatformAttrsEqual
);
modulePkgs = flip mapAttrs modules (_moduleName: moduleData:
if moduleData?attrPath && isSupported moduleData then
getAttrFromPath moduleData.attrPath pkgs
else
null
);
in
modulePkgs

View file

@ -0,0 +1,964 @@
{
"version": {
"major": 0,
"minor": 1
},
"modules": {
"IL": {
"attrPath": [
"libdevil"
]
},
"ImageMagick": {
"attrPath": [
"imagemagick"
]
},
"MagickWand": {
"attrPath": [
"imagemagick"
]
},
"Qt5Concurrent": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5Core": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5DBus": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5Gui": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5Network": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5OpenGL": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5OpenGLExtensions": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5PrintSupport": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5Qml": {
"attrPath": [
"qt5",
"qtdeclarative"
]
},
"Qt5QmlModels": {
"attrPath": [
"qt5",
"qtdeclarative"
]
},
"Qt5Quick": {
"attrPath": [
"qt5",
"qtdeclarative"
]
},
"Qt5QuickTest": {
"attrPath": [
"qt5",
"qtdeclarative"
]
},
"Qt5QuickWidgets": {
"attrPath": [
"qt5",
"qtdeclarative"
]
},
"Qt5Sql": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5Test": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5Widgets": {
"attrPath": [
"qt5",
"qtbase"
]
},
"Qt5Xml": {
"attrPath": [
"qt5",
"qtbase"
]
},
"SoapySDR": {
"attrPath": [
"soapysdr"
]
},
"alsa": {
"attrPath": [
"alsa-lib"
]
},
"alsa-topology": {
"attrPath": [
"alsa-lib"
]
},
"appindicator-0.1": {
"attrPath": [
"libappindicator-gtk2"
]
},
"appindicator3-0.1": {
"attrPath": [
"libappindicator-gtk3"
]
},
"bzip2": {
"attrPath": [
"bzip2"
]
},
"cairo-gobject": {
"attrPath": [
"cairo"
]
},
"cairo-pdf": {
"attrPath": [
"cairo"
]
},
"cairo-ps": {
"attrPath": [
"cairo"
]
},
"cairo-svg": {
"attrPath": [
"cairo"
]
},
"dbusmenu-glib-0.4": {
"attrPath": [
"libdbusmenu"
]
},
"dbusmenu-gtk3-0.4": {
"attrPath": [
"libdbusmenu-gtk3"
]
},
"egl": {
"attrPath": [
"libGL"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": false
}
},
"fftw3": {
"attrPath": [
"fftw"
]
},
"fftw3f": {
"attrPath": [
"fftwFloat"
]
},
"form": {
"attrPath": [
"ncurses"
]
},
"formw": {
"attrPath": [
"ncurses"
]
},
"freealut": {
"attrPath": [
"freealut"
]
},
"freetype2": {
"attrPath": [
"freetype"
]
},
"gdk-2.0": {
"attrPath": [
"gtk2"
]
},
"gdk-3.0": {
"attrPath": [
"gtk3"
]
},
"gdk-pixbuf-2.0": {
"attrPath": [
"gdk-pixbuf"
]
},
"gdk-x11-2.0": {
"attrPath": [
"gtk2-x11"
]
},
"gdk-x11-3.0": {
"attrPath": [
"gtk3-x11"
]
},
"geos": {
"attrPath": [
"geos"
]
},
"gio-2.0": {
"attrPath": [
"glib"
]
},
"gl": {
"attrPath": [
"libGL"
]
},
"glew": {
"attrPath": [
"glew"
]
},
"glu": {
"attrPath": [
"libGLU"
]
},
"glut": {
"attrPath": [
"freeglut"
]
},
"gnome-keyring-1": {
"attrPath": [
"libgnome-keyring"
]
},
"gnome-vfs-2.0": {
"attrPath": [
"gnome2",
"gnome_vfs"
]
},
"gnome-vfs-module-2.0": {
"attrPath": [
"gnome2",
"gnome_vfs"
]
},
"gobject-2.0": {
"attrPath": [
"glib"
]
},
"gobject-introspection-1.0": {
"attrPath": [
"gobject-introspection"
]
},
"gstreamer-audio-1.0": {
"attrPath": [
"gst_all_1",
"gst-plugins-base"
]
},
"gstreamer-base-1.0": {
"attrPath": [
"gst_all_1",
"gst-plugins-base"
]
},
"gstreamer-controller-1.0": {
"attrPath": [
"gst_all_1",
"gstreamer"
]
},
"gstreamer-net-1.0": {
"attrPath": [
"gst_all_1",
"gst-plugins-base"
]
},
"gstreamer-video-1.0": {
"attrPath": [
"gst_all_1",
"gst-plugins-base"
]
},
"gthread-2.0": {
"attrPath": [
"glib"
]
},
"gtk+-2.0": {
"attrPath": [
"gtk2"
]
},
"gtk+-3.0": {
"attrPath": [
"gtk3"
]
},
"gtk+-x11-2.0": {
"attrPath": [
"gtk2-x11"
]
},
"gtksourceview-3.0": {
"attrPath": [
"gtksourceview3"
]
},
"hidapi": {
"attrPath": [
"hidapi"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": true
}
},
"hidapi-hidraw": {
"attrPath": [
"hidapi"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": false
}
},
"hidapi-libusb": {
"attrPath": [
"hidapi"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": false
}
},
"icu-i18n": {
"attrPath": [
"icu"
]
},
"icu-io": {
"attrPath": [
"icu"
]
},
"icu-uc": {
"attrPath": [
"icu"
]
},
"imlib2": {
"attrPath": [
"imlib2"
]
},
"jack": {
"attrPath": [
"libjack2"
]
},
"javascriptcoregtk-4.0": {
"attrPath": [
"webkitgtk"
]
},
"lapack": {
"attrPath": [
"liblapack"
]
},
"libR": {
"attrPath": [
"R"
]
},
"libavutil": {
"attrPath": [
"ffmpeg"
]
},
"libb2": {
"attrPath": [
"libb2"
]
},
"libbrotlidec": {
"attrPath": [
"brotli"
]
},
"libbrotlienc": {
"attrPath": [
"brotli"
]
},
"libcrypto": {
"attrPath": [
"openssl"
]
},
"libecpg": {
"attrPath": [
"postgresql"
]
},
"libecpg_compat": {
"attrPath": [
"postgresql"
]
},
"libgsasl": {
"attrPath": [
"gsasl"
]
},
"libidn": {
"attrPath": [
"libidn"
]
},
"libjpeg": {
"attrPath": [
"libjpeg"
]
},
"liblzma": {
"attrPath": [
"xz"
]
},
"libmagic": {
"attrPath": [
"file"
]
},
"libmnl": {
"attrPath": [
"libmnl"
]
},
"libnotify": {
"attrPath": [
"libnotify"
]
},
"libpcap": {
"attrPath": [
"libpcap"
]
},
"libpcre": {
"attrPath": [
"pcre"
]
},
"libpcre2-16": {
"attrPath": [
"pcre2"
]
},
"libpcre2-32": {
"attrPath": [
"pcre2"
]
},
"libpcre2-8": {
"attrPath": [
"pcre2"
]
},
"libpcre2-posix": {
"attrPath": [
"pcre2"
]
},
"libpgtypes": {
"attrPath": [
"postgresql"
]
},
"libpng": {
"attrPath": [
"libpng"
]
},
"libpq": {
"attrPath": [
"postgresql"
]
},
"libpulse": {
"attrPath": [
"libpulseaudio"
]
},
"libpulse-mainloop-glib": {
"attrPath": [
"libpulseaudio"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": false
}
},
"libpulse-simple": {
"attrPath": [
"libpulseaudio"
]
},
"libqrencode": {
"attrPath": [
"qrencode"
]
},
"librtlsdr": {
"attrPath": [
"rtl-sdr"
]
},
"libsass": {
"attrPath": [
"libsass"
]
},
"libsctp": {
"attrPath": [
"lksctp-tools"
]
},
"libsecp256k1": {
"attrPath": [
"secp256k1"
]
},
"libsodium": {
"attrPath": [
"libsodium"
]
},
"libsoup-gnome-2.4": {
"attrPath": [
"libsoup"
]
},
"libssh2": {
"attrPath": [
"libssh2"
]
},
"libssl": {
"attrPath": [
"openssl"
]
},
"libstatgrab": {
"attrPath": [
"libstatgrab"
]
},
"libsystemd": {
"attrPath": [
"systemd"
]
},
"libturbojpeg": {
"attrPath": [
"libjpeg"
]
},
"libudev": {
"attrPath": [
"systemd"
]
},
"libxml-2.0": {
"attrPath": [
"libxml2"
]
},
"libzip": {
"attrPath": [
"libzip"
]
},
"libzmq": {
"attrPath": [
"zeromq"
]
},
"menu": {
"attrPath": [
"ncurses"
]
},
"menuw": {
"attrPath": [
"ncurses"
]
},
"ncurses": {
"attrPath": [
"ncurses"
]
},
"ncurses++": {
"attrPath": [
"ncurses"
]
},
"ncurses++w": {
"attrPath": [
"ncurses"
]
},
"ncursesw": {
"attrPath": [
"ncurses"
]
},
"netsnmp": {
"attrPath": [
"net_snmp"
]
},
"nix-cmd": {
"attrPath": [
"nix"
]
},
"nix-expr": {
"attrPath": [
"nix"
]
},
"nix-main": {
"attrPath": [
"nix"
]
},
"nix-store": {
"attrPath": [
"nix"
]
},
"odbc": {
"attrPath": [
"unixODBC"
]
},
"ompi": {
"attrPath": [
"openmpi"
]
},
"ompi-c": {
"attrPath": [
"openmpi"
]
},
"ompi-cxx": {
"attrPath": [
"openmpi"
]
},
"ompi-f77": {
"attrPath": [
"openmpi"
]
},
"ompi-f90": {
"attrPath": [
"openmpi"
]
},
"ompi-fort": {
"attrPath": [
"openmpi"
]
},
"openblas": {
"attrPath": [
"openblasCompat"
]
},
"openssl": {
"attrPath": [
"openssl"
]
},
"orte": {
"attrPath": [
"openmpi"
]
},
"panel": {
"attrPath": [
"ncurses"
]
},
"panelw": {
"attrPath": [
"ncurses"
]
},
"pangocairo": {
"attrPath": [
"pango"
]
},
"poppler-glib": {
"attrPath": [
"poppler_gi"
]
},
"python": {
"attrPath": [
"python3"
]
},
"ruby-2.7": {
"attrPath": [
"ruby_2_7"
]
},
"ruby-3.0": {
"attrPath": [
"ruby_3_0"
]
},
"ruby-3.1": {
"attrPath": [
"ruby_3_1"
]
},
"sdl2": {
"attrPath": [
"SDL2"
]
},
"sndfile": {
"attrPath": [
"libsndfile"
]
},
"sqlite3": {
"attrPath": [
"sqlite"
]
},
"taglib": {
"attrPath": [
"taglib"
]
},
"taglib_c": {
"attrPath": [
"taglib"
]
},
"tdjson": {
"attrPath": [
"tdlib"
]
},
"tensorflow": {
"attrPath": [
"libtensorflow"
]
},
"uuid": {
"attrPath": [
"libossp_uuid"
]
},
"vte-2.91": {
"attrPath": [
"vte"
]
},
"wayland-client": {
"attrPath": [
"wayland"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": false
}
},
"wayland-cursor": {
"attrPath": [
"wayland"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": false
}
},
"wayland-scanner": {
"attrPath": [
"wayland"
]
},
"wayland-server": {
"attrPath": [
"wayland"
],
"supportedWhenPlatformAttrsEqual": {
"isDarwin": false
}
},
"webkit2gtk-4.0": {
"attrPath": [
"webkitgtk"
]
},
"webkit2gtk-web-extension-4.0": {
"attrPath": [
"webkitgtk"
]
},
"x11": {
"attrPath": [
"xorg",
"libX11"
]
},
"xau": {
"attrPath": [
"xorg",
"libXau"
]
},
"xcursor": {
"attrPath": [
"xorg",
"libXcursor"
]
},
"xerces-c": {
"attrPath": [
"xercesc"
]
},
"xext": {
"attrPath": [
"xorg",
"libXext"
]
},
"xft": {
"attrPath": [
"xorg",
"libXft"
]
},
"xi": {
"attrPath": [
"xorg",
"libXi"
]
},
"xinerama": {
"attrPath": [
"xorg",
"libXinerama"
]
},
"xkbcommon": {
"attrPath": [
"libxkbcommon"
]
},
"xpm": {
"attrPath": [
"xorg",
"libXpm"
]
},
"xrandr": {
"attrPath": [
"xorg",
"libXrandr"
]
},
"xrender": {
"attrPath": [
"xorg",
"libXrender"
]
},
"xscrnsaver": {
"attrPath": [
"xorg",
"libXScrnSaver"
]
},
"xtst": {
"attrPath": [
"xorg",
"libXtst"
]
},
"xxf86vm": {
"attrPath": [
"xorg",
"libXxf86vm"
]
},
"yaml-0.1": {
"attrPath": [
"libyaml"
]
},
"zlib": {
"attrPath": [
"zlib"
]
}
}
}

View file

@ -0,0 +1,45 @@
# cd nixpkgs
# nix-build -A tests.pkg-config.defaultPkgConfigPackages
{ lib, pkg-config, defaultPkgConfigPackages, runCommand, testers }:
let
inherit (lib.strings) escapeNixIdentifier;
allTests = lib.mapAttrs (k: v: if v == null then null else makePkgConfigTestMaybe k v) defaultPkgConfigPackages;
# nix-build rejects attribute names with periods
# This will build those regardless.
tests-combined = runCommand "pkg-config-checks" {
allTests = lib.attrValues allTests;
} ''
touch $out
'';
makePkgConfigTestMaybe = moduleName: pkg:
if ! lib.isDerivation pkg
then
throw "pkg-config module `${escapeNixIdentifier moduleName}` is not defined to be a derivation. Please check the attribute value for `${escapeNixIdentifier moduleName}` in `pkgs/top-level/pkg-config-packages.nix` in Nixpkgs."
else if ! pkg?meta.unsupported
then
throw "pkg-config module `${escapeNixIdentifier moduleName}` does not have a `meta.unsupported` attribute. This can't be right. Please check the attribute value for `${escapeNixIdentifier moduleName}` in `pkgs/top-level/pkg-config-packages.nix` in Nixpkgs."
else if pkg.meta.unsupported
then
# We return `null` instead of doing a `filterAttrs`, because with
# `filterAttrs` the evaluator would not be able to return the attribute
# set without first evaluating all of the attribute _values_. This would
# be rather expensive, and severly slow down the use case of getting a
# single test, which we want to do in `passthru.tests`, or interactively.
null
else if ! pkg?meta.broken
then
throw "pkg-config module `${escapeNixIdentifier moduleName}` does not have a `meta.broken` attribute. This can't be right. Please check the attribute value for `${escapeNixIdentifier moduleName}` in `pkgs/top-level/pkg-config.packages.nix` in Nixpkgs."
else if pkg.meta.broken
then null
else testers.hasPkgConfigModule { inherit moduleName; package = pkg; };
in
lib.recurseIntoAttrs allTests // { inherit tests-combined; }

View file

@ -0,0 +1,21 @@
# cd nixpkgs
# nix-build -A tests.pkg-config
{ lib, stdenv, ... }:
let
# defaultPkgConfigPackages test needs a Nixpkgs with allowUnsupportedPlatform
# in order to filter out the unsupported packages without throwing any errors
# tryEval would be too fragile, masking different problems as if they're
# unsupported platform problems.
allPkgs = import ../default.nix {
system = stdenv.hostPlatform.system;
localSystem = stdenv.hostPlatform.system;
config = {
allowUnsupportedSystem = true;
};
overlays = [];
};
in
lib.recurseIntoAttrs {
defaultPkgConfigPackages = allPkgs.callPackage ./test-defaultPkgConfigPackages.nix { };
}

View file

@ -129,6 +129,7 @@ mapAliases ({
nose-cover3 = throw "nose-cover3 has been removed, it was using setuptools 2to3 translation feature, which has been removed in setuptools 58"; # added 2022-02-16
notifymuch = throw "notifymuch has been promoted to a top-level attribute"; # added 2022-10-02
ordereddict = throw "ordereddict has been removed because it is only useful on unsupported python versions."; # added 2022-05-28
pafy = throw "pafy has been removed because it is unmaintained and only a dependency of mps-youtube, itself superseded by yewtube"; # Added 2023-01-19
pam = python-pam; # added 2020-09-07.
PasteDeploy = pastedeploy; # added 2021-10-07
pathpy = path; # added 2022-04-12

View file

@ -6785,8 +6785,6 @@ self: super: with self; {
packvers = callPackage ../development/python-modules/packvers { };
pafy = callPackage ../development/python-modules/pafy { };
pagelabels = callPackage ../development/python-modules/pagelabels { };
paho-mqtt = callPackage ../development/python-modules/paho-mqtt { };