mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-09 03:55:44 +03:00
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
|
###### 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
|
- [ ] (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
|
- [ ] (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).
|
- [ ] 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"
|
isDerivation "foobar"
|
||||||
=> false
|
=> 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. */
|
/* Converts a store path to a fake derivation. */
|
||||||
toDerivation = path:
|
toDerivation = path:
|
||||||
|
|
|
@ -2218,7 +2218,7 @@
|
||||||
ckie = {
|
ckie = {
|
||||||
email = "nixpkgs-0efe364@ckie.dev";
|
email = "nixpkgs-0efe364@ckie.dev";
|
||||||
github = "ckiee";
|
github = "ckiee";
|
||||||
githubId = 2526321;
|
githubId = 25263210;
|
||||||
keys = [{
|
keys = [{
|
||||||
longkeyid = "rsa4096/0x13E79449C0525215";
|
longkeyid = "rsa4096/0x13E79449C0525215";
|
||||||
fingerprint = "539F 0655 4D35 38A5 429A E253 13E7 9449 C052 5215";
|
fingerprint = "539F 0655 4D35 38A5 429A E253 13E7 9449 C052 5215";
|
||||||
|
@ -9391,6 +9391,13 @@
|
||||||
githubId = 71795;
|
githubId = 71795;
|
||||||
name = "Mica Semrick";
|
name = "Mica Semrick";
|
||||||
};
|
};
|
||||||
|
papojari = {
|
||||||
|
email = "papojari-git.ovoid@aleeas.com";
|
||||||
|
matrix = "@papojari:artemislena.eu";
|
||||||
|
github = "papojari";
|
||||||
|
githubId = 81317317;
|
||||||
|
name = "papojari";
|
||||||
|
};
|
||||||
paraseba = {
|
paraseba = {
|
||||||
email = "paraseba@gmail.com";
|
email = "paraseba@gmail.com";
|
||||||
github = "paraseba";
|
github = "paraseba";
|
||||||
|
@ -14031,6 +14038,12 @@
|
||||||
github = "jpagex";
|
github = "jpagex";
|
||||||
githubId = 635768;
|
githubId = 635768;
|
||||||
};
|
};
|
||||||
|
vbrandl = {
|
||||||
|
name = "Valentin Brandl";
|
||||||
|
email = "mail+nixpkgs@vbrandl.net";
|
||||||
|
github = "vbrandl";
|
||||||
|
githubId = 20639051;
|
||||||
|
};
|
||||||
portothree = {
|
portothree = {
|
||||||
name = "Gustavo Porto";
|
name = "Gustavo Porto";
|
||||||
email = "gustavoporto@ya.ru";
|
email = "gustavoporto@ya.ru";
|
||||||
|
|
|
@ -11,7 +11,7 @@ in {
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = ''
|
ExecStart = ''
|
||||||
${pkgs.prometheus-systemd-exporter}/bin/systemd_exporter \
|
${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 = [
|
RestrictAddressFamilies = [
|
||||||
# Need AF_UNIX to collect data
|
# Need AF_UNIX to collect data
|
||||||
|
|
|
@ -962,7 +962,7 @@ in
|
||||||
'') onion.authorizedClients ++
|
'') onion.authorizedClients ++
|
||||||
optional (onion.secretKey != null) ''
|
optional (onion.secretKey != null) ''
|
||||||
install -d -o tor -g tor -m 0700 ${escapeShellArg onion.path}
|
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
|
case "$key" in
|
||||||
("== ed25519v"*"-secret")
|
("== ed25519v"*"-secret")
|
||||||
install -o tor -g tor -m 0400 ${escapeShellArg onion.secretKey} ${escapeShellArg onion.path}/hs_ed25519_secret_key;;
|
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
|
# This is a NixOS installation if it has /etc/NIXOS or a proper
|
||||||
# /etc/os-release.
|
# /etc/os-release.
|
||||||
die "This is not a NixOS installation!\n" unless
|
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);
|
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
|
in
|
||||||
|
|
||||||
{
|
{
|
||||||
|
appstream = callInstalledTest ./appstream.nix {};
|
||||||
|
appstream-qt = callInstalledTest ./appstream-qt.nix {};
|
||||||
colord = callInstalledTest ./colord.nix {};
|
colord = callInstalledTest ./colord.nix {};
|
||||||
flatpak = callInstalledTest ./flatpak.nix {};
|
flatpak = callInstalledTest ./flatpak.nix {};
|
||||||
flatpak-builder = callInstalledTest ./flatpak-builder.nix {};
|
flatpak-builder = callInstalledTest ./flatpak-builder.nix {};
|
||||||
|
|
|
@ -1156,6 +1156,10 @@ let
|
||||||
systemd = {
|
systemd = {
|
||||||
exporterConfig = {
|
exporterConfig = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
|
extraFlags = [
|
||||||
|
"--collector.enable-restart-count"
|
||||||
|
];
|
||||||
};
|
};
|
||||||
metricProvider = { };
|
metricProvider = { };
|
||||||
exporterTest = ''
|
exporterTest = ''
|
||||||
|
@ -1166,6 +1170,11 @@ let
|
||||||
'systemd_unit_state{name="basic.target",state="active",type="target"} 1'
|
'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 {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "gpodder";
|
pname = "gpodder";
|
||||||
version = "3.10.17";
|
version = "3.10.21";
|
||||||
format = "other";
|
format = "other";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = pname;
|
owner = pname;
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "0wrk8d4q6ricbcjzlhk10vrk1qg9hi323kgyyd0c8nmh7a82h8pd";
|
sha256 = "0n73jm5ypsj962gpr0dk10lqh83giqsczm63wchyhmrkyf1wgga1";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -42,7 +42,10 @@ python3Packages.buildPythonApplication rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
checkInputs = with python3Packages; [
|
checkInputs = with python3Packages; [
|
||||||
coverage minimock
|
minimock
|
||||||
|
pytest
|
||||||
|
pytest-httpserver
|
||||||
|
pytest-cov
|
||||||
];
|
];
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
@ -51,6 +54,7 @@ python3Packages.buildPythonApplication rec {
|
||||||
feedparser
|
feedparser
|
||||||
dbus-python
|
dbus-python
|
||||||
mygpoclient
|
mygpoclient
|
||||||
|
requests
|
||||||
pygobject3
|
pygobject3
|
||||||
eyeD3
|
eyeD3
|
||||||
podcastparser
|
podcastparser
|
||||||
|
@ -69,7 +73,8 @@ python3Packages.buildPythonApplication rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installCheckPhase = ''
|
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; {
|
meta = with lib; {
|
||||||
|
|
|
@ -11,41 +11,20 @@
|
||||||
</section>
|
</section>
|
||||||
<section>
|
<section>
|
||||||
<item>
|
<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
|
--- a/src/gpodder/config.py
|
||||||
+++ b/src/gpodder/config.py
|
+++ b/src/gpodder/config.py
|
||||||
@@ -91,13 +91,6 @@
|
@@ -94,7 +94,7 @@
|
||||||
'retries': 3, # number of retries when downloads time out
|
|
||||||
},
|
|
||||||
|
|
||||||
- # Software updates from gpodder.org
|
# Software updates from gpodder.org
|
||||||
- 'software_update': {
|
'software_update': {
|
||||||
- 'check_on_startup': True, # check for updates on start
|
- 'check_on_startup': True, # check for updates on start
|
||||||
- 'last_check': 0, # unix timestamp of last update check
|
+ 'check_on_startup': False, # check for updates on start
|
||||||
- 'interval': 5, # interval (in days) to check for updates
|
'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': {
|
|
||||||
--- a/src/gpodder/gtkui/main.py
|
--- a/src/gpodder/gtkui/main.py
|
||||||
+++ b/src/gpodder/gtkui/main.py
|
+++ b/src/gpodder/gtkui/main.py
|
||||||
@@ -224,7 +224,7 @@
|
@@ -3445,6 +3445,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 @@
|
|
||||||
If silent=False, a message will be shown even if no updates are
|
If silent=False, a message will be shown even if no updates are
|
||||||
available (set silent=False when the check is manually triggered).
|
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
|
{ lib
|
||||||
, stdenv
|
, stdenv
|
||||||
|
, darwin
|
||||||
, fetchurl
|
, fetchurl
|
||||||
, autoconf
|
, autoconf
|
||||||
, automake
|
, automake
|
||||||
|
@ -27,16 +28,25 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "3c9dcb686217b2efe0e988e90b95777c4591e3335e259e01a94af87e0bf01809";
|
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 ];
|
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 \
|
patchShebangs \
|
||||||
tools/generate-wire.py \
|
tools/generate-wire.py \
|
||||||
tools/update-mocks.sh \
|
tools/update-mocks.sh \
|
||||||
tools/mockup.sh \
|
tools/mockup.sh \
|
||||||
devtools/sql-rewrite.py
|
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" ];
|
configureFlags = [ "--disable-developer" "--disable-valgrind" ];
|
||||||
|
@ -56,6 +66,6 @@ stdenv.mkDerivation rec {
|
||||||
homepage = "https://github.com/ElementsProject/lightning";
|
homepage = "https://github.com/ElementsProject/lightning";
|
||||||
maintainers = with maintainers; [ jb55 prusnak ];
|
maintainers = with maintainers; [ jb55 prusnak ];
|
||||||
license = licenses.mit;
|
license = licenses.mit;
|
||||||
platforms = platforms.linux;
|
platforms = platforms.linux ++ platforms.darwin;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,16 +12,16 @@ let
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "electrs";
|
pname = "electrs";
|
||||||
version = "0.9.5";
|
version = "0.9.6";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "romanz";
|
owner = "romanz";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-6TR9OeIAVVbwDrshb9zHTS39x6taNWYK0UyRLbkW+g0=";
|
hash = "sha256-BI7hxlpg2sggD1ag73n+tRre+Ja2ZFhDPzy1DV8aEHw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoHash = "sha256-taOrbtx74DICvPLrwym70X3pv7EBA/H22VZmlxefANM=";
|
cargoHash = "sha256-Oy2mOulSB2a9LaT47G+BzjidcjPjHeaoesQ7g6M8M1Q=";
|
||||||
|
|
||||||
# needed for librocksdb-sys
|
# needed for librocksdb-sys
|
||||||
nativeBuildInputs = [ llvmPackages.clang ];
|
nativeBuildInputs = [ llvmPackages.clang ];
|
||||||
|
|
|
@ -13,11 +13,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "pinegrow";
|
pname = "pinegrow";
|
||||||
version = "6.3";
|
version = "6.4";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.pinegrow.com/PinegrowLinux64.${version}.zip";
|
url = "https://download.pinegrow.com/PinegrowLinux64.${version}.zip";
|
||||||
sha256 = "0wldj633p67da077nfc67gr9xhq580rkfd0r3904sjq7x01r0kaz";
|
sha256 = "0i8sg4criimrqmz0g68b8xcwcrb362ssid5jazswpa6hhwj6s5n4";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -3,15 +3,15 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
pname = "josm";
|
pname = "josm";
|
||||||
version = "18360";
|
version = "18387";
|
||||||
srcs = {
|
srcs = {
|
||||||
jar = fetchurl {
|
jar = fetchurl {
|
||||||
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
|
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
|
||||||
sha256 = "sha256-1OMEPMtUGkxQCgpmyVP1h25gSDa2MKF7l1rodr61O5s=";
|
sha256 = "sha256-zkEWZjjSy0ajG5X1/dIgLPZ7zr0BiaJJcHaN8sv/3yc=";
|
||||||
};
|
};
|
||||||
macosx = fetchurl {
|
macosx = fetchurl {
|
||||||
url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java17.zip";
|
url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java17.zip";
|
||||||
sha256 = "sha256-ZCybgaLwPfQVG2gJ+dtElIY7bGZUe9R8a/0B6QK8yK8=";
|
sha256 = "sha256-xOVnnQ+eUkboT8Tq5F4QJEou1wAaHwiEdyiEKDR/fUk=";
|
||||||
};
|
};
|
||||||
pkg = fetchsvn {
|
pkg = fetchsvn {
|
||||||
url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";
|
url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "clusterctl";
|
pname = "clusterctl";
|
||||||
version = "1.1.2";
|
version = "1.1.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "kubernetes-sigs";
|
owner = "kubernetes-sigs";
|
||||||
repo = "cluster-api";
|
repo = "cluster-api";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-IjkksHa94gkNiaeksGHlLdeHlLS/uwI0GnKK0d3s5wk=";
|
sha256 = "sha256-0njXmYhZM4DXFeK9KboXnVw8uHdz4PFJ2aJxwhgyEc8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-3PzaMB7U19HnqS+zRbIupErE1S8+MzG92vQFq3oxHpE=";
|
vendorSha256 = "sha256-JVRLPsfI1ITilAOkVIAa2IjjuAlJ2PCpvYEkhnTzRDA=";
|
||||||
|
|
||||||
subPackages = [ "cmd/clusterctl" ];
|
subPackages = [ "cmd/clusterctl" ];
|
||||||
|
|
||||||
|
|
|
@ -4,13 +4,13 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "git-remote-hg";
|
pname = "git-remote-hg";
|
||||||
version = "1.0.2.1";
|
version = "1.0.3.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "mnauw";
|
owner = "mnauw";
|
||||||
repo = "git-remote-hg";
|
repo = "git-remote-hg";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "1crgq13v2p9wmw1yhckmyzybh8h1nz3839qhqvzh48vxqkailzmn";
|
sha256 = "0b5lfbrcrvzpz380817md00lbgy5yl4y76vs3vm0bpm5wmr7c027";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -2,19 +2,21 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "cloud-hypervisor";
|
pname = "cloud-hypervisor";
|
||||||
version = "21.0";
|
version = "22.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "cloud-hypervisor";
|
owner = "cloud-hypervisor";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "00b0ij9sfv7zsrgwrcj2rzpy1z8bp0m0lmzjp433xzpcgcnzw3w5";
|
sha256 = "1n4i7rgx8rkif2naw429fnkhv0888sfxmnky67fd42mlv1lhz9w8";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
buildInputs = [ openssl ] ++ lib.optional stdenv.isAarch64 dtc;
|
buildInputs = [ openssl ] ++ lib.optional stdenv.isAarch64 dtc;
|
||||||
|
|
||||||
cargoSha256 = "0lf7bb468s2ic9vabx954i46605gf7c6064vvwqvz7djk30z0y0d";
|
cargoSha256 = "0kc6lcwlqg9l19l4psakgkc5jf28nw1riz85adci897yha1dsnh0";
|
||||||
|
|
||||||
|
OPENSSL_NO_VENDOR = true;
|
||||||
|
|
||||||
# Integration tests require root.
|
# Integration tests require root.
|
||||||
cargoTestFlags = [ "--bins" ];
|
cargoTestFlags = [ "--bins" ];
|
||||||
|
|
|
@ -1,44 +1,49 @@
|
||||||
commit cdc3e7eeafa9f683214d2c15d52ef384c3de6611
|
From 9e4932ae99946b1a08ab5b5345fd2bc3486e54a5 Mon Sep 17 00:00:00 2001
|
||||||
Author: aszlig <aszlig@nix.build>
|
From: aszlig <aszlig@nix.build>
|
||||||
Date: Mon Mar 18 13:21:01 2019 +0100
|
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.
|
||||||
|
|
||||||
Since Linux 4.19, overlayfs uses the O_NOATIME flag on its lowerdir,
|
After submitting a patch to the overlayfs mailing list[1], it turns out
|
||||||
which in turn causes errors when the Nix store is mounted in the guest
|
that my patch was incomplete[2] and needs a bit more rework.
|
||||||
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
|
So instead of using an incomplete kernel patch in nixpkgs, which affects
|
||||||
that my patch was incomplete[2] and needs a bit more rework.
|
*all* users of overlayfs, not just NixOS VM tests, I decided that for
|
||||||
|
now it's better to patch QEMU instead.
|
||||||
|
|
||||||
So instead of using an incomplete kernel patch in nixpkgs, which affects
|
The change here really only ignores the O_NOATIME flag so that the
|
||||||
*all* users of overlayfs, not just NixOS VM tests, I decided that for
|
behaviour is similar to what NFS does. From open(2):
|
||||||
now it's better to patch QEMU instead.
|
|
||||||
|
|
||||||
The change here really only ignores the O_NOATIME flag so that the
|
This flag may not be effective on all filesystems. One example is NFS,
|
||||||
behaviour is similar to what NFS does. From open(2):
|
where the server maintains the access time.
|
||||||
|
|
||||||
This flag may not be effective on all filesystems. One example is NFS,
|
This change is therefore only temporary until the final fix lands in the
|
||||||
where the server maintains the access time.
|
stable kernel releases.
|
||||||
|
|
||||||
This change is therefore only temporary until the final fix lands in the
|
[1]: https://www.spinics.net/lists/linux-unionfs/msg06755.html
|
||||||
stable kernel releases.
|
[2]: https://www.spinics.net/lists/linux-unionfs/msg06756.html
|
||||||
|
|
||||||
[1]: https://www.spinics.net/lists/linux-unionfs/msg06755.html
|
Signed-off-by: aszlig <aszlig@nix.build>
|
||||||
[2]: https://www.spinics.net/lists/linux-unionfs/msg06756.html
|
---
|
||||||
|
hw/9pfs/9p.c | 1 -
|
||||||
Signed-off-by: aszlig <aszlig@nix.build>
|
1 file changed, 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c
|
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
|
--- a/hw/9pfs/9p.c
|
||||||
+++ b/hw/9pfs/9p.c
|
+++ b/hw/9pfs/9p.c
|
||||||
@@ -127,7 +127,6 @@ static int dotl_to_open_flags(int flags)
|
@@ -139,7 +139,6 @@ static int dotl_to_open_flags(int flags)
|
||||||
{ P9_DOTL_LARGEFILE, O_LARGEFILE },
|
{ P9_DOTL_DSYNC, O_DSYNC },
|
||||||
{ P9_DOTL_DIRECTORY, O_DIRECTORY },
|
{ P9_DOTL_FASYNC, FASYNC },
|
||||||
{ P9_DOTL_NOFOLLOW, O_NOFOLLOW },
|
#ifndef CONFIG_DARWIN
|
||||||
- { P9_DOTL_NOATIME, O_NOATIME },
|
- { 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 = [
|
patches = [
|
||||||
./fix-qemu-ga.patch
|
./fix-qemu-ga.patch
|
||||||
./9p-ignore-noatime.patch
|
|
||||||
# Cocoa clipboard support only works on macOS 10.14+
|
# Cocoa clipboard support only works on macOS 10.14+
|
||||||
(fetchpatch {
|
(fetchpatch {
|
||||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/7e3e20d89129614f4a7b2451fe321cc6ccca3b76.diff";
|
url = "https://gitlab.com/qemu-project/qemu/-/commit/7e3e20d89129614f4a7b2451fe321cc6ccca3b76.diff";
|
||||||
sha256 = "09xz06g57wxbacic617pq9c0qb7nly42gif0raplldn5lw964xl2";
|
sha256 = "09xz06g57wxbacic617pq9c0qb7nly42gif0raplldn5lw964xl2";
|
||||||
revert = true;
|
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 = ''
|
postPatch = ''
|
||||||
# Otherwise tries to ensure /var/run exists.
|
# 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}";
|
name = "${unwrapped.pname}-${unwrapped.version}";
|
||||||
# export underlying qtile package
|
# export underlying qtile package
|
||||||
passthru = { inherit unwrapped; };
|
passthru = { inherit unwrapped; };
|
||||||
|
|
||||||
|
# restore original qtile attrs
|
||||||
|
inherit (unwrapped) pname version meta;
|
||||||
})
|
})
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
, systemdSupport ? stdenv.isLinux
|
, systemdSupport ? stdenv.isLinux
|
||||||
, dbusSupport ? true
|
, dbusSupport ? true
|
||||||
, dbus
|
, dbus
|
||||||
, trayEnabled ? dbusSupport
|
, trayEnabled ? systemdSupport && dbusSupport
|
||||||
}:
|
}:
|
||||||
|
|
||||||
# The "sd-bus-provider" meson option does not include a "none" option,
|
# The "sd-bus-provider" meson option does not include a "none" option,
|
||||||
|
|
|
@ -36,7 +36,7 @@
|
||||||
let
|
let
|
||||||
# FIXME: workaround until https://github.com/NixOS/nixpkgs/pull/162246 lands
|
# FIXME: workaround until https://github.com/NixOS/nixpkgs/pull/162246 lands
|
||||||
cleanName = if lib.hasInfix " " name
|
cleanName = if lib.hasInfix " " name
|
||||||
then throw "Name must not contain spaces!"
|
then throw "makeDesktopItem: name must not contain spaces!"
|
||||||
else name;
|
else name;
|
||||||
|
|
||||||
# There are multiple places in the FDO spec that make "boolean" values actually tristate,
|
# There are multiple places in the FDO spec that make "boolean" values actually tristate,
|
||||||
|
@ -45,13 +45,13 @@ let
|
||||||
boolOrNullToString = value:
|
boolOrNullToString = value:
|
||||||
if value == null then null
|
if value == null then null
|
||||||
else if builtins.isBool value then lib.boolToString value
|
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.
|
# 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.
|
# Technically, it's possible to escape semicolons in values with \;, but this is currently not implemented.
|
||||||
renderList = value:
|
renderList = key: value:
|
||||||
if !builtins.isList value then throw "Value must be a list!"
|
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 "Values in list must not contain semicolons!"
|
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 if value == [] then null
|
||||||
else builtins.concatStringsSep ";" value;
|
else builtins.concatStringsSep ";" value;
|
||||||
|
|
||||||
|
@ -65,18 +65,18 @@ let
|
||||||
"NoDisplay" = boolOrNullToString noDisplay;
|
"NoDisplay" = boolOrNullToString noDisplay;
|
||||||
"Comment" = comment;
|
"Comment" = comment;
|
||||||
"Icon" = icon;
|
"Icon" = icon;
|
||||||
"OnlyShowIn" = renderList onlyShowIn;
|
"OnlyShowIn" = renderList "onlyShowIn" onlyShowIn;
|
||||||
"NotShowIn" = renderList notShowIn;
|
"NotShowIn" = renderList "notShowIn" notShowIn;
|
||||||
"DBusActivatable" = boolOrNullToString dbusActivatable;
|
"DBusActivatable" = boolOrNullToString dbusActivatable;
|
||||||
"TryExec" = tryExec;
|
"TryExec" = tryExec;
|
||||||
"Exec" = exec;
|
"Exec" = exec;
|
||||||
"Path" = path;
|
"Path" = path;
|
||||||
"Terminal" = boolOrNullToString terminal;
|
"Terminal" = boolOrNullToString terminal;
|
||||||
"Actions" = renderList (builtins.attrNames actions);
|
"Actions" = renderList "actions" (builtins.attrNames actions);
|
||||||
"MimeType" = renderList mimeTypes;
|
"MimeType" = renderList "mimeTypes" mimeTypes;
|
||||||
"Categories" = renderList categories;
|
"Categories" = renderList "categories" categories;
|
||||||
"Implements" = renderList implements;
|
"Implements" = renderList "implements" implements;
|
||||||
"Keywords" = renderList keywords;
|
"Keywords" = renderList "keywords" keywords;
|
||||||
"StartupNotify" = boolOrNullToString startupNotify;
|
"StartupNotify" = boolOrNullToString startupNotify;
|
||||||
"StartupWMClass" = startupWMClass;
|
"StartupWMClass" = startupWMClass;
|
||||||
"URL" = url;
|
"URL" = url;
|
||||||
|
|
|
@ -16,13 +16,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "yaru";
|
pname = "yaru";
|
||||||
version = "21.10.2";
|
version = "22.04.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ubuntu";
|
owner = "ubuntu";
|
||||||
repo = "yaru";
|
repo = "yaru";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-VN/jgKGM2Th+2nv91vEz47kmQiBx8xAiEVbtXwhZg6U=";
|
sha256 = "sha256-5mB5eTIPw4CqYSQm675MKbRwsYLpg+5WJrLDkbc6nKs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ meson sassc pkg-config glib ninja python3 ];
|
nativeBuildInputs = [ meson sassc pkg-config glib ninja python3 ];
|
||||||
|
|
|
@ -33,7 +33,7 @@ buildType = if stdenv.isDarwin then
|
||||||
|
|
||||||
edk2 = buildStdenv.mkDerivation {
|
edk2 = buildStdenv.mkDerivation {
|
||||||
pname = "edk2";
|
pname = "edk2";
|
||||||
version = "202108";
|
version = "202202";
|
||||||
|
|
||||||
# submodules
|
# submodules
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
|
@ -41,21 +41,9 @@ edk2 = buildStdenv.mkDerivation {
|
||||||
repo = "edk2";
|
repo = "edk2";
|
||||||
rev = "edk2-stable${edk2.version}";
|
rev = "edk2-stable${edk2.version}";
|
||||||
fetchSubmodules = true;
|
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 ];
|
buildInputs = [ libuuid pythonEnv ];
|
||||||
|
|
||||||
makeFlags = [ "-C BaseTools" ]
|
makeFlags = [ "-C BaseTools" ]
|
||||||
|
@ -75,7 +63,7 @@ edk2 = buildStdenv.mkDerivation {
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Intel EFI development kit";
|
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;
|
license = licenses.bsd2;
|
||||||
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" "x86_64-darwin" ];
|
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" "x86_64-darwin" ];
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "gleam";
|
pname = "gleam";
|
||||||
version = "0.19.0";
|
version = "0.20.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "gleam-lang";
|
owner = "gleam-lang";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-pJ4RSijuwdKAL24WzcDIQen1RGofN1tUlbAA18zUvBE=";
|
sha256 = "sha256-AK+eb0eJyI7ALn7sg0wz4GzHthxrJWd1PVT5bL9LKWA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ pkg-config ];
|
nativeBuildInputs = [ pkg-config ];
|
||||||
|
@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
|
||||||
buildInputs = [ openssl ] ++
|
buildInputs = [ openssl ] ++
|
||||||
lib.optionals stdenv.isDarwin [ Security libiconv ];
|
lib.optionals stdenv.isDarwin [ Security libiconv ];
|
||||||
|
|
||||||
cargoSha256 = "sha256-f/6LdvKRykpBX2GlRuyUcSD719f6XzhbMHzhrGNU0Cg=";
|
cargoSha256 = "sha256-kFTAPbP42sbhsvP069ua0ys1Dw7W+Gdsv2YaGrzorIk=";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A statically typed language for the Erlang VM";
|
description = "A statically typed language for the Erlang VM";
|
||||||
|
|
|
@ -14,27 +14,31 @@
|
||||||
, glib
|
, glib
|
||||||
, xapian
|
, xapian
|
||||||
, libxml2
|
, libxml2
|
||||||
|
, libxmlb
|
||||||
, libyaml
|
, libyaml
|
||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
, pcre
|
, pcre
|
||||||
, itstool
|
, itstool
|
||||||
, gperf
|
, gperf
|
||||||
, vala
|
, vala
|
||||||
, lmdb
|
|
||||||
, curl
|
, curl
|
||||||
|
, nixosTests
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "appstream";
|
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 {
|
src = fetchFromGitHub {
|
||||||
owner = "ximion";
|
owner = "ximion";
|
||||||
repo = "appstream";
|
repo = "appstream";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-DJXCw50f+8c58bJw6xx0ECfkc9/KcWaeA+ne2zmTyhg=";
|
sha256 = "sha256-/JZ49wjtcInbGUOVVjevVSrLCHcA60FMT165rhfb78Q=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
@ -43,6 +47,9 @@ stdenv.mkDerivation rec {
|
||||||
src = ./fix-paths.patch;
|
src = ./fix-paths.patch;
|
||||||
libstemmer_includedir = "${lib.getDev libstemmer}/include";
|
libstemmer_includedir = "${lib.getDev libstemmer}/include";
|
||||||
})
|
})
|
||||||
|
|
||||||
|
# Allow installing installed tests to a separate output.
|
||||||
|
./installed-tests-path.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -65,9 +72,9 @@ stdenv.mkDerivation rec {
|
||||||
glib
|
glib
|
||||||
xapian
|
xapian
|
||||||
libxml2
|
libxml2
|
||||||
|
libxmlb
|
||||||
libyaml
|
libyaml
|
||||||
gperf
|
gperf
|
||||||
lmdb
|
|
||||||
curl
|
curl
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -75,8 +82,15 @@ stdenv.mkDerivation rec {
|
||||||
"-Dapidocs=false"
|
"-Dapidocs=false"
|
||||||
"-Ddocs=false"
|
"-Ddocs=false"
|
||||||
"-Dvapi=true"
|
"-Dvapi=true"
|
||||||
|
"-Dinstalled_test_prefix=${placeholder "installedTests"}"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
passthru = {
|
||||||
|
tests = {
|
||||||
|
installed-tests = nixosTests.installed-tests.appstream;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Software metadata handling library";
|
description = "Software metadata handling library";
|
||||||
homepage = "https://www.freedesktop.org/wiki/Distributions/AppStream/";
|
homepage = "https://www.freedesktop.org/wiki/Distributions/AppStream/";
|
||||||
|
|
|
@ -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
|
diff --git a/data/meson.build b/data/meson.build
|
||||||
index 1eb3dfb0..623b66ec 100644
|
index 53f31cb4..90f40e77 100644
|
||||||
--- a/data/meson.build
|
--- a/data/meson.build
|
||||||
+++ b/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_data('appstream.conf',
|
||||||
- install_dir: get_option('sysconfdir'))
|
- install_dir: get_option('sysconfdir'))
|
||||||
+ install_dir: get_option('prefix') / 'etc')
|
+ 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
|
diff --git a/meson.build b/meson.build
|
||||||
index dc1fb1a5..5ee03b73 100644
|
index 2efe86b7..9dc79e28 100644
|
||||||
--- a/meson.build
|
--- a/meson.build
|
||||||
+++ b/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')
|
dependency('gobject-introspection-1.0', version: '>=1.56')
|
||||||
endif
|
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
|
# TODO: look into using the libraries from the regular appstream derivation as we keep duplicates here
|
||||||
|
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
pname = "appstream-qt";
|
pname = "appstream-qt";
|
||||||
inherit (appstream) version src patches;
|
inherit (appstream) version src;
|
||||||
|
|
||||||
outputs = [ "out" "dev" ];
|
outputs = [ "out" "dev" "installedTests" ];
|
||||||
|
|
||||||
buildInputs = appstream.buildInputs ++ [ appstream qtbase ];
|
buildInputs = appstream.buildInputs ++ [ appstream qtbase ];
|
||||||
|
|
||||||
|
@ -14,11 +14,26 @@ mkDerivation {
|
||||||
|
|
||||||
mesonFlags = appstream.mesonFlags ++ [ "-Dqt=true" ];
|
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 = ''
|
postFixup = ''
|
||||||
sed -i "$dev/lib/cmake/AppStreamQt/AppStreamQtConfig.cmake" \
|
sed -i "$dev/lib/cmake/AppStreamQt/AppStreamQtConfig.cmake" \
|
||||||
-e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@"
|
-e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
passthru = appstream.passthru // {
|
||||||
|
tests = {
|
||||||
|
installed-tests = nixosTests.installed-tests.appstream-qt;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
meta = appstream.meta // {
|
meta = appstream.meta // {
|
||||||
description = "Software metadata handling library - Qt";
|
description = "Software metadata handling library - Qt";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ stdenv
|
{ stdenv
|
||||||
, lib
|
, lib
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, fetchpatch
|
||||||
, docbook_xml_dtd_43
|
, docbook_xml_dtd_43
|
||||||
, docbook_xsl
|
, docbook_xsl
|
||||||
, glib
|
, glib
|
||||||
|
@ -30,6 +31,13 @@ stdenv.mkDerivation rec {
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
./installed-tests-path.patch
|
./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 = [
|
nativeBuildInputs = [
|
||||||
|
@ -72,6 +80,6 @@ stdenv.mkDerivation rec {
|
||||||
homepage = "https://github.com/hughsie/libxmlb";
|
homepage = "https://github.com/hughsie/libxmlb";
|
||||||
license = licenses.lgpl21Plus;
|
license = licenses.lgpl21Plus;
|
||||||
maintainers = with maintainers; [ jtojnar ];
|
maintainers = with maintainers; [ jtojnar ];
|
||||||
platforms = platforms.linux;
|
platforms = platforms.unix;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,7 +21,7 @@ buildDunePackage rec {
|
||||||
description = "OCaml binding for the fdk-aac library";
|
description = "OCaml binding for the fdk-aac library";
|
||||||
inherit (src.meta) homepage;
|
inherit (src.meta) homepage;
|
||||||
license = lib.licenses.gpl2Only;
|
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 = [
|
maintainers = [
|
||||||
lib.maintainers.maggesi
|
lib.maintainers.maggesi
|
||||||
lib.maintainers.anmonteiro
|
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 }:
|
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
||||||
let
|
let
|
||||||
pname = "phing";
|
pname = "phing";
|
||||||
version = "2.17.1";
|
version = "2.17.2";
|
||||||
in
|
in
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.phing.info/get/phing-${version}.phar";
|
url = "https://www.phing.info/get/phing-${version}.phar";
|
||||||
sha256 = "sha256-Sf2fdy9b1wmXEDA3S4CRksH/DhAIirIy6oekWE1TNjE=";
|
sha256 = "sha256-KDqJdHIqgtar6ofNG4ENRlpRg9XYFeL5YS7Rclh1+PQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
||||||
let
|
let
|
||||||
pname = "php-cs-fixer";
|
pname = "php-cs-fixer";
|
||||||
version = "3.6.0";
|
version = "3.7.0";
|
||||||
in
|
in
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
|
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;
|
dontUnpack = true;
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
{ mkDerivation, fetchurl, makeWrapper, lib, php }:
|
||||||
let
|
let
|
||||||
pname = "phpstan";
|
pname = "phpstan";
|
||||||
version = "1.4.7";
|
version = "1.4.8";
|
||||||
in
|
in
|
||||||
mkDerivation {
|
mkDerivation {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
|
url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
|
||||||
sha256 = "sha256-bsSdFfUVQnbDFH8hO1Z9sHA2w7pMHlLEx1hsgDdCUmE=";
|
sha256 = "sha256-ghXyPo9n2oXAz7BvuvBYjyJnUqf/FvNk8nTPIRv19cw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
|
|
|
@ -6,12 +6,12 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "azure-synapse-artifacts";
|
pname = "azure-synapse-artifacts";
|
||||||
version = "0.11.0";
|
version = "0.12.0";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
extension = "zip";
|
extension = "zip";
|
||||||
sha256 = "79eb973280ea89c0e6e2872d8f3f175b172b7438c2e2b9b4e655ae206be705fa";
|
sha256 = "sha256-IfQWsITuThzh+TRgv99JTtcDFY3gMq5PjALkN4mJEZo=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "censys";
|
pname = "censys";
|
||||||
version = "2.1.2";
|
version = "2.1.3";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||||
owner = "censys";
|
owner = "censys";
|
||||||
repo = "censys-python";
|
repo = "censys-python";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0qxqd5ip98d6q1d48vcprpr38sa47ky3cr6lprd01nzibdmf2r2d";
|
sha256 = "sha256-Zv3ViOrdQby+7UQrHy6174W2qh1vx21R0yOA7ecr0lU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "emoji";
|
pname = "emoji";
|
||||||
version = "1.6.3";
|
version = "1.7.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "carpedm20";
|
owner = "carpedm20";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-0QOtsHGhqbjaEDpSbUXdE8+u6xzWbrTexx+BAeYwKa8=";
|
sha256 = "sha256-vKQ51RP7uy57vP3dOnHZRSp/Wz+YDzeLUR8JnIELE/I=";
|
||||||
};
|
};
|
||||||
|
|
||||||
checkInputs = [
|
checkInputs = [
|
||||||
|
|
|
@ -16,11 +16,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-asset";
|
pname = "google-cloud-asset";
|
||||||
version = "3.8.0";
|
version = "3.8.1";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-4r1F7OgMS3TZdmEgXf5TtY4xv/YWInS6NyY6Ay4l8Ig=";
|
sha256 = "sha256-DvbHQV71hTsWtjN/D1+bHGLSss+UidCZRi3J0zTa07U=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -11,11 +11,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-bigquery-logging";
|
pname = "google-cloud-bigquery-logging";
|
||||||
version = "1.0.1";
|
version = "1.0.2";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "3cdbf4f82199d2ee0d07fa2c75527661fe034130e27e5c05fd070ed615cd7e23";
|
sha256 = "sha256-i8Bh39MnQRQtE4WwDNhHdxFX2bGL6txT+sV8RcvXiZw=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -7,20 +7,32 @@
|
||||||
, proto-plus
|
, proto-plus
|
||||||
, pytestCheckHook
|
, pytestCheckHook
|
||||||
, pytest-asyncio
|
, pytest-asyncio
|
||||||
|
, pythonOlder
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-dataproc";
|
pname = "google-cloud-dataproc";
|
||||||
version = "4.0.0";
|
version = "4.0.1";
|
||||||
|
format = "setuptools";
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
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 = [
|
disabledTests = [
|
||||||
# requires credentials
|
# requires credentials
|
||||||
|
|
|
@ -12,11 +12,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-error-reporting";
|
pname = "google-cloud-error-reporting";
|
||||||
version = "1.5.0";
|
version = "1.5.1";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-qvhZU7T2fHA2uRyXJjRxqeEAFwShH+TpGwICczgX7Sk=";
|
sha256 = "sha256-7gFpvFxtYneABxW2mOwW1V2E7kobmj0yzV0pxaRhs8c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -13,11 +13,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-firestore";
|
pname = "google-cloud-firestore";
|
||||||
version = "2.3.4";
|
version = "2.4.0";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-cU4bwfxRAp14qmSTO+8u/APa7clWXqeeyRuEOwUgFuw=";
|
sha256 = "sha256-9+esejwSitfYEkD03KsPiTIKxmYhRxTrgfy3QKqIIO4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -7,20 +7,32 @@
|
||||||
, proto-plus
|
, proto-plus
|
||||||
, pytestCheckHook
|
, pytestCheckHook
|
||||||
, pytest-asyncio
|
, pytest-asyncio
|
||||||
|
, pythonOlder
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-language";
|
pname = "google-cloud-language";
|
||||||
version = "2.4.0";
|
version = "2.4.1";
|
||||||
|
format = "setuptools";
|
||||||
|
|
||||||
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
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 = [
|
pythonImportsCheck = [
|
||||||
"google.cloud.language"
|
"google.cloud.language"
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-org-policy";
|
pname = "google-cloud-org-policy";
|
||||||
version = "1.3.0";
|
version = "1.3.1";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-IbQP2/XMdwzmY3UgINiUvdd1Y1ABJkhh7x7x3kiR4Is=";
|
sha256 = "sha256-r9qz2/HjDYHXu9jY03rt0QC1BofzQ/HrKVjGCtvXzsU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ google-api-core proto-plus ];
|
propagatedBuildInputs = [ google-api-core proto-plus ];
|
||||||
|
|
|
@ -11,11 +11,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-texttospeech";
|
pname = "google-cloud-texttospeech";
|
||||||
version = "2.10.1";
|
version = "2.10.2";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-5uFtHqZJgouUBgkGNqSBFQrWaU2Gm06icDjKx57HY94=";
|
sha256 = "sha256-EykIDxoO8ePp4hLtINTz/RahfS4KU7GhwS4gkMBA32w=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ libcst google-api-core proto-plus ];
|
propagatedBuildInputs = [ libcst google-api-core proto-plus ];
|
||||||
|
|
|
@ -12,11 +12,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-trace";
|
pname = "google-cloud-trace";
|
||||||
version = "1.6.0";
|
version = "1.6.1";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-MXbuSWVezxsXGrRgGqhLWFF5iByiYRKA1/qbqYawPRQ=";
|
sha256 = "sha256-JkKW9vJAAkw3sHYDapRvu5jjunV8oWSg/ykDmd1wpyA=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ google-api-core google-cloud-core proto-plus ];
|
propagatedBuildInputs = [ google-api-core google-cloud-core proto-plus ];
|
||||||
|
|
|
@ -14,14 +14,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-cloud-translate";
|
pname = "google-cloud-translate";
|
||||||
version = "3.7.1";
|
version = "3.7.2";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
hash = "sha256-x4gSLVNo2uk93GWpvcPM20f0gJ1S3x/BVe13oNIpa0Y=";
|
hash = "sha256-icZG33G/noii9V0rsHTG/Qe8cKDVDfASRKy2XRYM5Yg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -12,11 +12,11 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "google-resumable-media";
|
pname = "google-resumable-media";
|
||||||
version = "2.3.1";
|
version = "2.3.2";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-H02LFRlnZv34qGD9LPqmGEE4cH7F+SHNGDQGel39Lbc=";
|
sha256 = "sha256-BpJOix558VjwIC590VGtdbDqnVm5l8hQ9WvdSlo2FRM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [ google-auth google-crc32c requests ];
|
propagatedBuildInputs = [ google-auth google-crc32c requests ];
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "meshtastic";
|
pname = "meshtastic";
|
||||||
version = "1.2.88";
|
version = "1.2.90";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||||
owner = "meshtastic";
|
owner = "meshtastic";
|
||||||
repo = "Meshtastic-python";
|
repo = "Meshtastic-python";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-iNDS1QjlDiXb89g7Gut+5ShbgtCCHBSJuQmXfHaTXB8=";
|
sha256 = "sha256-n/M1Q6YS3EkUcn45ffiTy0wuj9yKf6qBLLfD2XJkhHU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -9,14 +9,14 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "plaid-python";
|
pname = "plaid-python";
|
||||||
version = "9.0.0";
|
version = "9.1.0";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
disabled = pythonOlder "3.6";
|
disabled = pythonOlder "3.6";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
hash = "sha256-jZRfJVBSUOrfaPx8yGCwigfDghUgO0dK8aUKrOf9G1E=";
|
hash = "sha256-jvg/2dL+W4N7rbbBcIUZUrSt0BCV15k4QgYST2lEA5U=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -15,7 +15,7 @@ buildPythonPackage rec {
|
||||||
propagatedBuildInputs = [ numpy mpi4py precice ];
|
propagatedBuildInputs = [ numpy mpi4py precice ];
|
||||||
|
|
||||||
doCheck = false; # Disable Test because everything depends on open mpi which requires network.
|
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; {
|
meta = with lib; {
|
||||||
description = "Python language bindings for preCICE";
|
description = "Python language bindings for preCICE";
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "radios";
|
pname = "radios";
|
||||||
version = "0.1.0";
|
version = "0.1.1";
|
||||||
|
|
||||||
disabled = pythonOlder "3.9";
|
disabled = pythonOlder "3.9";
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||||
owner = "frenck";
|
owner = "frenck";
|
||||||
repo = "python-radios";
|
repo = "python-radios";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-3xRtOGY9DYnZN0g95213vWDbO3/XZZ5+s7A9sqNmO/w=";
|
hash = "sha256-NCBch9MCWVD6ez0sIUph8rwOOzEMZtwC4atXJe53xZM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "sphinxext-opengraph";
|
pname = "sphinxext-opengraph";
|
||||||
version = "0.6.1";
|
version = "0.6.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "wpilibsuite";
|
owner = "wpilibsuite";
|
||||||
repo = "sphinxext-opengraph";
|
repo = "sphinxext-opengraph";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-kaKOKeztP89SLF4yrUFW1TTAEyAaCTm2XCcOH0b+Dzc=";
|
sha256 = "sha256-3bZFFtGW6j/3m/3F4+tapZujzpMZnrIcYTngDCNGylI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "types-setuptools";
|
pname = "types-setuptools";
|
||||||
version = "57.4.9";
|
version = "57.4.10";
|
||||||
format = "setuptools";
|
format = "setuptools";
|
||||||
|
|
||||||
src = fetchPypi {
|
src = fetchPypi {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
sha256 = "sha256-U273R0T44eS+T8cZiH+IbnTkzzx5K0oGmEMgvk30ULU=";
|
sha256 = "sha256-mhNRNnnGQPZhbi2atQ1DHJnKiumEipckP4h8gP1c8pQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Module doesn't have tests
|
# Module doesn't have tests
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ stdenv, runCommand, ruby, lib, rsync
|
{ stdenv, runCommand, ruby, lib, rsync
|
||||||
, defaultGemConfig, buildRubyGem, buildEnv
|
, defaultGemConfig, buildRubyGem, buildEnv
|
||||||
, makeWrapper
|
, makeBinaryWrapper
|
||||||
, bundler
|
, bundler
|
||||||
}@defs:
|
}@defs:
|
||||||
|
|
||||||
|
@ -118,9 +118,12 @@ let
|
||||||
|
|
||||||
wrappedRuby = stdenv.mkDerivation {
|
wrappedRuby = stdenv.mkDerivation {
|
||||||
name = "wrapped-ruby-${pname'}";
|
name = "wrapped-ruby-${pname'}";
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
|
||||||
inherit (ruby) gemPath meta;
|
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||||
buildCommand = ''
|
|
||||||
|
dontUnpack = true;
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
for i in ${ruby}/bin/*; do
|
for i in ${ruby}/bin/*; do
|
||||||
makeWrapper "$i" $out/bin/$(basename "$i") \
|
makeWrapper "$i" $out/bin/$(basename "$i") \
|
||||||
|
@ -131,6 +134,15 @@ let
|
||||||
--set GEM_PATH ${basicEnv}/${ruby.gemPath}
|
--set GEM_PATH ${basicEnv}/${ruby.gemPath}
|
||||||
done
|
done
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
dontInstall = true;
|
||||||
|
|
||||||
|
doCheck = true;
|
||||||
|
checkPhase = ''
|
||||||
|
$out/bin/ruby --help > /dev/null
|
||||||
|
'';
|
||||||
|
|
||||||
|
inherit (ruby) meta;
|
||||||
};
|
};
|
||||||
|
|
||||||
env = let
|
env = let
|
||||||
|
|
|
@ -32,13 +32,13 @@ with py.pkgs;
|
||||||
|
|
||||||
buildPythonApplication rec {
|
buildPythonApplication rec {
|
||||||
pname = "checkov";
|
pname = "checkov";
|
||||||
version = "2.0.923";
|
version = "2.0.927";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "bridgecrewio";
|
owner = "bridgecrewio";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = version;
|
rev = version;
|
||||||
hash = "sha256-EvT1nEE58gtlpRKEZkVaZ0mjABldmioW9u1foF8RCJI=";
|
hash = "sha256-g/aJT1ZbD7wrsb4M3tvGmhWbElmnZbQkP0I0KV7J80c=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = with py.pkgs; [
|
nativeBuildInputs = with py.pkgs; [
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
{ lib, stdenv, fetchgit, cmake, pcre, doxygen }:
|
{ lib, stdenv, fetchFromGitHub, cmake, pcre, doxygen }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "editorconfig-core-c";
|
pname = "editorconfig-core-c";
|
||||||
version = "0.12.1";
|
version = "0.12.1";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchFromGitHub {
|
||||||
url = "https://github.com/editorconfig/editorconfig-core-c.git";
|
owner = "editorconfig";
|
||||||
|
repo = "editorconfig-core-c";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0awpb63ci85kal3pnlj2b54bay8igj1rbc13d8gqkvidlb51nnx4";
|
sha256 = "sha256-pFsbyqIt7okfaiOwlYN8EXm1SFlCUnsHVbOgyIZZlys=";
|
||||||
fetchSubmodules = true;
|
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 {
|
stdenv.mkDerivation rec {
|
||||||
pname = "fheroes2";
|
pname = "fheroes2";
|
||||||
version = "0.9.12";
|
version = "0.9.13";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ihhub";
|
owner = "ihhub";
|
||||||
repo = "fheroes2";
|
repo = "fheroes2";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "sha256-6voM6aQ22zW6NHm9x2TDsM4Kea6TLYZTdSLyc/6fz8A=";
|
sha256 = "sha256-+VAgS7NR/D0HD/Fy7idSUTMJPp2ctpirMpcFooo+bEg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ gettext libpng SDL2 SDL2_image SDL2_mixer SDL2_ttf zlib ];
|
buildInputs = [ gettext libpng SDL2 SDL2_image SDL2_mixer SDL2_ttf zlib ];
|
||||||
|
|
|
@ -24,7 +24,13 @@ stdenv.mkDerivation rec {
|
||||||
curl libjpeg libpng gettext cunit
|
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 = {
|
meta = {
|
||||||
homepage = "http://ufoai.org";
|
homepage = "http://ufoai.org";
|
||||||
|
|
|
@ -139,6 +139,12 @@ in {
|
||||||
filesToInstall = ["u-boot-sunxi-with-spl.bin"];
|
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 {
|
ubootAmx335xEVM = buildUBoot {
|
||||||
defconfig = "am335x_evm_defconfig";
|
defconfig = "am335x_evm_defconfig";
|
||||||
extraMeta.platforms = ["armv7l-linux"];
|
extraMeta.platforms = ["armv7l-linux"];
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ callPackage, openssl_3_0, ... }@args:
|
{ callPackage, openssl_3_0, ... }@args:
|
||||||
|
|
||||||
callPackage ./generic.nix (args // { openssl = openssl_3_0; }) {
|
callPackage ./generic.nix (args // { openssl = openssl_3_0; }) {
|
||||||
version = "1.21.5";
|
version = "1.21.6";
|
||||||
sha256 = "sha256-sg879TOlGKbw86eWff7thy0mjTHkzBIaAAEylgLdz7s=";
|
sha256 = "1bh52jqqcaj5wlh2kvhxr00jhk2hnk8k97ki4pwyj4c8920p1p36";
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,13 +5,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "mapcache";
|
pname = "mapcache";
|
||||||
version = "1.10.0";
|
version = "1.12.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "MapServer";
|
owner = "MapServer";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "rel-${lib.replaceStrings [ "." ] [ "-" ] version}";
|
rev = "rel-${lib.replaceStrings [ "." ] [ "-" ] version}";
|
||||||
sha256 = "sha256-HrvcJAf0a6tu8AKKuW5TaCtqPMgzH21fGMBxIfUzdgY=";
|
sha256 = "sha256-13lOQC4PJtByhvceuF00uoipLFHrFiyJrsy2iWcEANc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -5,13 +5,13 @@ with lib;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "grml-zsh-config";
|
pname = "grml-zsh-config";
|
||||||
version = "0.19.0";
|
version = "0.19.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "grml";
|
owner = "grml";
|
||||||
repo = "grml-etc-core";
|
repo = "grml-etc-core";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-Vn8NzpvJ1W/+UUuhr1plLqskVBUOFJHvy+hxKE3DmIs=";
|
sha256 = "sha256-GEuBYN6HVAjiAbusVuEA7zBG9fIVZHLV628Jt6Cv5cM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ zsh coreutils txt2tags procps ]
|
buildInputs = [ zsh coreutils txt2tags procps ]
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage rec {
|
||||||
pname = "colmena";
|
pname = "colmena";
|
||||||
version = "0.2.1";
|
version = "0.2.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "zhaofengli";
|
owner = "zhaofengli";
|
||||||
repo = "colmena";
|
repo = "colmena";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-5UU8iBzwO7xM8B+LulnFkJFv5j5lu7mfq0XMmOCaKcQ=";
|
sha256 = "sha256-VsqFiqZUjGpDZfw6ws1rvqm/NGUfFBXHa0N8ZkBaMh8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoSha256 = "sha256-wMC2GAVVxkwrgJtOIJL0P+Uxh+ouW4VwLDrXJlD10AA=";
|
cargoSha256 = "sha256-NVvPh0+53YIm5Kb/lNyXb7M3bbADBVdsTaPptyb37lw=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
|
||||||
desktopItems = [(makeDesktopItem {
|
desktopItems = [(makeDesktopItem {
|
||||||
name = "agi";
|
name = "agi";
|
||||||
desktopName = "Android GPU Inspector";
|
desktopName = "Android GPU Inspector";
|
||||||
exec = "$out/bin/agi";
|
exec = "agi";
|
||||||
icon = "agi";
|
icon = "agi";
|
||||||
categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ];
|
categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ];
|
||||||
})];
|
})];
|
||||||
|
|
|
@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
|
||||||
desktopItems = [(makeDesktopItem {
|
desktopItems = [(makeDesktopItem {
|
||||||
name = pname;
|
name = pname;
|
||||||
desktopName = "Snapdragon Profiler";
|
desktopName = "Snapdragon Profiler";
|
||||||
exec = "$out/bin/snapdragon-profiler";
|
exec = "snapdragon-profiler";
|
||||||
icon = "snapdragon-profiler";
|
icon = "snapdragon-profiler";
|
||||||
comment = meta.description;
|
comment = meta.description;
|
||||||
categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ];
|
categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ];
|
||||||
|
|
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "kepubify";
|
pname = "kepubify";
|
||||||
version = "4.0.3";
|
version = "4.0.4";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "pgaskin";
|
owner = "pgaskin";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
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}" ];
|
ldflags = [ "-s" "-w" "-X main.version=${version}" ];
|
||||||
|
|
||||||
|
|
|
@ -3,12 +3,12 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "nncp";
|
pname = "nncp";
|
||||||
version = "8.7.0";
|
version = "8.7.1";
|
||||||
outputs = [ "out" "doc" "info" ];
|
outputs = [ "out" "doc" "info" ];
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://www.nncpgo.org/download/${pname}-${version}.tar.xz";
|
url = "http://www.nncpgo.org/download/${pname}-${version}.tar.xz";
|
||||||
sha256 = "sha256-7UiP/X2IAovdZDhr7ErZEW99oIgfseYoST0vK7vR6Gg=";
|
hash = "sha256-zrTRl69ajZ6Tt0nVwPULU+Z0ajGK9Hs2S/XLMj1sTr0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ go redo-apenwarr ];
|
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
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "networkmanager";
|
pname = "networkmanager";
|
||||||
version = "1.34.0";
|
version = "1.36.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnome/sources/NetworkManager/${lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
|
url = "mirror://gnome/sources/NetworkManager/${lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
|
||||||
sha256 = "sha256-gZeV0ImQdiBPVnJCGljxsdnjk1Nu6Hu4RLkR5iQ78L0=";
|
sha256 = "1aqc8z8zv1sds439ilihwqczwg9iqzki0f007fd2x0s17fz5r1db";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = [ "out" "dev" "devdoc" "man" "doc" ];
|
outputs = [ "out" "dev" "devdoc" "man" "doc" ];
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
diff --git a/data/84-nm-drivers.rules b/data/84-nm-drivers.rules
|
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
|
--- a/data/84-nm-drivers.rules
|
||||||
+++ b/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?)
|
# Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?)
|
||||||
ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end"
|
ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end"
|
||||||
DRIVERS=="?*", GOTO="nm_drivers_end"
|
DRIVERS=="?*", GOTO="nm_drivers_end"
|
||||||
|
@ -24,19 +24,19 @@ index e23b3a5282..c7246a3b61 100644
|
||||||
ExecStart=@sbindir@/NetworkManager --no-daemon
|
ExecStart=@sbindir@/NetworkManager --no-daemon
|
||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c
|
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
|
--- a/src/core/devices/nm-device.c
|
||||||
+++ b/src/core/devices/nm-device.c
|
+++ b/src/core/devices/nm-device.c
|
||||||
@@ -13994,14 +13994,14 @@ nm_device_start_ip_check(NMDevice *self)
|
@@ -13571,14 +13571,14 @@ nm_device_start_ip_check(NMDevice *self)
|
||||||
gw = nm_ip4_config_best_default_route_get(priv->ip_config_4);
|
gw = nm_l3_config_data_get_best_default_route(l3cd, AF_INET);
|
||||||
if (gw) {
|
if (gw) {
|
||||||
_nm_utils_inet4_ntop(NMP_OBJECT_CAST_IP4_ROUTE(gw)->gateway, buf);
|
_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 = nm_utils_find_helper("ping", "/usr/bin/ping", NULL);
|
||||||
+ ping_binary = "@iputils@/bin/ping";
|
+ ping_binary = "@iputils@/bin/ping";
|
||||||
log_domain = LOGD_IP4;
|
log_domain = LOGD_IP4;
|
||||||
}
|
}
|
||||||
} else if (priv->ip_config_6 && priv->ip_state_6 == NM_DEVICE_IP_STATE_DONE) {
|
} else if (priv->ip_data_6.state == NM_DEVICE_IP_STATE_READY) {
|
||||||
gw = nm_ip6_config_best_default_route_get(priv->ip_config_6);
|
gw = nm_l3_config_data_get_best_default_route(l3cd, AF_INET6);
|
||||||
if (gw) {
|
if (gw) {
|
||||||
_nm_utils_inet6_ntop(&NMP_OBJECT_CAST_IP6_ROUTE(gw)->gateway, buf);
|
_nm_utils_inet6_ntop(&NMP_OBJECT_CAST_IP6_ROUTE(gw)->gateway, buf);
|
||||||
- ping_binary = nm_utils_find_helper("ping6", "/usr/bin/ping6", NULL);
|
- 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(),
|
'--lib-path', meson.current_build_dir(),
|
||||||
'--gir', '@INPUT@',
|
'--gir', '@INPUT@',
|
||||||
diff --git a/src/libnm-platform/nm-platform-utils.c b/src/libnm-platform/nm-platform-utils.c
|
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
|
--- a/src/libnm-platform/nm-platform-utils.c
|
||||||
+++ b/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 */
|
/* construct the argument list */
|
||||||
argv = g_ptr_array_sized_new(4);
|
argv = g_ptr_array_sized_new(4);
|
||||||
|
@ -78,13 +78,13 @@ index 6435dcc482..214d01194e 100644
|
||||||
g_ptr_array_add(argv, (char *) arg1);
|
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
|
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
|
--- a/src/libnmc-base/nm-vpn-helpers.c
|
||||||
+++ b/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,
|
@@ -198,25 +198,8 @@ nm_vpn_openconnect_authenticate_helper(const char *host,
|
||||||
gs_free const char **output_v = NULL;
|
gs_free const char **output_v = NULL;
|
||||||
const char *const * iter;
|
const char *const *iter;
|
||||||
const char * path;
|
const char *path;
|
||||||
- const char *const DEFAULT_PATHS[] = {
|
- const char *const DEFAULT_PATHS[] = {
|
||||||
- "/sbin/",
|
- "/sbin/",
|
||||||
- "/usr/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 {
|
buildGoModule rec {
|
||||||
pname = "tendermint";
|
pname = "tendermint";
|
||||||
version = "0.35.1";
|
version = "0.35.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "tendermint";
|
owner = "tendermint";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-eEvSELCzpAm9Me46U54MQEQiAPCFlBa5iG2AZMn5BbE=";
|
sha256 = "sha256-QCCDZ0zsAqV7tvlBeyTpN5iz/jBc50oBgrmUB/R5wCY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorSha256 = "sha256-aYY3rGm2Wvd5v1QrfhN0jWzAO9JYu4j5ZHk9UyEPjH8=";
|
vendorSha256 = "sha256-h4sNfV8B+WGgfVPDmWVNek7fQo5qZ3+VGkx4VSw4QF8=";
|
||||||
|
|
||||||
subPackages = [ "cmd/tendermint" ];
|
subPackages = [ "cmd/tendermint" ];
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
filepath,
|
filepath,
|
||||||
generic-optics,
|
generic-optics,
|
||||||
HUnit,
|
HUnit,
|
||||||
|
installShellFiles,
|
||||||
lib,
|
lib,
|
||||||
lock-file,
|
lock-file,
|
||||||
MemoTrie,
|
MemoTrie,
|
||||||
|
@ -140,11 +141,18 @@ mkDerivation {
|
||||||
maintainers = with lib.maintainers; [maralorn];
|
maintainers = with lib.maintainers; [maralorn];
|
||||||
passthru.updateScript = ./update.sh;
|
passthru.updateScript = ./update.sh;
|
||||||
testTarget = "unit-tests";
|
testTarget = "unit-tests";
|
||||||
|
buildTools = [installShellFiles];
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
cat > $out/bin/nom-build << EOF
|
cat > $out/bin/nom-build << EOF
|
||||||
#!${runtimeShell}
|
#!${runtimeShell}
|
||||||
${expect}/bin/unbuffer nix-build "\$@" 2>&1 | exec $out/bin/nom
|
${expect}/bin/unbuffer nix-build "\$@" 2>&1 | exec $out/bin/nom
|
||||||
EOF
|
EOF
|
||||||
chmod a+x $out/bin/nom-build
|
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…
Add table
Add a link
Reference in a new issue