Merge master into haskell-updates
This commit is contained in:
commit
966cf602cc
108 changed files with 1476 additions and 260 deletions
21
.github/PULL_REQUEST_TEMPLATE.md
vendored
21
.github/PULL_REQUEST_TEMPLATE.md
vendored
|
@ -1,13 +1,3 @@
|
|||
<!--
|
||||
To help with the large amounts of pull requests, we would appreciate your
|
||||
reviews of other pull requests, especially simple package updates. Just leave a
|
||||
comment describing what you have tested in the relevant package/service.
|
||||
Reviewing helps to reduce the average time-to-merge for everyone.
|
||||
Thanks a lot if you do!
|
||||
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
|
||||
Reviewing guidelines: https://nixos.org/manual/nixpkgs/unstable/#chap-reviewing-contributions
|
||||
-->
|
||||
|
||||
###### Description of changes
|
||||
|
||||
<!--
|
||||
|
@ -38,3 +28,14 @@ For new packages please briefly describe the package or provide a link to its ho
|
|||
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module
|
||||
- [ ] (Release notes changes) Ran `nixos/doc/manual/md-to-db.sh` to update generated release notes
|
||||
- [ ] Fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md).
|
||||
|
||||
<!--
|
||||
To help with the large amounts of pull requests, we would appreciate your
|
||||
reviews of other pull requests, especially simple package updates. Just leave a
|
||||
comment describing what you have tested in the relevant package/service.
|
||||
Reviewing helps to reduce the average time-to-merge for everyone.
|
||||
Thanks a lot if you do!
|
||||
|
||||
List of open PRs: https://github.com/NixOS/nixpkgs/pulls
|
||||
Reviewing guidelines: https://nixos.org/manual/nixpkgs/unstable/#chap-reviewing-contributions
|
||||
-->
|
||||
|
|
|
@ -327,7 +327,7 @@ rec {
|
|||
isDerivation "foobar"
|
||||
=> false
|
||||
*/
|
||||
isDerivation = x: isAttrs x && x ? type && x.type == "derivation";
|
||||
isDerivation = x: x.type or null == "derivation";
|
||||
|
||||
/* Converts a store path to a fake derivation. */
|
||||
toDerivation = path:
|
||||
|
|
|
@ -2218,7 +2218,7 @@
|
|||
ckie = {
|
||||
email = "nixpkgs-0efe364@ckie.dev";
|
||||
github = "ckiee";
|
||||
githubId = 2526321;
|
||||
githubId = 25263210;
|
||||
keys = [{
|
||||
longkeyid = "rsa4096/0x13E79449C0525215";
|
||||
fingerprint = "539F 0655 4D35 38A5 429A E253 13E7 9449 C052 5215";
|
||||
|
@ -9391,6 +9391,13 @@
|
|||
githubId = 71795;
|
||||
name = "Mica Semrick";
|
||||
};
|
||||
papojari = {
|
||||
email = "papojari-git.ovoid@aleeas.com";
|
||||
matrix = "@papojari:artemislena.eu";
|
||||
github = "papojari";
|
||||
githubId = 81317317;
|
||||
name = "papojari";
|
||||
};
|
||||
paraseba = {
|
||||
email = "paraseba@gmail.com";
|
||||
github = "paraseba";
|
||||
|
@ -14031,6 +14038,12 @@
|
|||
github = "jpagex";
|
||||
githubId = 635768;
|
||||
};
|
||||
vbrandl = {
|
||||
name = "Valentin Brandl";
|
||||
email = "mail+nixpkgs@vbrandl.net";
|
||||
github = "vbrandl";
|
||||
githubId = 20639051;
|
||||
};
|
||||
portothree = {
|
||||
name = "Gustavo Porto";
|
||||
email = "gustavoporto@ya.ru";
|
||||
|
|
|
@ -11,7 +11,7 @@ in {
|
|||
serviceConfig = {
|
||||
ExecStart = ''
|
||||
${pkgs.prometheus-systemd-exporter}/bin/systemd_exporter \
|
||||
--web.listen-address ${cfg.listenAddress}:${toString cfg.port}
|
||||
--web.listen-address ${cfg.listenAddress}:${toString cfg.port} ${concatStringsSep " " cfg.extraFlags}
|
||||
'';
|
||||
RestrictAddressFamilies = [
|
||||
# Need AF_UNIX to collect data
|
||||
|
|
|
@ -962,7 +962,7 @@ in
|
|||
'') onion.authorizedClients ++
|
||||
optional (onion.secretKey != null) ''
|
||||
install -d -o tor -g tor -m 0700 ${escapeShellArg onion.path}
|
||||
key="$(cut -f1 -d: ${escapeShellArg onion.secretKey})"
|
||||
key="$(cut -f1 -d: ${escapeShellArg onion.secretKey} | head -1)"
|
||||
case "$key" in
|
||||
("== ed25519v"*"-secret")
|
||||
install -o tor -g tor -m 0400 ${escapeShellArg onion.secretKey} ${escapeShellArg onion.path}/hs_ed25519_secret_key;;
|
||||
|
|
|
@ -59,7 +59,7 @@ $ENV{NIXOS_ACTION} = $action;
|
|||
# This is a NixOS installation if it has /etc/NIXOS or a proper
|
||||
# /etc/os-release.
|
||||
die "This is not a NixOS installation!\n" unless
|
||||
-f "/etc/NIXOS" || (read_file("/etc/os-release", err_mode => 'quiet') // "") =~ /ID=nixos/s;
|
||||
-f "/etc/NIXOS" || (read_file("/etc/os-release", err_mode => 'quiet') // "") =~ /ID="?nixos"?/s;
|
||||
|
||||
openlog("nixos", "", LOG_USER);
|
||||
|
||||
|
|
9
nixos/tests/installed-tests/appstream-qt.nix
Normal file
9
nixos/tests/installed-tests/appstream-qt.nix
Normal file
|
@ -0,0 +1,9 @@
|
|||
{ pkgs, makeInstalledTest, ... }:
|
||||
|
||||
makeInstalledTest {
|
||||
tested = pkgs.libsForQt5.appstream-qt;
|
||||
|
||||
testConfig = {
|
||||
appstream.enable = true;
|
||||
};
|
||||
}
|
9
nixos/tests/installed-tests/appstream.nix
Normal file
9
nixos/tests/installed-tests/appstream.nix
Normal file
|
@ -0,0 +1,9 @@
|
|||
{ pkgs, makeInstalledTest, ... }:
|
||||
|
||||
makeInstalledTest {
|
||||
tested = pkgs.appstream;
|
||||
|
||||
testConfig = {
|
||||
appstream.enable = true;
|
||||
};
|
||||
}
|
|
@ -84,6 +84,8 @@ let
|
|||
in
|
||||
|
||||
{
|
||||
appstream = callInstalledTest ./appstream.nix {};
|
||||
appstream-qt = callInstalledTest ./appstream-qt.nix {};
|
||||
colord = callInstalledTest ./colord.nix {};
|
||||
flatpak = callInstalledTest ./flatpak.nix {};
|
||||
flatpak-builder = callInstalledTest ./flatpak-builder.nix {};
|
||||
|
|
|
@ -1156,6 +1156,10 @@ let
|
|||
systemd = {
|
||||
exporterConfig = {
|
||||
enable = true;
|
||||
|
||||
extraFlags = [
|
||||
"--collector.enable-restart-count"
|
||||
];
|
||||
};
|
||||
metricProvider = { };
|
||||
exporterTest = ''
|
||||
|
@ -1166,6 +1170,11 @@ let
|
|||
'systemd_unit_state{name="basic.target",state="active",type="target"} 1'
|
||||
)
|
||||
)
|
||||
succeed(
|
||||
"curl -sSf localhost:9558/metrics | grep '{}'".format(
|
||||
'systemd_service_restart_total{state="prometheus-systemd-exporter.service"} 0'
|
||||
)
|
||||
)
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -5,14 +5,14 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "gpodder";
|
||||
version = "3.10.17";
|
||||
version = "3.10.21";
|
||||
format = "other";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0wrk8d4q6ricbcjzlhk10vrk1qg9hi323kgyyd0c8nmh7a82h8pd";
|
||||
sha256 = "0n73jm5ypsj962gpr0dk10lqh83giqsczm63wchyhmrkyf1wgga1";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -42,7 +42,10 @@ python3Packages.buildPythonApplication rec {
|
|||
];
|
||||
|
||||
checkInputs = with python3Packages; [
|
||||
coverage minimock
|
||||
minimock
|
||||
pytest
|
||||
pytest-httpserver
|
||||
pytest-cov
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
@ -51,6 +54,7 @@ python3Packages.buildPythonApplication rec {
|
|||
feedparser
|
||||
dbus-python
|
||||
mygpoclient
|
||||
requests
|
||||
pygobject3
|
||||
eyeD3
|
||||
podcastparser
|
||||
|
@ -69,7 +73,8 @@ python3Packages.buildPythonApplication rec {
|
|||
'';
|
||||
|
||||
installCheckPhase = ''
|
||||
LC_ALL=C PYTHONPATH=./src:$PYTHONPATH python3 -m gpodder.unittests
|
||||
LC_ALL=C PYTHONPATH=src/:$PYTHONPATH pytest --ignore=tests --ignore=src/gpodder/utilwin32ctypes.py --doctest-modules src/gpodder/util.py src/gpodder/jsonconfig.py
|
||||
LC_ALL=C PYTHONPATH=src/:$PYTHONPATH pytest tests --ignore=src/gpodder/utilwin32ctypes.py --ignore=src/mygpoclient --cov=gpodder
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -11,41 +11,20 @@
|
|||
</section>
|
||||
<section>
|
||||
<item>
|
||||
@@ -201,4 +197,4 @@
|
||||
</submenu>
|
||||
</menu>
|
||||
</interface>
|
||||
-<!-- :noTabs=true:tabSize=2:indentSize=2: -->
|
||||
\ No newline at end of file
|
||||
+<!-- :noTabs=true:tabSize=2:indentSize=2: -->
|
||||
--- a/src/gpodder/config.py
|
||||
+++ b/src/gpodder/config.py
|
||||
@@ -91,13 +91,6 @@
|
||||
'retries': 3, # number of retries when downloads time out
|
||||
},
|
||||
@@ -94,7 +94,7 @@
|
||||
|
||||
- # Software updates from gpodder.org
|
||||
- 'software_update': {
|
||||
# Software updates from gpodder.org
|
||||
'software_update': {
|
||||
- 'check_on_startup': True, # check for updates on start
|
||||
- 'last_check': 0, # unix timestamp of last update check
|
||||
- 'interval': 5, # interval (in days) to check for updates
|
||||
- },
|
||||
-
|
||||
'ui': {
|
||||
# Settings for the Command-Line Interface
|
||||
'cli': {
|
||||
+ 'check_on_startup': False, # check for updates on start
|
||||
'last_check': 0, # unix timestamp of last update check
|
||||
'interval': 5, # interval (in days) to check for updates
|
||||
},
|
||||
--- a/src/gpodder/gtkui/main.py
|
||||
+++ b/src/gpodder/gtkui/main.py
|
||||
@@ -224,7 +224,7 @@
|
||||
util.idle_add(self.subscribe_to_url, self.options.subscribe)
|
||||
elif not self.channels:
|
||||
self.on_itemUpdate_activate()
|
||||
- elif self.config.software_update.check_on_startup:
|
||||
+ elif False and self.config.software_update.check_on_startup:
|
||||
# Check for software updates from gpodder.org
|
||||
diff = time.time() - self.config.software_update.last_check
|
||||
if diff > (60 * 60 * 24) * self.config.software_update.interval:
|
||||
@@ -3288,6 +3288,7 @@
|
||||
@@ -3445,6 +3445,7 @@
|
||||
If silent=False, a message will be shown even if no updates are
|
||||
available (set silent=False when the check is manually triggered).
|
||||
"""
|
||||
|
|
39
pkgs/applications/audio/psst/default.nix
Normal file
39
pkgs/applications/audio/psst/default.nix
Normal file
|
@ -0,0 +1,39 @@
|
|||
{ lib, fetchFromGitHub, rustPlatform, alsa-lib, atk, cairo, dbus, gdk-pixbuf, glib, gtk3, pango, pkg-config }:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "psst";
|
||||
version = "unstable-2022-01-25";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jpochyla";
|
||||
repo = pname;
|
||||
rev = "1627cd4a301dd51e9ee3034294cd7b0d94d02ddc";
|
||||
sha256 = "sha256-kepvYhmieXx6Hj79aqaA7tYUnueaBsNx0U4lV7K6LuU=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-DcdlQudGyWUUAacV7pAOLDvhd1fgAkEesdxDkHSYm4M=";
|
||||
# specify the subdirectory of the binary crate to build from the workspace
|
||||
buildAndTestSubdir = "psst-gui";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
atk
|
||||
cairo
|
||||
dbus
|
||||
gdk-pixbuf
|
||||
glib
|
||||
gtk3
|
||||
pango
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fast and multi-platform Spotify client with native GUI";
|
||||
homepage = "https://github.com/jpochyla/psst";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.vbrandl ];
|
||||
};
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, darwin
|
||||
, fetchurl
|
||||
, autoconf
|
||||
, automake
|
||||
|
@ -27,16 +28,25 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "3c9dcb686217b2efe0e988e90b95777c4591e3335e259e01a94af87e0bf01809";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autogen autoconf automake gettext libtool pkg-config py3 unzip which ];
|
||||
# when building on darwin we need dawin.cctools to provide the correct libtool
|
||||
# as libwally-core detects the host as darwin and tries to add the -static
|
||||
# option to libtool, also we have to add the modified gsed package.
|
||||
nativeBuildInputs = [ autogen autoconf automake gettext pkg-config py3 unzip which ]
|
||||
++ lib.optionals stdenv.isDarwin [ darwin.cctools darwin.autoSignDarwinBinariesHook ] ++ [ libtool ];
|
||||
|
||||
buildInputs = [ gmp libsodium sqlite zlib ];
|
||||
|
||||
postPatch = ''
|
||||
# this causes some python trouble on a darwin host so we skip this step.
|
||||
# also we have to tell libwally-core to use sed instead of gsed.
|
||||
postPatch = if !stdenv.isDarwin then ''
|
||||
patchShebangs \
|
||||
tools/generate-wire.py \
|
||||
tools/update-mocks.sh \
|
||||
tools/mockup.sh \
|
||||
devtools/sql-rewrite.py
|
||||
'' else ''
|
||||
substituteInPlace external/libwally-core/tools/autogen.sh --replace gsed sed && \
|
||||
substituteInPlace external/libwally-core/configure.ac --replace gsed sed
|
||||
'';
|
||||
|
||||
configureFlags = [ "--disable-developer" "--disable-valgrind" ];
|
||||
|
@ -56,6 +66,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = "https://github.com/ElementsProject/lightning";
|
||||
maintainers = with maintainers; [ jb55 prusnak ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -12,16 +12,16 @@ let
|
|||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "electrs";
|
||||
version = "0.9.5";
|
||||
version = "0.9.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "romanz";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-6TR9OeIAVVbwDrshb9zHTS39x6taNWYK0UyRLbkW+g0=";
|
||||
hash = "sha256-BI7hxlpg2sggD1ag73n+tRre+Ja2ZFhDPzy1DV8aEHw=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-taOrbtx74DICvPLrwym70X3pv7EBA/H22VZmlxefANM=";
|
||||
cargoHash = "sha256-Oy2mOulSB2a9LaT47G+BzjidcjPjHeaoesQ7g6M8M1Q=";
|
||||
|
||||
# needed for librocksdb-sys
|
||||
nativeBuildInputs = [ llvmPackages.clang ];
|
||||
|
|
|
@ -13,11 +13,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pinegrow";
|
||||
version = "6.3";
|
||||
version = "6.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.pinegrow.com/PinegrowLinux64.${version}.zip";
|
||||
sha256 = "0wldj633p67da077nfc67gr9xhq580rkfd0r3904sjq7x01r0kaz";
|
||||
sha256 = "0i8sg4criimrqmz0g68b8xcwcrb362ssid5jazswpa6hhwj6s5n4";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -3,15 +3,15 @@
|
|||
}:
|
||||
let
|
||||
pname = "josm";
|
||||
version = "18360";
|
||||
version = "18387";
|
||||
srcs = {
|
||||
jar = fetchurl {
|
||||
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
|
||||
sha256 = "sha256-1OMEPMtUGkxQCgpmyVP1h25gSDa2MKF7l1rodr61O5s=";
|
||||
sha256 = "sha256-zkEWZjjSy0ajG5X1/dIgLPZ7zr0BiaJJcHaN8sv/3yc=";
|
||||
};
|
||||
macosx = fetchurl {
|
||||
url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java17.zip";
|
||||
sha256 = "sha256-ZCybgaLwPfQVG2gJ+dtElIY7bGZUe9R8a/0B6QK8yK8=";
|
||||
sha256 = "sha256-xOVnnQ+eUkboT8Tq5F4QJEou1wAaHwiEdyiEKDR/fUk=";
|
||||
};
|
||||
pkg = fetchsvn {
|
||||
url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "clusterctl";
|
||||
version = "1.1.2";
|
||||
version = "1.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kubernetes-sigs";
|
||||
repo = "cluster-api";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-IjkksHa94gkNiaeksGHlLdeHlLS/uwI0GnKK0d3s5wk=";
|
||||
sha256 = "sha256-0njXmYhZM4DXFeK9KboXnVw8uHdz4PFJ2aJxwhgyEc8=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-3PzaMB7U19HnqS+zRbIupErE1S8+MzG92vQFq3oxHpE=";
|
||||
vendorSha256 = "sha256-JVRLPsfI1ITilAOkVIAa2IjjuAlJ2PCpvYEkhnTzRDA=";
|
||||
|
||||
subPackages = [ "cmd/clusterctl" ];
|
||||
|
||||
|
|
|
@ -4,13 +4,13 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "git-remote-hg";
|
||||
version = "1.0.2.1";
|
||||
version = "1.0.3.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mnauw";
|
||||
repo = "git-remote-hg";
|
||||
rev = "v${version}";
|
||||
sha256 = "1crgq13v2p9wmw1yhckmyzybh8h1nz3839qhqvzh48vxqkailzmn";
|
||||
sha256 = "0b5lfbrcrvzpz380817md00lbgy5yl4y76vs3vm0bpm5wmr7c027";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -2,19 +2,21 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cloud-hypervisor";
|
||||
version = "21.0";
|
||||
version = "22.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cloud-hypervisor";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "00b0ij9sfv7zsrgwrcj2rzpy1z8bp0m0lmzjp433xzpcgcnzw3w5";
|
||||
sha256 = "1n4i7rgx8rkif2naw429fnkhv0888sfxmnky67fd42mlv1lhz9w8";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ openssl ] ++ lib.optional stdenv.isAarch64 dtc;
|
||||
|
||||
cargoSha256 = "0lf7bb468s2ic9vabx954i46605gf7c6064vvwqvz7djk30z0y0d";
|
||||
cargoSha256 = "0kc6lcwlqg9l19l4psakgkc5jf28nw1riz85adci897yha1dsnh0";
|
||||
|
||||
OPENSSL_NO_VENDOR = true;
|
||||
|
||||
# Integration tests require root.
|
||||
cargoTestFlags = [ "--bins" ];
|
||||
|
|
|
@ -1,44 +1,49 @@
|
|||
commit cdc3e7eeafa9f683214d2c15d52ef384c3de6611
|
||||
Author: aszlig <aszlig@nix.build>
|
||||
Date: Mon Mar 18 13:21:01 2019 +0100
|
||||
From 9e4932ae99946b1a08ab5b5345fd2bc3486e54a5 Mon Sep 17 00:00:00 2001
|
||||
From: aszlig <aszlig@nix.build>
|
||||
Date: Mon, 18 Mar 2019 13:21:01 +0100
|
||||
Subject: [PATCH] 9pfs: Ignore O_NOATIME open flag
|
||||
|
||||
9pfs: Ignore O_NOATIME open flag
|
||||
|
||||
Since Linux 4.19, overlayfs uses the O_NOATIME flag on its lowerdir,
|
||||
which in turn causes errors when the Nix store is mounted in the guest
|
||||
because the file owner of the store paths typically don't match the
|
||||
owner of the QEMU process.
|
||||
|
||||
After submitting a patch to the overlayfs mailing list[1], it turns out
|
||||
that my patch was incomplete[2] and needs a bit more rework.
|
||||
|
||||
So instead of using an incomplete kernel patch in nixpkgs, which affects
|
||||
*all* users of overlayfs, not just NixOS VM tests, I decided that for
|
||||
now it's better to patch QEMU instead.
|
||||
|
||||
The change here really only ignores the O_NOATIME flag so that the
|
||||
behaviour is similar to what NFS does. From open(2):
|
||||
|
||||
This flag may not be effective on all filesystems. One example is NFS,
|
||||
where the server maintains the access time.
|
||||
|
||||
This change is therefore only temporary until the final fix lands in the
|
||||
stable kernel releases.
|
||||
|
||||
[1]: https://www.spinics.net/lists/linux-unionfs/msg06755.html
|
||||
[2]: https://www.spinics.net/lists/linux-unionfs/msg06756.html
|
||||
|
||||
Signed-off-by: aszlig <aszlig@nix.build>
|
||||
Since Linux 4.19, overlayfs uses the O_NOATIME flag on its lowerdir,
|
||||
which in turn causes errors when the Nix store is mounted in the guest
|
||||
because the file owner of the store paths typically don't match the
|
||||
owner of the QEMU process.
|
||||
|
||||
After submitting a patch to the overlayfs mailing list[1], it turns out
|
||||
that my patch was incomplete[2] and needs a bit more rework.
|
||||
|
||||
So instead of using an incomplete kernel patch in nixpkgs, which affects
|
||||
*all* users of overlayfs, not just NixOS VM tests, I decided that for
|
||||
now it's better to patch QEMU instead.
|
||||
|
||||
The change here really only ignores the O_NOATIME flag so that the
|
||||
behaviour is similar to what NFS does. From open(2):
|
||||
|
||||
This flag may not be effective on all filesystems. One example is NFS,
|
||||
where the server maintains the access time.
|
||||
|
||||
This change is therefore only temporary until the final fix lands in the
|
||||
stable kernel releases.
|
||||
|
||||
[1]: https://www.spinics.net/lists/linux-unionfs/msg06755.html
|
||||
[2]: https://www.spinics.net/lists/linux-unionfs/msg06756.html
|
||||
|
||||
Signed-off-by: aszlig <aszlig@nix.build>
|
||||
---
|
||||
hw/9pfs/9p.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c
|
||||
index 55821343e5..0b8425fe18 100644
|
||||
index a6d6b3f835..4eb26e2294 100644
|
||||
--- a/hw/9pfs/9p.c
|
||||
+++ b/hw/9pfs/9p.c
|
||||
@@ -127,7 +127,6 @@ static int dotl_to_open_flags(int flags)
|
||||
{ P9_DOTL_LARGEFILE, O_LARGEFILE },
|
||||
{ P9_DOTL_DIRECTORY, O_DIRECTORY },
|
||||
{ P9_DOTL_NOFOLLOW, O_NOFOLLOW },
|
||||
@@ -139,7 +139,6 @@ static int dotl_to_open_flags(int flags)
|
||||
{ P9_DOTL_DSYNC, O_DSYNC },
|
||||
{ P9_DOTL_FASYNC, FASYNC },
|
||||
#ifndef CONFIG_DARWIN
|
||||
- { P9_DOTL_NOATIME, O_NOATIME },
|
||||
{ P9_DOTL_SYNC, O_SYNC },
|
||||
};
|
||||
|
||||
/*
|
||||
* On Darwin, we could map to F_NOCACHE, which is
|
||||
* similar, but doesn't quite have the same
|
||||
--
|
||||
2.35.1
|
||||
|
||||
|
|
|
@ -0,0 +1,77 @@
|
|||
From 4ca09b7cd1d42eb6b1587fed74cd4d684e31bfbe Mon Sep 17 00:00:00 2001
|
||||
From: Keno Fischer <keno@juliacomputing.com>
|
||||
Date: Sun, 27 Feb 2022 17:35:22 -0500
|
||||
Subject: [PATCH] 9p: darwin: meson: Allow VirtFS on Darwin
|
||||
|
||||
To allow VirtFS on darwin, we need to check that pthread_fchdir_np is
|
||||
available, which has only been available since macOS 10.12.
|
||||
|
||||
Additionally, virtfs_proxy_helper is disabled on Darwin. This patch
|
||||
series does not currently provide an implementation of the proxy-helper,
|
||||
but this functionality could be implemented later on.
|
||||
|
||||
Signed-off-by: Keno Fischer <keno@juliacomputing.com>
|
||||
[Michael Roitzsch: - Rebase for NixOS]
|
||||
Signed-off-by: Michael Roitzsch <reactorcontrol@icloud.com>
|
||||
[Will Cohen: - Rebase to master]
|
||||
Signed-off-by: Will Cohen <wwcohen@gmail.com>
|
||||
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
[Will Cohen: - Add check for pthread_fchdir_np to virtfs
|
||||
- Add comments to patch commit
|
||||
- Note that virtfs_proxy_helper does not work
|
||||
on macOS
|
||||
- Fully adjust meson virtfs error note to specify
|
||||
macOS
|
||||
- Rebase to master]
|
||||
Signed-off-by: Will Cohen <wwcohen@gmail.com>
|
||||
Message-Id: <20220227223522.91937-12-wwcohen@gmail.com>
|
||||
Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
|
||||
Acked-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
|
||||
---
|
||||
fsdev/meson.build | 1 +
|
||||
meson.build | 17 +++++++++++------
|
||||
2 files changed, 12 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/fsdev/meson.build b/fsdev/meson.build
|
||||
index adf57cc43e..b632b66348 100644
|
||||
--- a/fsdev/meson.build
|
||||
+++ b/fsdev/meson.build
|
||||
@@ -7,6 +7,7 @@ fsdev_ss.add(when: ['CONFIG_FSDEV_9P'], if_true: files(
|
||||
'qemu-fsdev.c',
|
||||
), if_false: files('qemu-fsdev-dummy.c'))
|
||||
softmmu_ss.add_all(when: 'CONFIG_LINUX', if_true: fsdev_ss)
|
||||
+softmmu_ss.add_all(when: 'CONFIG_DARWIN', if_true: fsdev_ss)
|
||||
|
||||
if have_virtfs_proxy_helper
|
||||
executable('virtfs-proxy-helper',
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 2265fa409a..6d73c02903 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -1383,12 +1383,17 @@ endif
|
||||
have_host_block_device = (targetos != 'darwin' or
|
||||
cc.has_header('IOKit/storage/IOMedia.h'))
|
||||
|
||||
-have_virtfs = (targetos == 'linux' and
|
||||
- have_system and
|
||||
- libattr.found() and
|
||||
- libcap_ng.found())
|
||||
-
|
||||
-have_virtfs_proxy_helper = have_virtfs and have_tools
|
||||
+have_virtfs = get_option('virtfs') \
|
||||
+ .require(targetos == 'linux' or targetos == 'darwin',
|
||||
+ error_message: 'virtio-9p (virtfs) requires Linux or macOS') \
|
||||
+ .require(targetos == 'linux' or cc.has_function('pthread_fchdir_np'),
|
||||
+ error_message: 'virtio-9p (virtfs) on macOS requires the presence of pthread_fchdir_np') \
|
||||
+ .require(targetos == 'darwin' or (libattr.found() and libcap_ng.found()),
|
||||
+ error_message: 'virtio-9p (virtfs) on Linux requires libcap-ng-devel and libattr-devel') \
|
||||
+ .disable_auto_if(not have_tools and not have_system) \
|
||||
+ .allowed()
|
||||
+
|
||||
+have_virtfs_proxy_helper = targetos != 'darwin' and have_virtfs and have_tools
|
||||
|
||||
if get_option('virtfs').enabled()
|
||||
if not have_virtfs
|
||||
--
|
||||
2.35.1
|
||||
|
|
@ -88,14 +88,64 @@ stdenv.mkDerivation rec {
|
|||
|
||||
patches = [
|
||||
./fix-qemu-ga.patch
|
||||
./9p-ignore-noatime.patch
|
||||
# Cocoa clipboard support only works on macOS 10.14+
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/7e3e20d89129614f4a7b2451fe321cc6ccca3b76.diff";
|
||||
sha256 = "09xz06g57wxbacic617pq9c0qb7nly42gif0raplldn5lw964xl2";
|
||||
revert = true;
|
||||
})
|
||||
] ++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
|
||||
# 9p-darwin for 7.0 backported to 6.2.0
|
||||
#
|
||||
# Can generally be removed when updating derivation to 7.0. Nine of the
|
||||
# patches can be drawn directly from QEMU upstream, but the second commit
|
||||
# and the eleventh commit had to be modified when rebasing back to 6.2.0.
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/e0bd743bb2dd4985791d4de880446bdbb4e04fed.patch";
|
||||
sha256 = "sha256-c6QYL3zig47fJwm6rqkqGp3E1PakVTaihvXDRebbBlQ=";
|
||||
})
|
||||
./rename-9p-util.patch
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/f41db099c71151291c269bf48ad006de9cbd9ca6.patch";
|
||||
sha256 = "sha256-70/rrhZw+02JJbJ3CoW8B1GbdM4Lwb2WkUdwstYAoIQ=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/6b3b279bd670c6a2fa23c9049820c814f0e2c846.patch";
|
||||
sha256 = "sha256-7WqklSvLirEuxTXTIMQDQhWpXnwMseJ1RumT+faq/Y8=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/67a71e3b71a2834d028031a92e76eb9444e423c6.patch";
|
||||
sha256 = "sha256-COFm/SwfJSoSl9YDpL6ceAE8CcE4mGhsGxw1HMuL++o=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/38d7fd68b0c8775b5253ab84367419621aa032e6.patch";
|
||||
sha256 = "sha256-iwGIzq9FWW6zpbDg/IKrp5OZpK9cgQqTRWWq8WBIHRQ=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/57b3910bc3513ab515296692daafd1c546f3c115.patch";
|
||||
sha256 = "sha256-ybl9+umZAcQKHYL7NkGJQC0W7bccTagA9KQiFaR2LYA=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/b5989326f558faedd2511f29459112cced2ca8f5.patch";
|
||||
sha256 = "sha256-s+O9eCgj2Ev+INjL9LY9MJBdISIdZLslI3lue2DICGM=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/029ed1bd9defa33a80bb40cdcd003699299af8db.patch";
|
||||
sha256 = "sha256-mGqcRWcEibDJdhTRrN7ZWrMuCfUWW8vWiFj7sb2/RYo=";
|
||||
})
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/d3671fd972cd185a6923433aa4802f54d8b62112.patch";
|
||||
sha256 = "sha256-GUh5o7mbFTm/dm6CqcGdoMlC+YrV8RlcEwu/mxrfTzo=";
|
||||
})
|
||||
./allow-virtfs-on-darwin.patch
|
||||
# QEMU upstream does not demand compatibility to pre-10.13, so 9p-darwin
|
||||
# support on nix requires utimensat fallback. The patch adding this fallback
|
||||
# set was removed during the process of upstreaming this functionality, and
|
||||
# will still be needed in nix until the macOS SDK reaches 10.13+.
|
||||
./provide-fallback-for-utimensat.patch
|
||||
# Still needed indefinitely
|
||||
./9p-ignore-noatime.patch
|
||||
]
|
||||
++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
|
||||
|
||||
postPatch = ''
|
||||
# Otherwise tries to ensure /var/run exists.
|
||||
|
|
|
@ -0,0 +1,190 @@
|
|||
From 70328c307001f4bb75d30d93c5bba3c3cd790c88 Mon Sep 17 00:00:00 2001
|
||||
From: Keno Fischer <keno@juliacomputing.com>
|
||||
Date: Sat, 16 Jun 2018 20:56:54 -0400
|
||||
Subject: [PATCH] 9p: darwin: Provide fallback impl for utimensat
|
||||
|
||||
This function is new in Mac OS 10.13. Provide a fallback implementation
|
||||
when building against older SDKs. The complication in the definition comes
|
||||
having to separately handle the used SDK version and the target OS version.
|
||||
|
||||
- If the SDK version is too low (__MAC_10_13 not defined), utimensat is not
|
||||
defined in the header, so we must not try to use it (doing so would error).
|
||||
- Otherwise, if the targetted OS version is at least 10.13, we know this
|
||||
function is available, so we can unconditionally call it.
|
||||
- Lastly, we check for the availability of the __builtin_available macro to
|
||||
potentially insert a dynamic check for this OS version. However, __builtin_available
|
||||
is only available with sufficiently recent versions of clang and while all
|
||||
Apple clang versions that ship with Xcode versions that support the 10.13
|
||||
SDK support with builtin, we want to allow building with compilers other
|
||||
than Apple clang that may not support this builtin.
|
||||
|
||||
Signed-off-by: Keno Fischer <keno@juliacomputing.com>
|
||||
Signed-off-by: Michael Roitzsch <reactorcontrol@icloud.com>
|
||||
Signed-off-by: Will Cohen <wwcohen@gmail.com>
|
||||
---
|
||||
hw/9pfs/9p-local.c | 2 +-
|
||||
hw/9pfs/9p-util-darwin.c | 96 ++++++++++++++++++++++++++++++++++++++++
|
||||
hw/9pfs/9p-util-linux.c | 6 +++
|
||||
hw/9pfs/9p-util.h | 8 ++++
|
||||
4 files changed, 111 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c
|
||||
index d42ce6d8b8..b2c1fa42e1 100644
|
||||
--- a/hw/9pfs/9p-local.c
|
||||
+++ b/hw/9pfs/9p-local.c
|
||||
@@ -1085,7 +1085,7 @@ static int local_utimensat(FsContext *s, V9fsPath *fs_path,
|
||||
goto out;
|
||||
}
|
||||
|
||||
- ret = utimensat(dirfd, name, buf, AT_SYMLINK_NOFOLLOW);
|
||||
+ ret = utimensat_nofollow(dirfd, name, buf);
|
||||
close_preserve_errno(dirfd);
|
||||
out:
|
||||
g_free(dirpath);
|
||||
diff --git a/hw/9pfs/9p-util-darwin.c b/hw/9pfs/9p-util-darwin.c
|
||||
index bec0253474..2fc0475292 100644
|
||||
--- a/hw/9pfs/9p-util-darwin.c
|
||||
+++ b/hw/9pfs/9p-util-darwin.c
|
||||
@@ -95,3 +95,99 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev)
|
||||
}
|
||||
|
||||
#endif
|
||||
+
|
||||
+#ifndef __has_builtin
|
||||
+#define __has_builtin(x) 0
|
||||
+#endif
|
||||
+
|
||||
+static int update_times_from_stat(int fd, struct timespec times[2],
|
||||
+ int update0, int update1)
|
||||
+{
|
||||
+ struct stat buf;
|
||||
+ int ret = fstat(fd, &buf);
|
||||
+ if (ret == -1) {
|
||||
+ return ret;
|
||||
+ }
|
||||
+ if (update0) {
|
||||
+ times[0] = buf.st_atimespec;
|
||||
+ }
|
||||
+ if (update1) {
|
||||
+ times[1] = buf.st_mtimespec;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+int utimensat_nofollow(int dirfd, const char *filename,
|
||||
+ const struct timespec times_in[2])
|
||||
+{
|
||||
+ int ret, fd;
|
||||
+ int special0, special1;
|
||||
+ struct timeval futimes_buf[2];
|
||||
+ struct timespec times[2];
|
||||
+ memcpy(times, times_in, 2 * sizeof(struct timespec));
|
||||
+
|
||||
+/* Check whether we have an SDK version that defines utimensat */
|
||||
+#if defined(__MAC_10_13)
|
||||
+# if __MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_13
|
||||
+# define UTIMENSAT_AVAILABLE 1
|
||||
+# elif __has_builtin(__builtin_available)
|
||||
+# define UTIMENSAT_AVAILABLE __builtin_available(macos 10.13, *)
|
||||
+# else
|
||||
+# define UTIMENSAT_AVAILABLE 0
|
||||
+# endif
|
||||
+ if (UTIMENSAT_AVAILABLE) {
|
||||
+ return utimensat(dirfd, filename, times, AT_SYMLINK_NOFOLLOW);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
+ /* utimensat not available. Use futimes. */
|
||||
+ fd = openat_file(dirfd, filename, O_PATH_9P_UTIL | O_NOFOLLOW, 0);
|
||||
+ if (fd == -1) {
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ special0 = times[0].tv_nsec == UTIME_OMIT;
|
||||
+ special1 = times[1].tv_nsec == UTIME_OMIT;
|
||||
+ if (special0 || special1) {
|
||||
+ /* If both are set, nothing to do */
|
||||
+ if (special0 && special1) {
|
||||
+ ret = 0;
|
||||
+ goto done;
|
||||
+ }
|
||||
+
|
||||
+ ret = update_times_from_stat(fd, times, special0, special1);
|
||||
+ if (ret < 0) {
|
||||
+ goto done;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ special0 = times[0].tv_nsec == UTIME_NOW;
|
||||
+ special1 = times[1].tv_nsec == UTIME_NOW;
|
||||
+ if (special0 || special1) {
|
||||
+ ret = futimes(fd, NULL);
|
||||
+ if (ret < 0) {
|
||||
+ goto done;
|
||||
+ }
|
||||
+
|
||||
+ /* If both are set, we are done */
|
||||
+ if (special0 && special1) {
|
||||
+ ret = 0;
|
||||
+ goto done;
|
||||
+ }
|
||||
+
|
||||
+ ret = update_times_from_stat(fd, times, special0, special1);
|
||||
+ if (ret < 0) {
|
||||
+ goto done;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ futimes_buf[0].tv_sec = times[0].tv_sec;
|
||||
+ futimes_buf[0].tv_usec = times[0].tv_nsec / 1000;
|
||||
+ futimes_buf[1].tv_sec = times[1].tv_sec;
|
||||
+ futimes_buf[1].tv_usec = times[1].tv_nsec / 1000;
|
||||
+ ret = futimes(fd, futimes_buf);
|
||||
+
|
||||
+done:
|
||||
+ close_preserve_errno(fd);
|
||||
+ return ret;
|
||||
+}
|
||||
diff --git a/hw/9pfs/9p-util-linux.c b/hw/9pfs/9p-util-linux.c
|
||||
index db451b0784..320697f347 100644
|
||||
--- a/hw/9pfs/9p-util-linux.c
|
||||
+++ b/hw/9pfs/9p-util-linux.c
|
||||
@@ -68,3 +68,9 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev)
|
||||
{
|
||||
return mknodat(dirfd, filename, mode, dev);
|
||||
}
|
||||
+
|
||||
+int utimensat_nofollow(int dirfd, const char *filename,
|
||||
+ const struct timespec times[2])
|
||||
+{
|
||||
+ return utimensat(dirfd, filename, times, AT_SYMLINK_NOFOLLOW);
|
||||
+}
|
||||
diff --git a/hw/9pfs/9p-util.h b/hw/9pfs/9p-util.h
|
||||
index 1f74d37558..a4b002d1b5 100644
|
||||
--- a/hw/9pfs/9p-util.h
|
||||
+++ b/hw/9pfs/9p-util.h
|
||||
@@ -36,6 +36,12 @@ static inline int qemu_lsetxattr(const char *path, const char *name,
|
||||
#define qemu_lsetxattr lsetxattr
|
||||
#endif
|
||||
|
||||
+/* Compatibility with old SDK Versions for Darwin */
|
||||
+#if defined(CONFIG_DARWIN) && !defined(UTIME_NOW)
|
||||
+#define UTIME_NOW -1
|
||||
+#define UTIME_OMIT -2
|
||||
+#endif
|
||||
+
|
||||
static inline void close_preserve_errno(int fd)
|
||||
{
|
||||
int serrno = errno;
|
||||
@@ -96,6 +102,8 @@ ssize_t flistxattrat_nofollow(int dirfd, const char *filename,
|
||||
char *list, size_t size);
|
||||
ssize_t fremovexattrat_nofollow(int dirfd, const char *filename,
|
||||
const char *name);
|
||||
+int utimensat_nofollow(int dirfd, const char *filename,
|
||||
+ const struct timespec times[2]);
|
||||
|
||||
/**
|
||||
* Darwin has d_seekoff, which appears to function similarly to d_off.
|
||||
--
|
||||
2.35.1
|
||||
|
54
pkgs/applications/virtualization/qemu/rename-9p-util.patch
Normal file
54
pkgs/applications/virtualization/qemu/rename-9p-util.patch
Normal file
|
@ -0,0 +1,54 @@
|
|||
From 011b121d7f84c8974f03a81582cf1107249245bb Mon Sep 17 00:00:00 2001
|
||||
From: Keno Fischer <keno@juliacomputing.com>
|
||||
Date: Sun, 27 Feb 2022 17:35:13 -0500
|
||||
Subject: [PATCH] 9p: Rename 9p-util -> 9p-util-linux
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The current file only has the Linux versions of these functions.
|
||||
Rename the file accordingly and update the Makefile to only build
|
||||
it on Linux. A Darwin version of these will follow later in the
|
||||
series.
|
||||
|
||||
Signed-off-by: Keno Fischer <keno@juliacomputing.com>
|
||||
[Michael Roitzsch: - Rebase for NixOS]
|
||||
Signed-off-by: Michael Roitzsch <reactorcontrol@icloud.com>
|
||||
Signed-off-by: Will Cohen <wwcohen@gmail.com>
|
||||
Reviewed-by: Greg Kurz <groug@kaod.org>
|
||||
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
|
||||
Message-Id: <20220227223522.91937-3-wwcohen@gmail.com>
|
||||
Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
|
||||
---
|
||||
hw/9pfs/{9p-util.c => 9p-util-linux.c} | 0
|
||||
hw/9pfs/meson.build | 2 +-
|
||||
2 files changed, 1 insertion(+), 1 deletion(-)
|
||||
rename hw/9pfs/{9p-util.c => 9p-util-linux.c} (100%)
|
||||
|
||||
diff --git a/hw/9pfs/9p-util.c b/hw/9pfs/9p-util-linux.c
|
||||
similarity index 100%
|
||||
rename from hw/9pfs/9p-util.c
|
||||
rename to hw/9pfs/9p-util-linux.c
|
||||
diff --git a/hw/9pfs/meson.build b/hw/9pfs/meson.build
|
||||
index 99be5d9119..1b28e70040 100644
|
||||
--- a/hw/9pfs/meson.build
|
||||
+++ b/hw/9pfs/meson.build
|
||||
@@ -4,7 +4,6 @@ fs_ss.add(files(
|
||||
'9p-posix-acl.c',
|
||||
'9p-proxy.c',
|
||||
'9p-synth.c',
|
||||
- '9p-util.c',
|
||||
'9p-xattr-user.c',
|
||||
'9p-xattr.c',
|
||||
'9p.c',
|
||||
@@ -14,6 +13,7 @@ fs_ss.add(files(
|
||||
'coth.c',
|
||||
'coxattr.c',
|
||||
))
|
||||
+fs_ss.add(when: 'CONFIG_LINUX', if_true: files('9p-util-linux.c'))
|
||||
fs_ss.add(when: 'CONFIG_XEN', if_true: files('xen-9p-backend.c'))
|
||||
softmmu_ss.add_all(when: 'CONFIG_FSDEV_9P', if_true: fs_ss)
|
||||
|
||||
--
|
||||
2.35.1
|
||||
|
|
@ -69,4 +69,7 @@ in
|
|||
name = "${unwrapped.pname}-${unwrapped.version}";
|
||||
# export underlying qtile package
|
||||
passthru = { inherit unwrapped; };
|
||||
|
||||
# restore original qtile attrs
|
||||
inherit (unwrapped) pname version meta;
|
||||
})
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
, systemdSupport ? stdenv.isLinux
|
||||
, dbusSupport ? true
|
||||
, dbus
|
||||
, trayEnabled ? dbusSupport
|
||||
, trayEnabled ? systemdSupport && dbusSupport
|
||||
}:
|
||||
|
||||
# The "sd-bus-provider" meson option does not include a "none" option,
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
let
|
||||
# FIXME: workaround until https://github.com/NixOS/nixpkgs/pull/162246 lands
|
||||
cleanName = if lib.hasInfix " " name
|
||||
then throw "Name must not contain spaces!"
|
||||
then throw "makeDesktopItem: name must not contain spaces!"
|
||||
else name;
|
||||
|
||||
# There are multiple places in the FDO spec that make "boolean" values actually tristate,
|
||||
|
@ -45,13 +45,13 @@ let
|
|||
boolOrNullToString = value:
|
||||
if value == null then null
|
||||
else if builtins.isBool value then lib.boolToString value
|
||||
else throw "Value must be a boolean or null!";
|
||||
else throw "makeDesktopItem: value must be a boolean or null!";
|
||||
|
||||
# Multiple values are represented as one string, joined by semicolons.
|
||||
# Technically, it's possible to escape semicolons in values with \;, but this is currently not implemented.
|
||||
renderList = value:
|
||||
if !builtins.isList value then throw "Value must be a list!"
|
||||
else if builtins.any (item: lib.hasInfix ";" item) value then throw "Values in list must not contain semicolons!"
|
||||
renderList = key: value:
|
||||
if !builtins.isList value then throw "makeDesktopItem: value for ${key} must be a list!"
|
||||
else if builtins.any (item: lib.hasInfix ";" item) value then throw "makeDesktopItem: values in ${key} list must not contain semicolons!"
|
||||
else if value == [] then null
|
||||
else builtins.concatStringsSep ";" value;
|
||||
|
||||
|
@ -65,18 +65,18 @@ let
|
|||
"NoDisplay" = boolOrNullToString noDisplay;
|
||||
"Comment" = comment;
|
||||
"Icon" = icon;
|
||||
"OnlyShowIn" = renderList onlyShowIn;
|
||||
"NotShowIn" = renderList notShowIn;
|
||||
"OnlyShowIn" = renderList "onlyShowIn" onlyShowIn;
|
||||
"NotShowIn" = renderList "notShowIn" notShowIn;
|
||||
"DBusActivatable" = boolOrNullToString dbusActivatable;
|
||||
"TryExec" = tryExec;
|
||||
"Exec" = exec;
|
||||
"Path" = path;
|
||||
"Terminal" = boolOrNullToString terminal;
|
||||
"Actions" = renderList (builtins.attrNames actions);
|
||||
"MimeType" = renderList mimeTypes;
|
||||
"Categories" = renderList categories;
|
||||
"Implements" = renderList implements;
|
||||
"Keywords" = renderList keywords;
|
||||
"Actions" = renderList "actions" (builtins.attrNames actions);
|
||||
"MimeType" = renderList "mimeTypes" mimeTypes;
|
||||
"Categories" = renderList "categories" categories;
|
||||
"Implements" = renderList "implements" implements;
|
||||
"Keywords" = renderList "keywords" keywords;
|
||||
"StartupNotify" = boolOrNullToString startupNotify;
|
||||
"StartupWMClass" = startupWMClass;
|
||||
"URL" = url;
|
||||
|
|
|
@ -16,13 +16,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "yaru";
|
||||
version = "21.10.2";
|
||||
version = "22.04.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ubuntu";
|
||||
repo = "yaru";
|
||||
rev = version;
|
||||
sha256 = "sha256-VN/jgKGM2Th+2nv91vEz47kmQiBx8xAiEVbtXwhZg6U=";
|
||||
sha256 = "sha256-5mB5eTIPw4CqYSQm675MKbRwsYLpg+5WJrLDkbc6nKs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson sassc pkg-config glib ninja python3 ];
|
||||
|
|
|
@ -33,7 +33,7 @@ buildType = if stdenv.isDarwin then
|
|||
|
||||
edk2 = buildStdenv.mkDerivation {
|
||||
pname = "edk2";
|
||||
version = "202108";
|
||||
version = "202202";
|
||||
|
||||
# submodules
|
||||
src = fetchFromGitHub {
|
||||
|
@ -41,21 +41,9 @@ edk2 = buildStdenv.mkDerivation {
|
|||
repo = "edk2";
|
||||
rev = "edk2-stable${edk2.version}";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "1ps244f7y43afxxw6z95xscy24f9mpp8g0mfn90rd4229f193ba2";
|
||||
sha256 = "0srmhi6c27n5vyl01nhh0fq8k4vngbwn79siyjvcacjbj2ivhh8d";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Pull upstream fix for gcc-11 build.
|
||||
(fetchpatch {
|
||||
name = "gcc-11-vla.patch";
|
||||
url = "https://github.com/google/brotli/commit/0a3944c8c99b8d10cc4325f721b7c273d2b41f7b.patch";
|
||||
sha256 = "10c6ibnxh4f8lrh9i498nywgva32jxy2c1zzvr9mcqgblf9d19pj";
|
||||
# Apply submodule patch to subdirectory: "a/" -> "BaseTools/Source/C/BrotliCompress/brotli/"
|
||||
stripLen = 1;
|
||||
extraPrefix = "BaseTools/Source/C/BrotliCompress/brotli/";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs = [ libuuid pythonEnv ];
|
||||
|
||||
makeFlags = [ "-C BaseTools" ]
|
||||
|
@ -75,7 +63,7 @@ edk2 = buildStdenv.mkDerivation {
|
|||
|
||||
meta = with lib; {
|
||||
description = "Intel EFI development kit";
|
||||
homepage = "https://sourceforge.net/projects/edk2/";
|
||||
homepage = "https://github.com/tianocore/tianocore.github.io/wiki/EDK-II/";
|
||||
license = licenses.bsd2;
|
||||
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" "x86_64-darwin" ];
|
||||
};
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gleam";
|
||||
version = "0.19.0";
|
||||
version = "0.20.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gleam-lang";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-pJ4RSijuwdKAL24WzcDIQen1RGofN1tUlbAA18zUvBE=";
|
||||
sha256 = "sha256-AK+eb0eJyI7ALn7sg0wz4GzHthxrJWd1PVT5bL9LKWA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
|
|||
buildInputs = [ openssl ] ++
|
||||
lib.optionals stdenv.isDarwin [ Security libiconv ];
|
||||
|
||||
cargoSha256 = "sha256-f/6LdvKRykpBX2GlRuyUcSD719f6XzhbMHzhrGNU0Cg=";
|
||||
cargoSha256 = "sha256-kFTAPbP42sbhsvP069ua0ys1Dw7W+Gdsv2YaGrzorIk=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A statically typed language for the Erlang VM";
|
||||
|
|
|
@ -14,27 +14,31 @@
|
|||
, glib
|
||||
, xapian
|
||||
, libxml2
|
||||
, libxmlb
|
||||
, libyaml
|
||||
, gobject-introspection
|
||||
, pcre
|
||||
, itstool
|
||||
, gperf
|
||||
, vala
|
||||
, lmdb
|
||||
, curl
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "appstream";
|
||||
version = "0.14.4";
|
||||
version = "0.15.2";
|
||||
# When bumping this package, please also check whether
|
||||
# fix-build-for-qt-olderthan-514.patch still applies by
|
||||
# building libsForQt512.appstream-qt.
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
outputs = [ "out" "dev" "installedTests" ];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ximion";
|
||||
repo = "appstream";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-DJXCw50f+8c58bJw6xx0ECfkc9/KcWaeA+ne2zmTyhg=";
|
||||
sha256 = "sha256-/JZ49wjtcInbGUOVVjevVSrLCHcA60FMT165rhfb78Q=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -43,6 +47,9 @@ stdenv.mkDerivation rec {
|
|||
src = ./fix-paths.patch;
|
||||
libstemmer_includedir = "${lib.getDev libstemmer}/include";
|
||||
})
|
||||
|
||||
# Allow installing installed tests to a separate output.
|
||||
./installed-tests-path.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -65,9 +72,9 @@ stdenv.mkDerivation rec {
|
|||
glib
|
||||
xapian
|
||||
libxml2
|
||||
libxmlb
|
||||
libyaml
|
||||
gperf
|
||||
lmdb
|
||||
curl
|
||||
];
|
||||
|
||||
|
@ -75,8 +82,15 @@ stdenv.mkDerivation rec {
|
|||
"-Dapidocs=false"
|
||||
"-Ddocs=false"
|
||||
"-Dvapi=true"
|
||||
"-Dinstalled_test_prefix=${placeholder "installedTests"}"
|
||||
];
|
||||
|
||||
passthru = {
|
||||
tests = {
|
||||
installed-tests = nixosTests.installed-tests.appstream;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Software metadata handling library";
|
||||
homepage = "https://www.freedesktop.org/wiki/Distributions/AppStream/";
|
||||
|
@ -88,5 +102,5 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
license = licenses.lgpl21Plus;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
diff --git a/qt/component.h b/qt/component.h
|
||||
index 47abd1f3..74de943c 100644
|
||||
--- a/qt/component.h
|
||||
+++ b/qt/component.h
|
||||
@@ -90,7 +90,7 @@ class APPSTREAMQT_EXPORT Component {
|
||||
UrlKindContact,
|
||||
|
||||
// deprecated
|
||||
- UrlTranslate [[deprecated]] = UrlKindTranslate,
|
||||
+ UrlTranslate = UrlKindTranslate,
|
||||
};
|
||||
Q_ENUM(UrlKind)
|
||||
|
||||
diff --git a/qt/pool.h b/qt/pool.h
|
||||
index b59829b7..5237f613 100644
|
||||
--- a/qt/pool.h
|
||||
+++ b/qt/pool.h
|
||||
@@ -70,9 +70,9 @@ public:
|
||||
FlagMonitor = 1 << 7,
|
||||
|
||||
// deprecated
|
||||
- FlagReadCollection [[deprecated]] = FlagLoadOsCollection,
|
||||
- FlagReadMetainfo [[deprecated]] = FlagLoadOsMetainfo,
|
||||
- FlagReadDesktopFiles [[deprecated]] = FlagLoadOsDesktopFiles,
|
||||
+ FlagReadCollection = FlagLoadOsCollection,
|
||||
+ FlagReadMetainfo = FlagLoadOsMetainfo,
|
||||
+ FlagReadDesktopFiles = FlagLoadOsDesktopFiles,
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -84,9 +84,9 @@ public:
|
||||
* Flags on how caching should be used.
|
||||
**/
|
||||
enum CacheFlags {
|
||||
- CacheFlagNone [[deprecated]] = 0,
|
||||
- CacheFlagUseUser [[deprecated]] = 1 << 0,
|
||||
- CacheFlagUseSystem [[deprecated]] = 1 << 1,
|
||||
+ CacheFlagNone = 0,
|
||||
+ CacheFlagUseUser = 1 << 0,
|
||||
+ CacheFlagUseSystem = 1 << 1,
|
||||
};
|
||||
|
||||
/**
|
|
@ -1,18 +1,21 @@
|
|||
diff --git a/data/meson.build b/data/meson.build
|
||||
index 1eb3dfb0..623b66ec 100644
|
||||
index 53f31cb4..90f40e77 100644
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -26,4 +26,4 @@ i18n.merge_file (
|
||||
@@ -68,7 +68,7 @@ test('as-validate_metainfo.cli',
|
||||
)
|
||||
|
||||
install_data ('appstream.conf',
|
||||
- install_dir: get_option('sysconfdir'))
|
||||
+ install_dir: get_option('prefix') / 'etc')
|
||||
install_data('appstream.conf',
|
||||
- install_dir: get_option('sysconfdir'))
|
||||
+ install_dir: get_option('prefix') / 'etc')
|
||||
|
||||
if get_option('compose')
|
||||
ascompose_metainfo = 'org.freedesktop.appstream.compose.metainfo.xml'
|
||||
diff --git a/meson.build b/meson.build
|
||||
index dc1fb1a5..5ee03b73 100644
|
||||
index 2efe86b7..9dc79e28 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -108,12 +108,12 @@ if get_option ('gir')
|
||||
@@ -107,12 +107,12 @@ if get_option ('gir')
|
||||
dependency('gobject-introspection-1.0', version: '>=1.56')
|
||||
endif
|
||||
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 8dd8e0c7..e2a30b06 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -44,6 +44,11 @@ option('install-docs',
|
||||
value : true,
|
||||
description : 'Install documentation for API and specification'
|
||||
)
|
||||
+option('installed_test_prefix',
|
||||
+ type : 'string',
|
||||
+ value : '',
|
||||
+ description : 'Prefix for installed tests'
|
||||
+)
|
||||
|
||||
#
|
||||
# For development
|
||||
diff --git a/tests/installed-tests/meson.build b/tests/installed-tests/meson.build
|
||||
index 405820ce..f592a753 100644
|
||||
--- a/tests/installed-tests/meson.build
|
||||
+++ b/tests/installed-tests/meson.build
|
||||
@@ -10,5 +10,5 @@ configure_file(
|
||||
output : 'metainfo-validate.test',
|
||||
configuration : itconf,
|
||||
install: true,
|
||||
- install_dir: join_paths('share', 'installed-tests', 'appstream'),
|
||||
+ install_dir: join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', 'appstream'),
|
||||
)
|
|
@ -1,12 +1,12 @@
|
|||
{ mkDerivation, appstream, qtbase, qttools }:
|
||||
{ lib, mkDerivation, appstream, qtbase, qttools, nixosTests }:
|
||||
|
||||
# TODO: look into using the libraries from the regular appstream derivation as we keep duplicates here
|
||||
|
||||
mkDerivation {
|
||||
pname = "appstream-qt";
|
||||
inherit (appstream) version src patches;
|
||||
inherit (appstream) version src;
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
outputs = [ "out" "dev" "installedTests" ];
|
||||
|
||||
buildInputs = appstream.buildInputs ++ [ appstream qtbase ];
|
||||
|
||||
|
@ -14,11 +14,26 @@ mkDerivation {
|
|||
|
||||
mesonFlags = appstream.mesonFlags ++ [ "-Dqt=true" ];
|
||||
|
||||
patches = (appstream.patches or []) ++ lib.optionals (lib.versionOlder qtbase.version "5.14") [
|
||||
# Fix darwin build for libsForQt5.appstream-qt
|
||||
# Old Qt moc doesn't know about fancy C++14 features
|
||||
# ../qt/component.h:93: Parse error at "UrlTranslate"
|
||||
# Remove both this patch and related comment in default.nix
|
||||
# once Qt 5.14 or later becomes default on darwin
|
||||
./fix-build-for-qt-olderthan-514.patch
|
||||
];
|
||||
|
||||
postFixup = ''
|
||||
sed -i "$dev/lib/cmake/AppStreamQt/AppStreamQtConfig.cmake" \
|
||||
-e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@"
|
||||
'';
|
||||
|
||||
passthru = appstream.passthru // {
|
||||
tests = {
|
||||
installed-tests = nixosTests.installed-tests.appstream-qt;
|
||||
};
|
||||
};
|
||||
|
||||
meta = appstream.meta // {
|
||||
description = "Software metadata handling library - Qt";
|
||||
};
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, docbook_xml_dtd_43
|
||||
, docbook_xsl
|
||||
, glib
|
||||
|
@ -30,6 +31,13 @@ stdenv.mkDerivation rec {
|
|||
|
||||
patches = [
|
||||
./installed-tests-path.patch
|
||||
# Fix darwin build, can be removed on next release
|
||||
# `--version-script` isn't supported by the macOS linker
|
||||
# https://github.com/hughsie/libxmlb/pull/119
|
||||
(fetchpatch {
|
||||
url = "https://github.com/hughsie/libxmlb/commit/d83aac5bd78cfbbfa2ecd428ff54b811071dfe4d.patch";
|
||||
sha256 = "sha256-UNRMbyNzdxfTZ8xV6J8a622hPnr3mowooP1q8Dg19yw=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -72,6 +80,6 @@ stdenv.mkDerivation rec {
|
|||
homepage = "https://github.com/hughsie/libxmlb";
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = with maintainers; [ jtojnar ];
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ buildDunePackage rec {
|
|||
description = "OCaml binding for the fdk-aac library";
|
||||
inherit (src.meta) homepage;
|
||||
license = lib.licenses.gpl2Only;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
maintainers = [ lib.maintainers.vbgl lib.maintainers.dandellion ];
|
||||
};
|
||||
|
||||
}
|
||||
|
|
21
pkgs/development/ocaml-modules/ffmpeg/base.nix
Normal file
21
pkgs/development/ocaml-modules/ffmpeg/base.nix
Normal file
|
@ -0,0 +1,21 @@
|
|||
{ lib, fetchFromGitHub }:
|
||||
|
||||
rec {
|
||||
version = "1.1.0";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "savonet";
|
||||
repo = "ocaml-ffmpeg";
|
||||
rev = "v${version}";
|
||||
sha256 = "13rc3d0n963a28my5ahv78r82rh450hvbsc74mb6ld0r9v210r0p";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/savonet/ocaml-ffmpeg";
|
||||
description = "Bindings for the ffmpeg libraries";
|
||||
license = licenses.lgpl21Only;
|
||||
maintainers = with maintainers; [ dandellion ];
|
||||
};
|
||||
}
|
36
pkgs/development/ocaml-modules/ffmpeg/default.nix
Normal file
36
pkgs/development/ocaml-modules/ffmpeg/default.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
{ lib, buildDunePackage, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg-avutil
|
||||
, ffmpeg-avcodec
|
||||
, ffmpeg-avfilter
|
||||
, ffmpeg-swscale
|
||||
, ffmpeg-swresample
|
||||
, ffmpeg-av
|
||||
, ffmpeg-avdevice
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
propagatedBuildInputs = [
|
||||
ffmpeg-avutil
|
||||
ffmpeg-avcodec
|
||||
ffmpeg-avfilter
|
||||
ffmpeg-swscale
|
||||
ffmpeg-swresample
|
||||
ffmpeg-av
|
||||
ffmpeg-avdevice
|
||||
];
|
||||
|
||||
# The tests fail
|
||||
doCheck = false;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg libraries";
|
||||
};
|
||||
|
||||
}
|
22
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-av.nix
Normal file
22
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-av.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg-avutil, ffmpeg-avcodec, ffmpeg }:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg-av";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ffmpeg-avutil ffmpeg-avcodec ffmpeg.dev ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg libraries -- top-level helpers";
|
||||
};
|
||||
|
||||
}
|
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avcodec.nix
Normal file
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avcodec.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg-avutil, ffmpeg
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg-avcodec";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ffmpeg-avutil ffmpeg.dev ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg avcodec library";
|
||||
};
|
||||
|
||||
}
|
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avdevice.nix
Normal file
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avdevice.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg-av, ffmpeg
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg-avdevice";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ffmpeg-av ffmpeg.dev ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg avdevice library";
|
||||
};
|
||||
|
||||
}
|
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avfilter.nix
Normal file
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avfilter.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg-avutil, ffmpeg
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg-avfilter";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ffmpeg-avutil ffmpeg.dev ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg avfilter library";
|
||||
};
|
||||
|
||||
}
|
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avutil.nix
Normal file
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avutil.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg-avutil";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ffmpeg.dev ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg avutil libraries";
|
||||
};
|
||||
|
||||
}
|
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swresample.nix
Normal file
23
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swresample.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg-avutil, ffmpeg-avcodec, ffmpeg
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg-swresample";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ffmpeg-avutil ffmpeg-avcodec ffmpeg.dev ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg swresample library";
|
||||
};
|
||||
|
||||
}
|
22
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swscale.nix
Normal file
22
pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swscale.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage
|
||||
, ffmpeg-base ? callPackage ./base.nix { }
|
||||
, ffmpeg-avutil, ffmpeg
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ffmpeg-swscale";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
inherit (ffmpeg-base) version src useDune2;
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ffmpeg-avutil ffmpeg.dev ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = ffmpeg-base.meta // {
|
||||
description = "Bindings for the ffmpeg swscale library";
|
||||
};
|
||||
}
|
26
pkgs/development/ocaml-modules/flac/default.nix
Normal file
26
pkgs/development/ocaml-modules/flac/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, pkg-config, ogg, flac }:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "flac";
|
||||
version = "0.3.0";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "savonet";
|
||||
repo = "ocaml-flac";
|
||||
rev = "v${version}";
|
||||
sha256 = "06gfbrp30sdxigzkix83y1b610ljzik6rrxmbl3ppmpx4dqlwnxa";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ogg flac.dev ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/savonet/ocaml-flac";
|
||||
description = "Bindings for flac";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ dandellion ];
|
||||
};
|
||||
}
|
25
pkgs/development/ocaml-modules/ogg/default.nix
Normal file
25
pkgs/development/ocaml-modules/ogg/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, libogg }:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "ogg";
|
||||
version = "0.7.1";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "savonet";
|
||||
repo = "ocaml-ogg";
|
||||
rev = "v${version}";
|
||||
sha256 = "0z3z0816rxq8wdjw51plzn8lmilic621ilk4x9wpnr0axmnl3wqb";
|
||||
};
|
||||
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ libogg ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/savonet/ocaml-ogg";
|
||||
description = "Bindings to libogg";
|
||||
license = licenses.lgpl21Only;
|
||||
maintainers = with maintainers; [ dandellion ];
|
||||
};
|
||||
}
|
26
pkgs/development/ocaml-modules/opus/default.nix
Normal file
26
pkgs/development/ocaml-modules/opus/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, pkg-config, ogg, libopus }:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "opus";
|
||||
version = "0.2.1";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "savonet";
|
||||
repo = "ocaml-opus";
|
||||
rev = "v${version}";
|
||||
sha256 = "09mgnprhhs1adqm25c0qjhknswbh6va3jknq06fnp1jszszcjf4s";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ogg libopus.dev ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/savonet/ocaml-opus";
|
||||
description = "Bindings to libopus";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ dandellion ];
|
||||
};
|
||||
}
|
25
pkgs/development/ocaml-modules/speex/default.nix
Normal file
25
pkgs/development/ocaml-modules/speex/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ogg, speex }:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "speex";
|
||||
version = "0.4.1";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "savonet";
|
||||
repo = "ocaml-speex";
|
||||
rev = "v${version}";
|
||||
sha256 = "0p4ip37kihlz9qy604llak2kzd00g45ix1yiihnrri2nm01scfab";
|
||||
};
|
||||
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ogg speex.dev ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/savonet/ocaml-speex";
|
||||
description = "Bindings to libspeex";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ dandellion ];
|
||||
};
|
||||
}
|
|
@ -24,6 +24,7 @@ buildDunePackage rec {
|
|||
maintainers = [
|
||||
lib.maintainers.maggesi
|
||||
lib.maintainers.anmonteiro
|
||||
lib.maintainers.dandellion
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
25
pkgs/development/ocaml-modules/theora/default.nix
Normal file
25
pkgs/development/ocaml-modules/theora/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ogg, libtheora }:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "theora";
|
||||
version = "0.4.0";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "savonet";
|
||||
repo = "ocaml-theora";
|
||||
rev = "v${version}";
|
||||
sha256 = "1sggjmlrx4idkih1ddfk98cgpasq60haj4ykyqbfs22cmii5gpal";
|
||||
};
|
||||
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ogg libtheora ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/savonet/ocaml-theora";
|
||||
description = "Bindings to libtheora";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ dandellion ];
|
||||
};
|
||||
}
|
25
pkgs/development/ocaml-modules/vorbis/default.nix
Normal file
25
pkgs/development/ocaml-modules/vorbis/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ogg, libvorbis }:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "vorbis";
|
||||
version = "0.8.0";
|
||||
|
||||
useDune2 = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "savonet";
|
||||
repo = "ocaml-vorbis";
|
||||
rev = "v${version}";
|
||||
sha256 = "1acy7yvf2y5dggzxw4vmrpdipakr98si3pw5kxw0mh7livn08al8";
|
||||
};
|
||||
|
||||
buildInputs = [ dune-configurator ];
|
||||
propagatedBuildInputs = [ ogg libvorbis ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/savonet/ocaml-vorbis";
|
||||
description = "Bindings to libvorbis";
|
||||
license = licenses.gpl2Only;
|
||||
maintainers = with maintainers; [ dandellion ];
|
||||
};
|
||||
}
|
|
@ -1,14 +1,14 @@
|
|||
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
||||
let
|
||||
pname = "phing";
|
||||
version = "2.17.1";
|
||||
version = "2.17.2";
|
||||
in
|
||||
mkDerivation {
|
||||
inherit pname version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.phing.info/get/phing-${version}.phar";
|
||||
sha256 = "sha256-Sf2fdy9b1wmXEDA3S4CRksH/DhAIirIy6oekWE1TNjE=";
|
||||
sha256 = "sha256-KDqJdHIqgtar6ofNG4ENRlpRg9XYFeL5YS7Rclh1+PQ=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
||||
let
|
||||
pname = "php-cs-fixer";
|
||||
version = "3.6.0";
|
||||
version = "3.7.0";
|
||||
in
|
||||
mkDerivation {
|
||||
inherit pname version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
|
||||
sha256 = "sha256-sbz8uq6nJ6dEL6FHJ01VTrovaJa8bwQ9Ic+dLr7yPnA=";
|
||||
sha256 = "sha256-a7mKM++0iQm9hQFCDfyR6Jdb9h98YNHmbdQso8BU3WE=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
||||
let
|
||||
pname = "phpstan";
|
||||
version = "1.4.7";
|
||||
version = "1.4.8";
|
||||
in
|
||||
mkDerivation {
|
||||
inherit pname version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
|
||||
sha256 = "sha256-bsSdFfUVQnbDFH8hO1Z9sHA2w7pMHlLEx1hsgDdCUmE=";
|
||||
sha256 = "sha256-ghXyPo9n2oXAz7BvuvBYjyJnUqf/FvNk8nTPIRv19cw=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
|
|
@ -6,12 +6,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "azure-synapse-artifacts";
|
||||
version = "0.11.0";
|
||||
version = "0.12.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
extension = "zip";
|
||||
sha256 = "79eb973280ea89c0e6e2872d8f3f175b172b7438c2e2b9b4e655ae206be705fa";
|
||||
sha256 = "sha256-IfQWsITuThzh+TRgv99JTtcDFY3gMq5PjALkN4mJEZo=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "censys";
|
||||
version = "2.1.2";
|
||||
version = "2.1.3";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
|||
owner = "censys";
|
||||
repo = "censys-python";
|
||||
rev = "v${version}";
|
||||
sha256 = "0qxqd5ip98d6q1d48vcprpr38sa47ky3cr6lprd01nzibdmf2r2d";
|
||||
sha256 = "sha256-Zv3ViOrdQby+7UQrHy6174W2qh1vx21R0yOA7ecr0lU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "emoji";
|
||||
version = "1.6.3";
|
||||
version = "1.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "carpedm20";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-0QOtsHGhqbjaEDpSbUXdE8+u6xzWbrTexx+BAeYwKa8=";
|
||||
sha256 = "sha256-vKQ51RP7uy57vP3dOnHZRSp/Wz+YDzeLUR8JnIELE/I=";
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
|
|
|
@ -16,11 +16,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-asset";
|
||||
version = "3.8.0";
|
||||
version = "3.8.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-4r1F7OgMS3TZdmEgXf5TtY4xv/YWInS6NyY6Ay4l8Ig=";
|
||||
sha256 = "sha256-DvbHQV71hTsWtjN/D1+bHGLSss+UidCZRi3J0zTa07U=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-bigquery-logging";
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "3cdbf4f82199d2ee0d07fa2c75527661fe034130e27e5c05fd070ed615cd7e23";
|
||||
sha256 = "sha256-i8Bh39MnQRQtE4WwDNhHdxFX2bGL6txT+sV8RcvXiZw=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -7,20 +7,32 @@
|
|||
, proto-plus
|
||||
, pytestCheckHook
|
||||
, pytest-asyncio
|
||||
, pythonOlder
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-dataproc";
|
||||
version = "4.0.0";
|
||||
version = "4.0.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-x4ejr6qj5z4yKOx0pIqK13oVzsKj+uQ43Q5VN48jaFQ=";
|
||||
sha256 = "sha256-IAnsz7UxMf3GqaPYPltis0WWPM+IIWwpK1iTSV7Kl5c=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-api-core libcst proto-plus ];
|
||||
propagatedBuildInputs = [
|
||||
google-api-core
|
||||
libcst
|
||||
proto-plus
|
||||
];
|
||||
|
||||
checkInputs = [ mock pytestCheckHook pytest-asyncio ];
|
||||
checkInputs = [
|
||||
mock
|
||||
pytestCheckHook
|
||||
pytest-asyncio
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# requires credentials
|
||||
|
|
|
@ -12,11 +12,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-error-reporting";
|
||||
version = "1.5.0";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-qvhZU7T2fHA2uRyXJjRxqeEAFwShH+TpGwICczgX7Sk=";
|
||||
sha256 = "sha256-7gFpvFxtYneABxW2mOwW1V2E7kobmj0yzV0pxaRhs8c=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -13,11 +13,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-firestore";
|
||||
version = "2.3.4";
|
||||
version = "2.4.0";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-cU4bwfxRAp14qmSTO+8u/APa7clWXqeeyRuEOwUgFuw=";
|
||||
sha256 = "sha256-9+esejwSitfYEkD03KsPiTIKxmYhRxTrgfy3QKqIIO4=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -7,20 +7,32 @@
|
|||
, proto-plus
|
||||
, pytestCheckHook
|
||||
, pytest-asyncio
|
||||
, pythonOlder
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-language";
|
||||
version = "2.4.0";
|
||||
version = "2.4.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-ZqnwvpXfWGEc+yiImNGRGUXVJGiNzGFeMSmjn7MzuQE=";
|
||||
sha256 = "sha256-BhQQ4QZ7GbacjpLLg5LXm1g5IhIMk3tJdDrHZLquuTk=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-api-core libcst proto-plus ];
|
||||
propagatedBuildInputs = [
|
||||
google-api-core
|
||||
libcst
|
||||
proto-plus
|
||||
];
|
||||
|
||||
checkInputs = [ mock pytestCheckHook pytest-asyncio ];
|
||||
checkInputs = [
|
||||
mock
|
||||
pytestCheckHook
|
||||
pytest-asyncio
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"google.cloud.language"
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-org-policy";
|
||||
version = "1.3.0";
|
||||
version = "1.3.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-IbQP2/XMdwzmY3UgINiUvdd1Y1ABJkhh7x7x3kiR4Is=";
|
||||
sha256 = "sha256-r9qz2/HjDYHXu9jY03rt0QC1BofzQ/HrKVjGCtvXzsU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-api-core proto-plus ];
|
||||
|
|
|
@ -11,11 +11,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-texttospeech";
|
||||
version = "2.10.1";
|
||||
version = "2.10.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-5uFtHqZJgouUBgkGNqSBFQrWaU2Gm06icDjKx57HY94=";
|
||||
sha256 = "sha256-EykIDxoO8ePp4hLtINTz/RahfS4KU7GhwS4gkMBA32w=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ libcst google-api-core proto-plus ];
|
||||
|
|
|
@ -12,11 +12,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-trace";
|
||||
version = "1.6.0";
|
||||
version = "1.6.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-MXbuSWVezxsXGrRgGqhLWFF5iByiYRKA1/qbqYawPRQ=";
|
||||
sha256 = "sha256-JkKW9vJAAkw3sHYDapRvu5jjunV8oWSg/ykDmd1wpyA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-api-core google-cloud-core proto-plus ];
|
||||
|
|
|
@ -14,14 +14,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-cloud-translate";
|
||||
version = "3.7.1";
|
||||
version = "3.7.2";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-x4gSLVNo2uk93GWpvcPM20f0gJ1S3x/BVe13oNIpa0Y=";
|
||||
hash = "sha256-icZG33G/noii9V0rsHTG/Qe8cKDVDfASRKy2XRYM5Yg=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -12,11 +12,11 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-resumable-media";
|
||||
version = "2.3.1";
|
||||
version = "2.3.2";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-H02LFRlnZv34qGD9LPqmGEE4cH7F+SHNGDQGel39Lbc=";
|
||||
sha256 = "sha256-BpJOix558VjwIC590VGtdbDqnVm5l8hQ9WvdSlo2FRM=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ google-auth google-crc32c requests ];
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "meshtastic";
|
||||
version = "1.2.88";
|
||||
version = "1.2.90";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
|||
owner = "meshtastic";
|
||||
repo = "Meshtastic-python";
|
||||
rev = version;
|
||||
sha256 = "sha256-iNDS1QjlDiXb89g7Gut+5ShbgtCCHBSJuQmXfHaTXB8=";
|
||||
sha256 = "sha256-n/M1Q6YS3EkUcn45ffiTy0wuj9yKf6qBLLfD2XJkhHU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -9,14 +9,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "plaid-python";
|
||||
version = "9.0.0";
|
||||
version = "9.1.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-jZRfJVBSUOrfaPx8yGCwigfDghUgO0dK8aUKrOf9G1E=";
|
||||
hash = "sha256-jvg/2dL+W4N7rbbBcIUZUrSt0BCV15k4QgYST2lEA5U=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -15,7 +15,7 @@ buildPythonPackage rec {
|
|||
propagatedBuildInputs = [ numpy mpi4py precice ];
|
||||
|
||||
doCheck = false; # Disable Test because everything depends on open mpi which requires network.
|
||||
pythonImportChecks = [ "precice" ];
|
||||
# Do not use pythonImportsCheck because this will also initialize mpi which requires a network interface
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python language bindings for preCICE";
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "radios";
|
||||
version = "0.1.0";
|
||||
version = "0.1.1";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
|
||||
|
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
|||
owner = "frenck";
|
||||
repo = "python-radios";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-3xRtOGY9DYnZN0g95213vWDbO3/XZZ5+s7A9sqNmO/w=";
|
||||
hash = "sha256-NCBch9MCWVD6ez0sIUph8rwOOzEMZtwC4atXJe53xZM=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "sphinxext-opengraph";
|
||||
version = "0.6.1";
|
||||
version = "0.6.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wpilibsuite";
|
||||
repo = "sphinxext-opengraph";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-kaKOKeztP89SLF4yrUFW1TTAEyAaCTm2XCcOH0b+Dzc=";
|
||||
sha256 = "sha256-3bZFFtGW6j/3m/3F4+tapZujzpMZnrIcYTngDCNGylI=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "types-setuptools";
|
||||
version = "57.4.9";
|
||||
version = "57.4.10";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-U273R0T44eS+T8cZiH+IbnTkzzx5K0oGmEMgvk30ULU=";
|
||||
sha256 = "sha256-mhNRNnnGQPZhbi2atQ1DHJnKiumEipckP4h8gP1c8pQ=";
|
||||
};
|
||||
|
||||
# Module doesn't have tests
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, runCommand, ruby, lib, rsync
|
||||
, defaultGemConfig, buildRubyGem, buildEnv
|
||||
, makeWrapper
|
||||
, makeBinaryWrapper
|
||||
, bundler
|
||||
}@defs:
|
||||
|
||||
|
@ -118,9 +118,12 @@ let
|
|||
|
||||
wrappedRuby = stdenv.mkDerivation {
|
||||
name = "wrapped-ruby-${pname'}";
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
inherit (ruby) gemPath meta;
|
||||
buildCommand = ''
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
buildPhase = ''
|
||||
mkdir -p $out/bin
|
||||
for i in ${ruby}/bin/*; do
|
||||
makeWrapper "$i" $out/bin/$(basename "$i") \
|
||||
|
@ -131,6 +134,15 @@ let
|
|||
--set GEM_PATH ${basicEnv}/${ruby.gemPath}
|
||||
done
|
||||
'';
|
||||
|
||||
dontInstall = true;
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = ''
|
||||
$out/bin/ruby --help > /dev/null
|
||||
'';
|
||||
|
||||
inherit (ruby) meta;
|
||||
};
|
||||
|
||||
env = let
|
||||
|
|
|
@ -32,13 +32,13 @@ with py.pkgs;
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "checkov";
|
||||
version = "2.0.923";
|
||||
version = "2.0.927";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bridgecrewio";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-EvT1nEE58gtlpRKEZkVaZ0mjABldmioW9u1foF8RCJI=";
|
||||
hash = "sha256-g/aJT1ZbD7wrsb4M3tvGmhWbElmnZbQkP0I0KV7J80c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with py.pkgs; [
|
||||
|
|
|
@ -1,13 +1,14 @@
|
|||
{ lib, stdenv, fetchgit, cmake, pcre, doxygen }:
|
||||
{ lib, stdenv, fetchFromGitHub, cmake, pcre, doxygen }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "editorconfig-core-c";
|
||||
version = "0.12.1";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/editorconfig/editorconfig-core-c.git";
|
||||
src = fetchFromGitHub {
|
||||
owner = "editorconfig";
|
||||
repo = "editorconfig-core-c";
|
||||
rev = "v${version}";
|
||||
sha256 = "0awpb63ci85kal3pnlj2b54bay8igj1rbc13d8gqkvidlb51nnx4";
|
||||
sha256 = "sha256-pFsbyqIt7okfaiOwlYN8EXm1SFlCUnsHVbOgyIZZlys=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
78
pkgs/development/tools/wails/default.nix
Normal file
78
pkgs/development/tools/wails/default.nix
Normal file
|
@ -0,0 +1,78 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, makeWrapper
|
||||
, go
|
||||
, gcc
|
||||
, gtk3
|
||||
, webkitgtk
|
||||
, nodejs
|
||||
, upx
|
||||
, zlib
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "wails";
|
||||
version = "2.0.0-beta.33";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wailsapp";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-efxOL/FllToum0P4JyAJt0fbrznTFYh7czTWpZu3uk0=";
|
||||
} + "/v2";
|
||||
|
||||
vendorSha256 = "sha256-qPMVsvud2L7hpXUOfYYMiO32JXff8ZZC34EsxFoSJ0g=";
|
||||
|
||||
proxyVendor = true;
|
||||
|
||||
subPackages = [ "cmd/wails" ];
|
||||
|
||||
# These packages are needed to build wails
|
||||
# and will also need to be used when building a wails app.
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
# Wails apps are built with Go, so we need to be able to
|
||||
# add it in propagatedBuildInputs.
|
||||
allowGoReference = true;
|
||||
|
||||
# Following packages are required when wails used as a builder.
|
||||
propagatedBuildInputs = [
|
||||
pkg-config
|
||||
go
|
||||
gcc
|
||||
gtk3
|
||||
webkitgtk
|
||||
nodejs
|
||||
upx
|
||||
];
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
];
|
||||
|
||||
# As Wails calls a compiler, certain apps and libraries need to be made available.
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/wails \
|
||||
--prefix PATH : ${lib.makeBinPath [ pkg-config go gcc nodejs upx ]} \
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ gtk3 webkitgtk ]} \
|
||||
--set PKG_CONFIG_PATH "$PKG_CONFIG_PATH" \
|
||||
--set CGO_LDFLAGS "-L${lib.makeLibraryPath [ zlib ]}"
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Build applications using Go + HTML + CSS + JS";
|
||||
homepage = "https://wails.io";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ianmjones ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fheroes2";
|
||||
version = "0.9.12";
|
||||
version = "0.9.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ihhub";
|
||||
repo = "fheroes2";
|
||||
rev = version;
|
||||
sha256 = "sha256-6voM6aQ22zW6NHm9x2TDsM4Kea6TLYZTdSLyc/6fz8A=";
|
||||
sha256 = "sha256-+VAgS7NR/D0HD/Fy7idSUTMJPp2ctpirMpcFooo+bEg=";
|
||||
};
|
||||
|
||||
buildInputs = [ gettext libpng SDL2 SDL2_image SDL2_mixer SDL2_ttf zlib ];
|
||||
|
|
|
@ -24,7 +24,13 @@ stdenv.mkDerivation rec {
|
|||
curl libjpeg libpng gettext cunit
|
||||
];
|
||||
|
||||
NIX_CFLAGS_LINK = "-lgcc_s"; # to avoid occasional runtime error in finding libgcc_s.so.1
|
||||
NIX_CFLAGS_LINK = [
|
||||
# to avoid occasional runtime error in finding libgcc_s.so.1
|
||||
"-lgcc_s"
|
||||
# tests are underlinked against libm:
|
||||
# ld: release-linux-x86_64/testall/client/sound/s_mix.c.o: undefined reference to symbol 'acos@@GLIBC_2.2.5'
|
||||
"-lm"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "http://ufoai.org";
|
||||
|
|
|
@ -139,6 +139,12 @@ in {
|
|||
filesToInstall = ["u-boot-sunxi-with-spl.bin"];
|
||||
};
|
||||
|
||||
ubootA20OlinuxinoLime2EMMC = buildUBoot {
|
||||
defconfig = "A20-OLinuXino-Lime2-eMMC_defconfig";
|
||||
extraMeta.platforms = ["armv7l-linux"];
|
||||
filesToInstall = ["u-boot-sunxi-with-spl.bin"];
|
||||
};
|
||||
|
||||
ubootAmx335xEVM = buildUBoot {
|
||||
defconfig = "am335x_evm_defconfig";
|
||||
extraMeta.platforms = ["armv7l-linux"];
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ callPackage, openssl_3_0, ... }@args:
|
||||
|
||||
callPackage ./generic.nix (args // { openssl = openssl_3_0; }) {
|
||||
version = "1.21.5";
|
||||
sha256 = "sha256-sg879TOlGKbw86eWff7thy0mjTHkzBIaAAEylgLdz7s=";
|
||||
version = "1.21.6";
|
||||
sha256 = "1bh52jqqcaj5wlh2kvhxr00jhk2hnk8k97ki4pwyj4c8920p1p36";
|
||||
}
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mapcache";
|
||||
version = "1.10.0";
|
||||
version = "1.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MapServer";
|
||||
repo = pname;
|
||||
rev = "rel-${lib.replaceStrings [ "." ] [ "-" ] version}";
|
||||
sha256 = "sha256-HrvcJAf0a6tu8AKKuW5TaCtqPMgzH21fGMBxIfUzdgY=";
|
||||
sha256 = "sha256-13lOQC4PJtByhvceuF00uoipLFHrFiyJrsy2iWcEANc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -5,13 +5,13 @@ with lib;
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "grml-zsh-config";
|
||||
version = "0.19.0";
|
||||
version = "0.19.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "grml";
|
||||
repo = "grml-etc-core";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Vn8NzpvJ1W/+UUuhr1plLqskVBUOFJHvy+hxKE3DmIs=";
|
||||
sha256 = "sha256-GEuBYN6HVAjiAbusVuEA7zBG9fIVZHLV628Jt6Cv5cM=";
|
||||
};
|
||||
|
||||
buildInputs = [ zsh coreutils txt2tags procps ]
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "colmena";
|
||||
version = "0.2.1";
|
||||
version = "0.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zhaofengli";
|
||||
repo = "colmena";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-5UU8iBzwO7xM8B+LulnFkJFv5j5lu7mfq0XMmOCaKcQ=";
|
||||
sha256 = "sha256-VsqFiqZUjGpDZfw6ws1rvqm/NGUfFBXHa0N8ZkBaMh8=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-wMC2GAVVxkwrgJtOIJL0P+Uxh+ouW4VwLDrXJlD10AA=";
|
||||
cargoSha256 = "sha256-NVvPh0+53YIm5Kb/lNyXb7M3bbADBVdsTaPptyb37lw=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
|
|
@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
|
|||
desktopItems = [(makeDesktopItem {
|
||||
name = "agi";
|
||||
desktopName = "Android GPU Inspector";
|
||||
exec = "$out/bin/agi";
|
||||
exec = "agi";
|
||||
icon = "agi";
|
||||
categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ];
|
||||
})];
|
||||
|
|
|
@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
|
|||
desktopItems = [(makeDesktopItem {
|
||||
name = pname;
|
||||
desktopName = "Snapdragon Profiler";
|
||||
exec = "$out/bin/snapdragon-profiler";
|
||||
exec = "snapdragon-profiler";
|
||||
icon = "snapdragon-profiler";
|
||||
comment = meta.description;
|
||||
categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ];
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "kepubify";
|
||||
version = "4.0.3";
|
||||
version = "4.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pgaskin";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-pe4jNBoPjrkvsdeFjH4TNwacp0qkf+v+SjIAZqV1GWE=";
|
||||
sha256 = "sha256-H6W+C5twXit7Z9hLIJKAftbnvYDA9HAb9tR6yeQGRKI=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-eiFG6lgsY5hf+XT3Kf5uA4Ai8vBbPsh1T4ObV+rj30Y=";
|
||||
vendorSha256 = "sha256-QOMLwDDvrDQAaK4M4QhBFTGD1CzblkDoA3ZqtCoRHtQ=";
|
||||
|
||||
ldflags = [ "-s" "-w" "-X main.version=${version}" ];
|
||||
|
||||
|
|
|
@ -3,12 +3,12 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "nncp";
|
||||
version = "8.7.0";
|
||||
version = "8.7.1";
|
||||
outputs = [ "out" "doc" "info" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.nncpgo.org/download/${pname}-${version}.tar.xz";
|
||||
sha256 = "sha256-7UiP/X2IAovdZDhr7ErZEW99oIgfseYoST0vK7vR6Gg=";
|
||||
hash = "sha256-zrTRl69ajZ6Tt0nVwPULU+Z0ajGK9Hs2S/XLMj1sTr0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ go redo-apenwarr ];
|
||||
|
|
23
pkgs/tools/misc/pridecat/default.nix
Normal file
23
pkgs/tools/misc/pridecat/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, stdenv, fetchFromGitHub }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "pridecat";
|
||||
version = "unstable-2020-06-19";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "lunasorcery";
|
||||
repo = "pridecat";
|
||||
rev = "92396b11459e7a4b5e8ff511e99d18d7a1589c96";
|
||||
sha256 = "sha256-PyGLbbsh9lFXhzB1Xn8VQ9zilivycGFEIc7i8KXOxj8=";
|
||||
};
|
||||
|
||||
# fixes the install path in the Makefile
|
||||
patches = [ ./fix_install.patch ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Like cat, but more colorful";
|
||||
homepage = "https://github.com/lunasorcery/pridecat";
|
||||
license = licenses.cc-by-nc-sa-40;
|
||||
maintainers = with maintainers; [ lunarequest ];
|
||||
};
|
||||
}
|
20
pkgs/tools/misc/pridecat/fix_install.patch
Normal file
20
pkgs/tools/misc/pridecat/fix_install.patch
Normal file
|
@ -0,0 +1,20 @@
|
|||
diff --git a/Makefile b/Makefile
|
||||
index 815c27e..1556807 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1,4 +1,5 @@
|
||||
CXX ?= clang
|
||||
+out ?= /usr/local
|
||||
|
||||
all: pridecat
|
||||
|
||||
@@ -6,7 +7,8 @@ pridecat: main.cpp
|
||||
$(CXX) main.cpp -o pridecat -std=c++11 -lstdc++ -Wall -Wextra -O3
|
||||
|
||||
install: pridecat
|
||||
- cp pridecat /usr/local/bin/pridecat
|
||||
+ mkdir -p ${out}/bin
|
||||
+ cp pridecat ${out}/bin/pridecat
|
||||
|
||||
uninstall:
|
||||
rm -f /usr/local/bin/pridecat
|
23
pkgs/tools/misc/sanctity/default.nix
Normal file
23
pkgs/tools/misc/sanctity/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ lib, rustPlatform, fetchFromGitea }:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "sanctity";
|
||||
version = "1.2.1";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "papojari";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-rK4em0maJQS50zPfnuFSxRoXUuFCaw9ZOfmgf70Sdac=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-IQp/sSVgKY1j6N+UcifEi74dg/PkZJoeqLekeLc/vMU=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Test the 16 terminal colors in all combinations";
|
||||
homepage = "https://codeberg.org/papojari/sanctity";
|
||||
license = licenses.lgpl3Only;
|
||||
maintainers = with maintainers; [ papojari ];
|
||||
};
|
||||
}
|
|
@ -54,11 +54,11 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "networkmanager";
|
||||
version = "1.34.0";
|
||||
version = "1.36.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/NetworkManager/${lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
|
||||
sha256 = "sha256-gZeV0ImQdiBPVnJCGljxsdnjk1Nu6Hu4RLkR5iQ78L0=";
|
||||
sha256 = "1aqc8z8zv1sds439ilihwqczwg9iqzki0f007fd2x0s17fz5r1db";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" "man" "doc" ];
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
diff --git a/data/84-nm-drivers.rules b/data/84-nm-drivers.rules
|
||||
index e398cb9f2f..a43d61864f 100644
|
||||
index 148acade5c..6395fbfbe5 100644
|
||||
--- a/data/84-nm-drivers.rules
|
||||
+++ b/data/84-nm-drivers.rules
|
||||
@@ -7,6 +7,6 @@ ACTION!="add|change", GOTO="nm_drivers_end"
|
||||
@@ -7,6 +7,6 @@ ACTION!="add|change|move", GOTO="nm_drivers_end"
|
||||
# Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?)
|
||||
ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end"
|
||||
DRIVERS=="?*", GOTO="nm_drivers_end"
|
||||
|
@ -24,19 +24,19 @@ index e23b3a5282..c7246a3b61 100644
|
|||
ExecStart=@sbindir@/NetworkManager --no-daemon
|
||||
Restart=on-failure
|
||||
diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c
|
||||
index 21863b9533..c9b709659d 100644
|
||||
index a11486d54b..de8e9022c6 100644
|
||||
--- a/src/core/devices/nm-device.c
|
||||
+++ b/src/core/devices/nm-device.c
|
||||
@@ -13994,14 +13994,14 @@ nm_device_start_ip_check(NMDevice *self)
|
||||
gw = nm_ip4_config_best_default_route_get(priv->ip_config_4);
|
||||
@@ -13571,14 +13571,14 @@ nm_device_start_ip_check(NMDevice *self)
|
||||
gw = nm_l3_config_data_get_best_default_route(l3cd, AF_INET);
|
||||
if (gw) {
|
||||
_nm_utils_inet4_ntop(NMP_OBJECT_CAST_IP4_ROUTE(gw)->gateway, buf);
|
||||
- ping_binary = nm_utils_find_helper("ping", "/usr/bin/ping", NULL);
|
||||
+ ping_binary = "@iputils@/bin/ping";
|
||||
log_domain = LOGD_IP4;
|
||||
}
|
||||
} else if (priv->ip_config_6 && priv->ip_state_6 == NM_DEVICE_IP_STATE_DONE) {
|
||||
gw = nm_ip6_config_best_default_route_get(priv->ip_config_6);
|
||||
} else if (priv->ip_data_6.state == NM_DEVICE_IP_STATE_READY) {
|
||||
gw = nm_l3_config_data_get_best_default_route(l3cd, AF_INET6);
|
||||
if (gw) {
|
||||
_nm_utils_inet6_ntop(&NMP_OBJECT_CAST_IP6_ROUTE(gw)->gateway, buf);
|
||||
- ping_binary = nm_utils_find_helper("ping6", "/usr/bin/ping6", NULL);
|
||||
|
@ -65,10 +65,10 @@ index 21a01e0b04..091c98428f 100644
|
|||
'--lib-path', meson.current_build_dir(),
|
||||
'--gir', '@INPUT@',
|
||||
diff --git a/src/libnm-platform/nm-platform-utils.c b/src/libnm-platform/nm-platform-utils.c
|
||||
index 6435dcc482..214d01194e 100644
|
||||
index 9ad030df76..8d800fb1c0 100644
|
||||
--- a/src/libnm-platform/nm-platform-utils.c
|
||||
+++ b/src/libnm-platform/nm-platform-utils.c
|
||||
@@ -2097,7 +2097,7 @@ nmp_utils_modprobe(GError **error, gboolean suppress_error_logging, const char *
|
||||
@@ -2207,7 +2207,7 @@ nmp_utils_modprobe(GError **error, gboolean suppress_error_logging, const char *
|
||||
|
||||
/* construct the argument list */
|
||||
argv = g_ptr_array_sized_new(4);
|
||||
|
@ -78,13 +78,13 @@ index 6435dcc482..214d01194e 100644
|
|||
g_ptr_array_add(argv, (char *) arg1);
|
||||
|
||||
diff --git a/src/libnmc-base/nm-vpn-helpers.c b/src/libnmc-base/nm-vpn-helpers.c
|
||||
index 72691e34c2..95495b6585 100644
|
||||
index e2c0c394bd..1a507aa0d4 100644
|
||||
--- a/src/libnmc-base/nm-vpn-helpers.c
|
||||
+++ b/src/libnmc-base/nm-vpn-helpers.c
|
||||
@@ -198,25 +198,8 @@ nm_vpn_openconnect_authenticate_helper(const char *host,
|
||||
gs_free const char **output_v = NULL;
|
||||
const char *const * iter;
|
||||
const char * path;
|
||||
const char *const *iter;
|
||||
const char *path;
|
||||
- const char *const DEFAULT_PATHS[] = {
|
||||
- "/sbin/",
|
||||
- "/usr/sbin/",
|
||||
|
|
22
pkgs/tools/networking/snet/default.nix
Normal file
22
pkgs/tools/networking/snet/default.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "snet";
|
||||
version = "unstable-2021-11-26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "monsterxx03";
|
||||
repo = "snet";
|
||||
rev = "89089b55277ce3e21e2ed79a9d307f2ecc62c6db";
|
||||
sha256 = "sha256-lTbygQRABv+Dp4i7nDgXYqi4pwU2rtLNfpgtBgsq+7Y=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-dubmCLeD8Fwe1msfLN+5WzdbFkfTRnZDU3F49gjWTS4=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Transparent proxy works on linux desktop, MacOS, router";
|
||||
homepage = "https://github.com/monsterxx03/snet";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ azuwis ];
|
||||
};
|
||||
}
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "tendermint";
|
||||
version = "0.35.1";
|
||||
version = "0.35.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tendermint";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-eEvSELCzpAm9Me46U54MQEQiAPCFlBa5iG2AZMn5BbE=";
|
||||
sha256 = "sha256-QCCDZ0zsAqV7tvlBeyTpN5iz/jBc50oBgrmUB/R5wCY=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-aYY3rGm2Wvd5v1QrfhN0jWzAO9JYu4j5ZHk9UyEPjH8=";
|
||||
vendorSha256 = "sha256-h4sNfV8B+WGgfVPDmWVNek7fQo5qZ3+VGkx4VSw4QF8=";
|
||||
|
||||
subPackages = [ "cmd/tendermint" ];
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
filepath,
|
||||
generic-optics,
|
||||
HUnit,
|
||||
installShellFiles,
|
||||
lib,
|
||||
lock-file,
|
||||
MemoTrie,
|
||||
|
@ -140,11 +141,18 @@ mkDerivation {
|
|||
maintainers = with lib.maintainers; [maralorn];
|
||||
passthru.updateScript = ./update.sh;
|
||||
testTarget = "unit-tests";
|
||||
buildTools = [installShellFiles];
|
||||
postInstall = ''
|
||||
cat > $out/bin/nom-build << EOF
|
||||
#!${runtimeShell}
|
||||
${expect}/bin/unbuffer nix-build "\$@" 2>&1 | exec $out/bin/nom
|
||||
EOF
|
||||
chmod a+x $out/bin/nom-build
|
||||
installShellCompletion --zsh --name _nom-build ${
|
||||
builtins.toFile "completion.zsh" ''
|
||||
#compdef nom-build
|
||||
compdef nom-build=nix-build
|
||||
''
|
||||
}
|
||||
'';
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue