Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2022-06-01 00:15:07 +00:00 committed by GitHub
commit 68b515131f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
154 changed files with 3481 additions and 2562 deletions

View File

@ -22,7 +22,7 @@ For new packages please briefly describe the package or provide a link to its ho
- made sure NixOS tests are [linked](https://nixos.org/manual/nixpkgs/unstable/#ssec-nixos-tests-linking) to the relevant packages
- [ ] Tested compilation of all packages that depend on this change using `nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"`. Note: all changes have to be committed, also see [nixpkgs-review usage](https://github.com/Mic92/nixpkgs-review#usage)
- [ ] Tested basic functionality of all binary files (usually in `./result/bin/`)
- [22.11 Release Notes (or backporting 21.11 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2211-release-notes)
- [22.11 Release Notes (or backporting 22.05 Release notes)](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#generating-2211-release-notes)
- [ ] (Package updates) Added a release notes entry if the change is major or breaking
- [ ] (Module updates) Added a release notes entry if the change is significant
- [ ] (Module addition) Added a release notes entry if adding a new NixOS module

View File

@ -51,9 +51,9 @@ Nixpkgs and NixOS are built and tested by our continuous integration
system, [Hydra](https://hydra.nixos.org/).
* [Continuous package builds for unstable/master](https://hydra.nixos.org/jobset/nixos/trunk-combined)
* [Continuous package builds for the NixOS 21.11 release](https://hydra.nixos.org/jobset/nixos/release-21.11)
* [Continuous package builds for the NixOS 22.05 release](https://hydra.nixos.org/jobset/nixos/release-22.05)
* [Tests for unstable/master](https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents)
* [Tests for the NixOS 21.11 release](https://hydra.nixos.org/job/nixos/release-21.11/tested#tabs-constituents)
* [Tests for the NixOS 22.05 release](https://hydra.nixos.org/job/nixos/release-22.05/tested#tabs-constituents)
Artifacts successfully built with Hydra are published to cache at
https://cache.nixos.org/. When successful build and test criteria are

View File

@ -507,7 +507,7 @@ rec {
compareLists compare [ "a" ] []
=> 1
compareLists compare [ "a" "b" ] [ "a" "c" ]
=> 1
=> -1
*/
compareLists = cmp: a: b:
if a == []

View File

@ -355,6 +355,16 @@ with lib.maintainers; {
shortName = "Linux Kernel";
};
lumiguide = {
# Verify additions by approval of an already existing member of the team.
members = [
roelvandijk
lucus16
];
scope = "Group registration for LumiGuide employees who collectively maintain packages.";
shortName = "Lumiguide employees";
};
lumina = {
members = [
romildo

View File

@ -615,7 +615,7 @@
version of the <literal>xmonad</literal> module, which will
break your configuration if you use <literal>launch</literal>
as entrypoint. The example code the corresponding nixos module
was adjusted, you way want to have a look at it.
was adjusted, you may want to have a look at it.
</para>
</listitem>
<listitem>

View File

@ -195,7 +195,7 @@ In addition to numerous new and upgraded packages, this release has the followin
- The update of the haskell package set brings with it a new version of the `xmonad`
module, which will break your configuration if you use `launch` as entrypoint. The
example code the corresponding nixos module was adjusted, you way want to have a look at it.
example code the corresponding nixos module was adjusted, you may want to have a look at it.
- The `home-assistant` module now requires users that don't want their
configuration to be managed declaratively to set

View File

@ -50,11 +50,6 @@ let
# they way through, but has the last priority behind everything else.
nixpkgs.system = lib.mkDefault system;
# Stash the value of the `system` argument. When using `nesting.children`
# we want to have the same default value behavior (immediately above)
# without any interference from the user's configuration.
nixpkgs.initialSystem = system;
_module.args.pkgs = lib.mkIf (pkgs_ != null) (lib.mkForce pkgs_);
};
};

View File

@ -67,6 +67,7 @@ in
imports = [
./assertions.nix
./meta.nix
(mkRemovedOptionModule [ "nixpkgs" "initialSystem" ] "The NixOS options `nesting.clone` and `nesting.children` have been deleted, and replaced with named specialisation. Therefore `nixpgks.initialSystem` has no effect anymore.")
];
options.nixpkgs = {
@ -219,14 +220,6 @@ in
Ignored when <code>nixpkgs.pkgs</code> is set.
'';
};
initialSystem = mkOption {
type = types.str;
internal = true;
description = ''
Preserved value of <literal>system</literal> passed to <literal>eval-config.nix</literal>.
'';
};
};
config = {

View File

@ -136,6 +136,24 @@ in
packages = [ atop (lib.mkIf cfg.netatop.enable cfg.netatop.package) ];
services =
mkService cfg.atopService.enable "atop" [ atop ]
// lib.mkIf cfg.atopService.enable {
# always convert logs to newer version first
# XXX might trigger TimeoutStart but restarting atop.service will
# convert remainings logs and start eventually
atop.serviceConfig.ExecStartPre = pkgs.writeShellScript "atop-update-log-format" ''
set -e -u
for logfile in "$LOGPATH"/atop_*
do
${atop}/bin/atopconvert "$logfile" "$logfile".new
# only replace old file if version was upgraded to avoid
# false positives for atop-rotate.service
if ! ${pkgs.diffutils}/bin/cmp -s "$logfile" "$logfile".new
then
${pkgs.coreutils}/bin/mv -v -f "$logfile".new "$logfile"
fi
done
'';
}
// mkService cfg.atopacctService.enable "atopacct" [ atop ]
// mkService cfg.netatop.enable "netatop" [ cfg.netatop.package ]
// mkService cfg.atopgpu.enable "atopgpu" [ atop ];

View File

@ -2,14 +2,13 @@
with lib;
let
cfg = config.services.libreddit;
args = concatStringsSep " " ([
"--port ${toString cfg.port}"
"--address ${cfg.address}"
] ++ optional cfg.redirect "--redirect-https");
let
cfg = config.services.libreddit;
args = concatStringsSep " " ([
"--port ${toString cfg.port}"
"--address ${cfg.address}"
]);
in
{
options = {
@ -30,12 +29,6 @@ in
description = "The port to listen on";
};
redirect = mkOption {
type = types.bool;
default = false;
description = "Enable the redirecting to HTTPS";
};
openFirewall = mkOption {
type = types.bool;
default = false;
@ -56,6 +49,31 @@ in
AmbientCapabilities = lib.mkIf (cfg.port < 1024) [ "CAP_NET_BIND_SERVICE" ];
Restart = "on-failure";
RestartSec = "2s";
# Hardening
CapabilityBoundingSet = if (cfg.port < 1024) then [ "CAP_NET_BIND_SERVICE" ] else [ "" ];
DeviceAllow = [ "" ];
LockPersonality = true;
MemoryDenyWriteExecute = true;
PrivateDevices = true;
# A private user cannot have process capabilities on the host's user
# namespace and thus CAP_NET_BIND_SERVICE has no effect.
PrivateUsers = (cfg.port >= 1024);
ProcSubset = "pid";
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ];
RestrictNamespaces = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
SystemCallArchitectures = "native";
SystemCallFilter = [ "@system-service" "~@privileged" "~@resources" ];
UMask = "0077";
};
};

View File

@ -14,6 +14,7 @@ let
PATHS_PLUGINS = if builtins.isNull cfg.declarativePlugins then "${cfg.dataDir}/plugins" else declarativePlugins;
PATHS_LOGS = "${cfg.dataDir}/log";
SERVER_SERVE_FROM_SUBPATH = boolToString cfg.server.serveFromSubPath;
SERVER_PROTOCOL = cfg.protocol;
SERVER_HTTP_ADDR = cfg.addr;
SERVER_HTTP_PORT = cfg.port;
@ -41,9 +42,23 @@ let
USERS_AUTO_ASSIGN_ORG = boolToString cfg.users.autoAssignOrg;
USERS_AUTO_ASSIGN_ORG_ROLE = cfg.users.autoAssignOrgRole;
AUTH_DISABLE_LOGIN_FORM = boolToString cfg.auth.disableLoginForm;
AUTH_ANONYMOUS_ENABLED = boolToString cfg.auth.anonymous.enable;
AUTH_ANONYMOUS_ORG_NAME = cfg.auth.anonymous.org_name;
AUTH_ANONYMOUS_ORG_ROLE = cfg.auth.anonymous.org_role;
AUTH_AZUREAD_NAME = "Azure AD";
AUTH_AZUREAD_ENABLED = boolToString cfg.auth.azuread.enable;
AUTH_AZUREAD_ALLOW_SIGN_UP = boolToString cfg.auth.azuread.allowSignUp;
AUTH_AZUREAD_CLIENT_ID = cfg.auth.azuread.clientId;
AUTH_AZUREAD_SCOPES = "openid email profile";
AUTH_AZUREAD_AUTH_URL = "https://login.microsoftonline.com/${cfg.auth.azuread.tenantId}/oauth2/v2.0/authorize";
AUTH_AZUREAD_TOKEN_URL = "https://login.microsoftonline.com/${cfg.auth.azuread.tenantId}/oauth2/v2.0/token";
AUTH_AZUREAD_ALLOWED_DOMAINS = cfg.auth.azuread.allowedDomains;
AUTH_AZUREAD_ALLOWED_GROUPS = cfg.auth.azuread.allowedGroups;
AUTH_AZUREAD_ROLE_ATTRIBUTE_STRICT = false;
AUTH_GOOGLE_ENABLED = boolToString cfg.auth.google.enable;
AUTH_GOOGLE_ALLOW_SIGN_UP = boolToString cfg.auth.google.allowSignUp;
AUTH_GOOGLE_CLIENT_ID = cfg.auth.google.clientId;
@ -484,6 +499,14 @@ in {
};
};
server = {
serveFromSubPath = mkOption {
description = "Serve Grafana from subpath specified in rootUrl setting";
default = false;
type = types.bool;
};
};
smtp = {
enable = mkEnableOption "smtp";
host = mkOption {
@ -546,6 +569,12 @@ in {
};
auth = {
disableLoginForm = mkOption {
description = "Set to true to disable (hide) the login form, useful if you use OAuth";
default = false;
type = types.bool;
};
anonymous = {
enable = mkOption {
description = "Whether to allow anonymous access.";
@ -563,6 +592,53 @@ in {
type = types.str;
};
};
azuread = {
enable = mkOption {
description = "Whether to allow Azure AD OAuth.";
default = false;
type = types.bool;
};
allowSignUp = mkOption {
description = "Whether to allow sign up with Azure AD OAuth.";
default = false;
type = types.bool;
};
clientId = mkOption {
description = "Azure AD OAuth client ID.";
default = "";
type = types.str;
};
clientSecretFile = mkOption {
description = "Azure AD OAuth client secret.";
default = null;
type = types.nullOr types.path;
};
tenantId = mkOption {
description = ''
Tenant id used to create auth and token url. Default to "common"
, let user sign in with any tenant.
'';
default = "common";
type = types.str;
};
allowedDomains = mkOption {
description = ''
To limit access to authenticated users who are members of one or more groups,
set allowedGroups to a comma- or space-separated list of group object IDs.
You can find object IDs for a specific group on the Azure portal.
'';
default = "";
type = types.str;
};
allowedGroups = mkOption {
description = ''
Limits access to users who belong to specific domains.
Separate domains with space or comma.
'';
default = "";
type = types.str;
};
};
google = {
enable = mkOption {
description = "Whether to allow Google OAuth2.";
@ -652,6 +728,10 @@ in {
set -o errexit -o pipefail -o nounset -o errtrace
shopt -s inherit_errexit
${optionalString (cfg.auth.azuread.clientSecretFile != null) ''
GF_AUTH_AZUREAD_CLIENT_SECRET="$(<${escapeShellArg cfg.auth.azuread.clientSecretFile})"
export GF_AUTH_AZUREAD_CLIENT_SECRET
''}
${optionalString (cfg.auth.google.clientSecretFile != null) ''
GF_AUTH_GOOGLE_CLIENT_SECRET="$(<${escapeShellArg cfg.auth.google.clientSecretFile})"
export GF_AUTH_GOOGLE_CLIENT_SECRET

View File

@ -108,7 +108,7 @@ in {
-i ${pkgs.writeText "dmarc-exporter.json.template" json} \
-o ''${STATE_DIRECTORY}/dmarc-exporter.json
exec ${pkgs.prometheus-dmarc-exporter}/bin/prometheus-dmarc-exporter \
exec ${pkgs.dmarc-metrics-exporter}/bin/dmarc-metrics-exporter \
--configuration /var/lib/prometheus-dmarc-exporter/dmarc-exporter.json \
${optionalString cfg.debug "--debug"}
''}";

View File

@ -107,7 +107,7 @@ in
with subtest("gitolite server starts"):
server.wait_for_unit("gitolite-init.service")
server.wait_for_unit("sshd.service")
client.succeed("ssh gitolite@server info")
client.succeed("ssh -n gitolite@server info")
with subtest("admin can clone and configure gitolite-admin.git"):
client.succeed(

View File

@ -6,14 +6,16 @@ with lib;
name = "libreddit";
meta.maintainers = with maintainers; [ fab ];
nodes.machine =
{ pkgs, ... }:
{ services.libreddit.enable = true; };
nodes.machine = {
services.libreddit.enable = true;
# Test CAP_NET_BIND_SERVICE
services.libreddit.port = 80;
};
testScript = ''
machine.wait_for_unit("libreddit.service")
machine.wait_for_open_port("8080")
# The service wants to get data from https://www.reddit.com
machine.succeed("curl http://localhost:8080/")
machine.wait_for_open_port("80")
# Query a page that does not require Internet access
machine.succeed("curl --fail http://localhost:80/settings")
'';
})

View File

@ -43,6 +43,7 @@ import ../make-test-python.nix (
tls_certificate_path = "${cert}";
tls_private_key_path = "${key}";
enable_registration = true;
enable_registration_without_verification = true;
registration_shared_secret = "supersecret-registration";
listeners = [ {

View File

@ -5,9 +5,10 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
apiUrl = "http://${listenAddress}:${toString listenPort}";
uid = "movies";
indexJSON = pkgs.writeText "index.json" (builtins.toJSON { inherit uid; });
moviesJSON = pkgs.runCommand "movies.json" {} ''
sed -n '1,5p;$p' ${pkgs.meilisearch.src}/datasets/movies/movies.json > $out
'';
moviesJSON = pkgs.fetchurl {
url = "https://github.com/meilisearch/meilisearch/raw/v0.23.1/datasets/movies/movies.json";
sha256 = "1r3srld63dpmg9yrmysm6xl175661j5cspi93mk5q2wf8xwn50c5";
};
in {
name = "meilisearch";
meta.maintainers = with lib.maintainers; [ Br1ght0ne ];
@ -34,7 +35,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
with subtest("create index"):
machine.succeed(
"curl -XPOST ${apiUrl}/indexes --data @${indexJSON}"
"curl -XPOST --header 'Content-Type: application/json' ${apiUrl}/indexes --data @${indexJSON}"
)
indexes = json.loads(machine.succeed("curl ${apiUrl}/indexes"))
assert len(indexes) == 1, "index wasn't created"
@ -42,7 +43,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }:
with subtest("add documents"):
response = json.loads(
machine.succeed(
"curl -XPOST ${apiUrl}/indexes/${uid}/documents --data @${moviesJSON}"
"curl -XPOST --header 'Content-Type: application/json' ${apiUrl}/indexes/${uid}/documents --data @${moviesJSON}"
)
)
update_id = response["updateId"]

View File

@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchurl
, automoc4
, chromaprint
, cmake
, docbook_xml_dtd_45
@ -44,7 +43,6 @@ stdenv.mkDerivation rec {
wrapQtAppsHook
];
buildInputs = [
automoc4
chromaprint
ffmpeg
flac

View File

@ -3,13 +3,13 @@
buildDotnetModule rec {
pname = "btcpayserver";
version = "1.5.3";
version = "1.5.4";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "sha256-jPR996MEBCTT3k12qOdW1AO8LxA/pvQnw0qiW6//lcs=";
sha256 = "sha256-8GMk7xBMhml0X/8YRuN3FsEF2TWDxtb0eoP/cduKXNg=";
};
projectFile = "BTCPayServer/BTCPayServer.csproj";

View File

@ -54,6 +54,8 @@ git clone --depth 1 --branch v${newVersion} -c advice.detachedHead=false https:/
export GNUPGHOME=$tmpdir
# Fetch Nicolas Dorier's key (64-bit key ID: 6618763EF09186FE)
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys AB4CFA9895ACA0DBE27F6B346618763EF09186FE 2> /dev/null
# Fetch Andrew Camilleri's key (64-bit key ID: 8E5530D9D1C93097)
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys 836C08CF3F523BB7A8CB8ECF8E5530D9D1C93097 2> /dev/null
echo
echo "Verifying commit"
git -C $repo verify-commit HEAD

View File

@ -4,7 +4,7 @@
}:
rustPlatform.buildRustPackage rec {
pname = "nearcore";
version = "1.26.0";
version = "1.26.1";
# https://github.com/near/nearcore/tags
src = fetchFromGitHub {
@ -12,10 +12,10 @@ rustPlatform.buildRustPackage rec {
repo = "nearcore";
# there is also a branch for this version number, so we need to be explicit
rev = "refs/tags/${version}";
sha256 = "sha256-N3A+hy5I1/yJ3IN9gDw3m1IZ9qK8LNhn3fuXLMn23bg=";
sha256 = "sha256-WoQtDdbFcvl6Wp5uv2tr/W/YYH8dyezF+LzSJ5oJcYY=";
};
cargoSha256 = "sha256-g07liit048TSL73wFyDK+eKu33Z6fPJcJ+VeGgTtuS8=";
cargoSha256 = "sha256-7h14XzhhPmkPoTx0kkJl7I7CPqbRAtxa1zpplYxg4p4=";
postPatch = ''
substituteInPlace neard/build.rs \

View File

@ -4786,6 +4786,18 @@ final: prev:
meta.homepage = "https://github.com/roxma/nvim-completion-manager/";
};
nvim-config-local = buildVimPluginFrom2Nix {
pname = "nvim-config-local";
version = "2022-03-26";
src = fetchFromGitHub {
owner = "klen";
repo = "nvim-config-local";
rev = "af59d6344e555917209f7304709bbff7cea9b5cc";
sha256 = "1wg6g4rqpj12sjj0g1qxqgcpkzr7x82lk90lf6qczim97r3lj9hy";
};
meta.homepage = "https://github.com/klen/nvim-config-local/";
};
nvim-cursorline = buildVimPluginFrom2Nix {
pname = "nvim-cursorline";
version = "2022-04-15";

View File

@ -403,6 +403,7 @@ https://github.com/norcalli/nvim-colorizer.lua/,,
https://github.com/terrortylor/nvim-comment/,,
https://github.com/hrsh7th/nvim-compe/,,
https://github.com/roxma/nvim-completion-manager/,,
https://github.com/klen/nvim-config-local/,,
https://github.com/yamatsum/nvim-cursorline/,,
https://github.com/mfussenegger/nvim-dap/,,
https://github.com/rcarriga/nvim-dap-ui/,,

View File

@ -45,13 +45,13 @@ in
stdenv.mkDerivation rec {
pname = "imagemagick";
version = "7.1.0-35";
version = "7.1.0-36";
src = fetchFromGitHub {
owner = "ImageMagick";
repo = "ImageMagick";
rev = version;
hash = "sha256-KLS7gKUVeOAA89Kfrk07JzSXEF6TH6AgfheECbWi0lE=";
hash = "sha256-fl83O3vVHp12+Vj3WT0NOWe5a6ufmtFlxVlbUhIzfB0=";
};
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big

View File

@ -11,11 +11,11 @@
stdenv.mkDerivation rec {
pname = "drawio";
version = "18.0.6";
version = "18.1.3";
src = fetchurl {
url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/drawio-x86_64-${version}.rpm";
sha256 = "939d23f45f82bc4978ff3cb5d15d096f8af9658fb9f9211d3849998f6a0bd3a9";
sha256 = "0abb33e790071368d1f549e5f41e8692cd565bdae8fabee23e660ace2020a743";
};
nativeBuildInputs = [

View File

@ -2,8 +2,10 @@
, mkDerivation
, fetchFromGitHub
, fetchurl
, povray
, qmake
, qttools
, substituteAll
, zlib
}:
@ -14,26 +16,35 @@ set the variable LEOCAD_LIB=/path/to/libs/ or use option -l /path/to/libs/
let
parts = fetchurl {
url = "https://web.archive.org/web/20190715142541/https://www.ldraw.org/library/updates/complete.zip";
url = "https://web.archive.org/web/20210705153544/https://www.ldraw.org/library/updates/complete.zip";
sha256 = "sha256-PW3XCbFwRaNkx4EgCnl2rXH7QgmpNgjTi17kZ5bladA=";
};
in
mkDerivation rec {
pname = "leocad";
version = "21.03";
version = "21.06";
src = fetchFromGitHub {
owner = "leozide";
repo = "leocad";
rev = "v${version}";
sha256 = "sha256-69Ocfk5dBXwcRqAZWEP9Xg41o/tAQo76dIOk9oYhCUE=";
sha256 = "1ifbxngkbmg6d8vv08amxbnfvlyjdwzykrjp98lbwvgb0b843ygq";
};
nativeBuildInputs = [ qmake qttools ];
buildInputs = [ zlib ];
propagatedBuildInputs = [ povray ];
patches = [
(substituteAll {
src = ./povray.patch;
inherit povray;
})
];
qmakeFlags = [
"INSTALL_PREFIX=${placeholder "out"}"
"DISABLE_UPDATE_CHECK=1"

View File

@ -0,0 +1,72 @@
From 6e7dd2c763e2cc79db4cd7173921a4e72ce9b95e Mon Sep 17 00:00:00 2001
From: Elias Probst <mail@eliasprobst.eu>
Date: Tue, 5 Oct 2021 02:55:18 +0200
Subject: [PATCH] Don't use configurable POV-ray path.
Once the POV-ray path is configurable, it'll be written to the LeoCAD
profile, which will break upon the next update of POV-ray which will
have a different Nix store path.
Signed-off-by: Elias Probst <mail@eliasprobst.eu>
---
common/lc_application.cpp | 1 -
common/lc_profile.cpp | 2 +-
qt/lc_qpreferencesdialog.cpp | 3 ++-
qt/lc_renderdialog.cpp | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/common/lc_application.cpp b/common/lc_application.cpp
index cbdec82e..21974510 100644
--- a/common/lc_application.cpp
+++ b/common/lc_application.cpp
@@ -1267,7 +1267,6 @@ void lcApplication::ShowPreferencesDialog()
lcSetProfileString(LC_PROFILE_DEFAULT_AUTHOR_NAME, Options.DefaultAuthor);
lcSetProfileString(LC_PROFILE_PARTS_LIBRARY, Options.LibraryPath);
lcSetProfileString(LC_PROFILE_MINIFIG_SETTINGS, Options.MinifigSettingsPath);
- lcSetProfileString(LC_PROFILE_POVRAY_PATH, Options.POVRayPath);
lcSetProfileString(LC_PROFILE_POVRAY_LGEO_PATH, Options.LGEOPath);
lcSetProfileString(LC_PROFILE_LANGUAGE, Options.Language);
lcSetProfileInt(LC_PROFILE_CHECK_UPDATES, Options.CheckForUpdates);
diff --git a/common/lc_profile.cpp b/common/lc_profile.cpp
index 1975b586..911c4fb0 100644
--- a/common/lc_profile.cpp
+++ b/common/lc_profile.cpp
@@ -132,7 +132,7 @@ static lcProfileEntry gProfileEntries[LC_NUM_PROFILE_KEYS] =
lcProfileEntry("HTML", "ImageWidth", 640), // LC_PROFILE_HTML_IMAGE_WIDTH
lcProfileEntry("HTML", "ImageHeight", 480), // LC_PROFILE_HTML_IMAGE_HEIGHT
- lcProfileEntry("POVRay", "Path", "/usr/bin/povray"), // LC_PROFILE_POVRAY_PATH
+ lcProfileEntry("POVRay", "Path", "@povray@/bin/povray"), // LC_PROFILE_POVRAY_PATH
lcProfileEntry("POVRay", "LGEOPath", ""), // LC_PROFILE_POVRAY_LGEO_PATH
lcProfileEntry("POVRay", "Width", 1280), // LC_PROFILE_POVRAY_WIDTH
lcProfileEntry("POVRay", "Height", 720), // LC_PROFILE_POVRAY_HEIGHT
diff --git a/qt/lc_qpreferencesdialog.cpp b/qt/lc_qpreferencesdialog.cpp
index 89f86aad..c239763f 100644
--- a/qt/lc_qpreferencesdialog.cpp
+++ b/qt/lc_qpreferencesdialog.cpp
@@ -55,7 +55,8 @@ lcQPreferencesDialog::lcQPreferencesDialog(QWidget* Parent, lcPreferencesDialogO
ui->partsLibrary->setText(mOptions->LibraryPath);
ui->ColorConfigEdit->setText(mOptions->ColorConfigPath);
ui->MinifigSettingsEdit->setText(mOptions->MinifigSettingsPath);
- ui->povrayExecutable->setText(mOptions->POVRayPath);
+ ui->povrayExecutable->hide();
+ ui->povrayExecutableBrowse->hide();
ui->lgeoPath->setText(mOptions->LGEOPath);
ui->authorName->setText(mOptions->DefaultAuthor);
ui->mouseSensitivity->setValue(mOptions->Preferences.mMouseSensitivity);
diff --git a/qt/lc_renderdialog.cpp b/qt/lc_renderdialog.cpp
index bd8a9102..96794738 100644
--- a/qt/lc_renderdialog.cpp
+++ b/qt/lc_renderdialog.cpp
@@ -184,7 +184,7 @@ void lcRenderDialog::on_RenderButton_clicked()
#endif
#ifdef Q_OS_LINUX
- POVRayPath = lcGetProfileString(LC_PROFILE_POVRAY_PATH);
+ POVRayPath = QDir::cleanPath(QLatin1String("@povray@/bin/povray"));
Arguments.append("+FN");
Arguments.append("-D");
#endif
--
2.33.0

View File

@ -11,6 +11,13 @@ mkDerivation {
grantlee kcmutils kconfig kcoreaddons kdbusaddons khtml
ki18n kinit kservice xapian
];
preFixup = ''
qtWrapperArgs+=(
--prefix MANPATH : /nix/var/nix/profiles/system/sw/share/man
)
'';
meta = with lib; {
homepage = "https://apps.kde.org/help/";
description = "Help center";

View File

@ -13,12 +13,12 @@
let font-droid = nerdfonts.override { fonts = [ "DroidSansMono" ]; };
in stdenv.mkDerivation rec {
pname = "koreader";
version = "2022.03.1";
version = "2022.05.1";
src = fetchurl {
url =
"https://github.com/koreader/koreader/releases/download/v${version}/koreader-${version}-amd64.deb";
sha256 = "sha256-ZoqITWPR60G4xY9InrtIY9rCWUk0PidGFZokHLWl5ps=";
sha256 = "sha256-Uz8fzF/SdKNRywoIb8B/iHRuXDwRyw7wH7bL9vRzPfY=";
};
sourceRoot = ".";

View File

@ -15,12 +15,12 @@ let
in
stdenv.mkDerivation rec {
pname = "mkgmap";
version = "4902";
version = "4904";
src = fetchsvn {
url = "https://svn.mkgmap.org.uk/mkgmap/mkgmap/trunk";
rev = version;
sha256 = "sha256-djqa6loaFUYfAhgmF6Lm+4M4Xgzyiw1bXqK4XWqT/tY=";
sha256 = "sha256-43gJkpk19Ef3vUbRNt3VDstxCLJl6smsAjtcrovGjEE=";
};
patches = [

View File

@ -2,22 +2,22 @@
rustPlatform.buildRustPackage rec {
pname = "xplr";
version = "0.17.6";
version = "0.18.0";
src = fetchFromGitHub {
owner = "sayanarijit";
repo = pname;
rev = "v${version}";
sha256 = "1lgfa1y5vsm3gqxizdgbn816klcamqmshw817mwan5i5yx9nk6xz";
sha256 = "sha256-L9eJd1ivFhAmjKVm+HFq9fNiA/UA/x2akEfa1CrUSBo=";
};
buildInputs = lib.optional stdenv.isDarwin libiconv;
cargoSha256 = "sha256-va+MKnHVdkQNq1SFvvoYnb28tW61W7d97LoCMNzwZHE=";
cargoSha256 = "sha256-niH8gj49Wr20Lpa6UAczQ+YHgJlkvZYKJGFH6Spk9Ho=";
meta = with lib; {
description = "A hackable, minimal, fast TUI file explorer";
homepage = "https://github.com/sayanarijit/xplr";
homepage = "https://xplr.dev";
license = licenses.mit;
maintainers = with maintainers; [ sayanarijit suryasr007 ];
};

View File

@ -3,10 +3,10 @@
rec {
firefox = buildMozillaMach rec {
pname = "firefox";
version = "100.0.2";
version = "101.0";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "6d9922e35e496fa63833ba03d1466e075287e40e50854ddc4f4a2036d9c7ca1f35c03bc6f708a3c469e0ec3b389b3346ac754bb84df0fecb86955fc21c05e00f";
sha512 = "fffe7e0940c1443fcdc5b205677764cb4e04b29f33fcfafb2857d383700584f309806b81fc4989efb56cc12a3cca1ff7d451b647050c43e98777b5c952ed5d56";
};
meta = {
@ -28,11 +28,11 @@ rec {
firefox-esr-91 = buildMozillaMach rec {
pname = "firefox-esr";
version = "91.9.1esr";
version = "91.10.0esr";
applicationName = "Mozilla Firefox ESR";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "d432d559f2c5f4b0bc66a755db7d61585e24a727cd8d18630854b3fb8633d54baf61ed65b580345b13d52b66288aa15ca8ca5cfcde8231e88108241f0b007683";
sha512 = "8344b829d7bd86250afdd4cb582e27ed5705b3ef48aec50b9a39abc17deba86c9fd721f4667f5c2155e3d7cd1d6e1f82ff8e218ced3a16a4e06bb414ee0690f8";
};
meta = {

View File

@ -29,7 +29,6 @@ buildGoModule rec {
doCheck = !stdenv.isDarwin;
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64);
description = "CloudFlare Tunnel daemon (and DNS-over-HTTPS client)";
homepage = "https://www.cloudflare.com/products/tunnel";
license = licenses.asl20;

View File

@ -66,13 +66,13 @@ let
# Put all the providers we not longer support in this list.
removed-providers =
let
archived = date: throw "the provider has been archived by upstream on ${date}";
removed = date: throw "removed from nixpkgs on ${date}";
archived = name: date: throw "the ${name} terraform provider has been archived by upstream on ${date}";
removed = name: date: throw "the ${name} terraform provider removed from nixpkgs on ${date}";
in
lib.optionalAttrs config.allowAliases {
opc = archived "2022/05";
oraclepaas = archived "2022/05";
template = archived "2022/05";
opc = archived "opc" "2022/05";
oraclepaas = archived "oraclepaas" "2022/05";
template = archived "template" "2022/05";
};
# excluding aliases, used by terraform-full

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "dnscontrol";
version = "3.16.1";
version = "3.16.2";
src = fetchFromGitHub {
owner = "StackExchange";
repo = pname;
rev = "v${version}";
sha256 = "sha256-WnUOHUGIALHd0Ne+WzturRxomznpgVjVLBM1wvVAA4M=";
sha256 = "sha256-lzE35PT0QLlZ2jftXpDDvr4S3zD1DOpZVXrGGnzvpc8=";
};
vendorSha256 = "sha256-fjmKBRkXZQkN6fofy+H7DS76H+J0x6tRgv0fV/2rCwY=";
vendorSha256 = "sha256-M+Kzw2ZmKV527rPUJ1codtXWN0/5tmph7GMBTze4C7c=";
subPackages = [ "." ];

View File

@ -4,11 +4,11 @@ let
configOverrides = writeText "cinny-config-overrides.json" (builtins.toJSON conf);
in stdenv.mkDerivation rec {
pname = "cinny";
version = "2.0.3";
version = "2.0.4";
src = fetchurl {
url = "https://github.com/ajbura/cinny/releases/download/v${version}/cinny-v${version}.tar.gz";
sha256 = "13jg28dypp7x6wgsc6vikbqnagp1grqsdmmwhll8qz9ih9rq9fxd";
sha256 = "0p5s25nkjs9514a16c7kl0m78vn5f14mv6nbi79yz0sxb7hc12qg";
};
installPhase = ''

View File

@ -1,51 +0,0 @@
{ stdenv
, lib
, fetchurl
, undmg
}:
let
appName = "LibreOffice.app";
version = "7.2.5";
dist = {
aarch64-darwin = {
arch = "aarch64";
sha256 = "bdbcb9a98211f866ca089d440aebcd1d313aa99e8ab4104aae4e65ea3cee74ca";
};
x86_64-darwin = {
arch = "x86_64";
sha256 = "0b7ef18ed08341ac6c15339fe9a161ad17f6b469009d987cfc7d50c628d12a4e";
};
}."${stdenv.hostPlatform.system}";
in
stdenv.mkDerivation {
inherit version;
pname = "libreoffice";
src = fetchurl {
url = "https://download.documentfoundation.org/libreoffice/stable/${version}/mac/${dist.arch}/LibreOffice_${version}_MacOS_${dist.arch}.dmg";
inherit (dist) sha256;
};
nativeBuildInputs = [ undmg ];
sourceRoot = "${appName}";
dontPatch = true;
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstallPhase
mkdir -p $out/{Applications/${appName},bin}
cp -R . $out/Applications/${appName}
ln -s $out/Applications/${appName}/Contents/MacOS/soffice $out/bin
runHook postInstallPhase
'';
meta = with lib; {
description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org";
homepage = "https://libreoffice.org/";
license = licenses.lgpl3;
maintainers = with maintainers; [ tricktron ];
platforms = [ "aarch64-darwin" "x86_64-darwin" ];
};
}

View File

@ -0,0 +1,80 @@
{ stdenvNoCC
, lib
, fetchurl
, undmg
, writeScript
, callPackage
}:
let
appName = "LibreOffice.app";
scriptName = "soffice";
version = "7.3.3";
dist = {
aarch64-darwin = rec {
arch = "aarch64";
archSuffix = arch;
url = "https://download.documentfoundation.org/libreoffice/stable/${version}/mac/${arch}/LibreOffice_${version}_MacOS_${archSuffix}.dmg";
sha256 = "50ed3deb8d9c987516e2687ebb865bca15486c69da79f1b6d74381e43f2ec863";
};
x86_64-darwin = rec {
arch = "x86_64";
archSuffix = "x86-64";
url = "https://download.documentfoundation.org/libreoffice/stable/${version}/mac/${arch}/LibreOffice_${version}_MacOS_${archSuffix}.dmg";
sha256 = "fb2f9bb90eee34a22af3a2bf2854ef5b76098302b3c41d13d4f543f0d72b994f";
};
};
in
stdenvNoCC.mkDerivation {
inherit version;
pname = "libreoffice";
src = fetchurl {
inherit (dist.${stdenvNoCC.hostPlatform.system} or
(throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}")) url sha256;
};
nativeBuildInputs = [ undmg ];
sourceRoot = "${appName}";
installPhase = ''
runHook preInstall
mkdir -p $out/{Applications/${appName},bin}
cp -R . $out/Applications/${appName}
cat > $out/bin/${scriptName} << EOF
#!${stdenvNoCC.shell}
open -na $out/Applications/${appName} --args "$@"
EOF
chmod +x $out/bin/${scriptName}
runHook postInstall
'';
passthru.updateScript =
let
defaultNixFile = builtins.toString ./default.nix;
updateNix = builtins.toString ./update.nix;
aarch64Url = dist."aarch64-darwin".url;
x86_64Url = dist."x86_64-darwin".url;
in
writeScript "update-libreoffice.sh"
''
#!/usr/bin/env nix-shell
#!nix-shell -i bash --argstr aarch64Url ${aarch64Url} --argstr x86_64Url ${x86_64Url} --argstr version ${version} ${updateNix}
set -eou pipefail
# reset version first so that both platforms are always updated and in sync
update-source-version libreoffice-bin 0 ${lib.fakeSha256} --file=${defaultNixFile} --system=aarch64-darwin
update-source-version libreoffice-bin $newVersion $newAarch64Sha256 --file=${defaultNixFile} --system=aarch64-darwin
update-source-version libreoffice-bin 0 ${lib.fakeSha256} --file=${defaultNixFile} --system=x86_64-darwin
update-source-version libreoffice-bin $newVersion $newX86_64Sha256 --file=${defaultNixFile} --system=x86_64-darwin
'';
meta = with lib; {
description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org";
homepage = "https://libreoffice.org/";
license = licenses.lgpl3;
maintainers = with maintainers; [ tricktron ];
platforms = [ "x86_64-darwin" "aarch64-darwin" ];
};
}

View File

@ -0,0 +1,50 @@
# run the tests with nixt <absolutePath to parent dir> -v
{ pkgs ? import <nixpkgs> { }, nixt }:
let
inherit (import ./update-utils.nix { inherit (pkgs) lib; })
extractLatestVersionFromHtml
extractSha256FromHtml
getLatestStableVersion;
in
nixt.mkSuite "LibreOffice Updater"
{
"should extract latest stable version from html" =
let
latestVersionHtmlMock =
''
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Index of /libreoffice/stable</title>
<link rel="stylesheet" href="/mirrorbrain.css" type="text/css" />
</head>
<body>
<h1>Index of /libreoffice/stable</h1>
<table><tr><th>&nbsp;</th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th>Metadata</th></tr><tr><th colspan="5"><hr /></th></tr>
<tr><td valign="top">&nbsp;</td><td><a href="/libreoffice/">Parent Directory</a></td><td>&nbsp;</td><td align="right"> - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="7.2.7/">7.2.7/</a></td><td align="right">10-Mar-2022 11:12 </td><td align="right"> - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="7.3.3/">7.3.3/</a></td><td align="right">12-May-2022 10:06 </td><td align="right"> - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="7.2.6/">7.2.6/</a></td><td align="right">05-May-2022 07:57 </td><td align="right"> - </td><td>&nbsp;</td></tr>
<tr><th colspan="5"><hr /></th></tr>
</table>
<address>Apache Server at <a href="mailto:hostmaster@documentfoundation.org">download.documentfoundation.org</a> Port 80</address>
<br/><address><a href="http://mirrorbrain.org/">MirrorBrain</a> powered by <a href="http://httpd.apache.org/">Apache</a></address>
</body></html>
'';
actual = extractLatestVersionFromHtml latestVersionHtmlMock;
in
"7.3.3" == actual;
"should extract latest stable version from website" = (builtins.compareVersions getLatestStableVersion "7.3.3") >= 0;
"should extract sha256 from html" =
let
sha256Html = "50ed3deb8d9c987516e2687ebb865bca15486c69da79f1b6d74381e43f2ec863 LibreOffice_7.3.3_MacOS_aarch64.dmg\n";
actual = extractSha256FromHtml sha256Html;
in
"50ed3deb8d9c987516e2687ebb865bca15486c69da79f1b6d74381e43f2ec863" == actual;
}

View File

@ -0,0 +1,51 @@
{ lib }:
let
# extractLatestVersionFromHtml :: String -> String
extractLatestVersionFromHtml = htmlString:
let
majorMinorPatchGroup = "([0-9]+\\.[0-9]+\\.[0-9]+)";
splittedVersions = builtins.split "href=\"${majorMinorPatchGroup}" htmlString;
stableVersions = builtins.concatLists
(builtins.filter (e: builtins.isList e)
splittedVersions);
in
if stableVersions == [ ]
then abort "Failed to extract versions from html."
else lib.last (builtins.sort builtins.lessThan stableVersions);
# getHtml :: String -> String
getHtml = url:
builtins.readFile (builtins.fetchurl url);
# getLatestStableVersion :: String
getLatestStableVersion =
extractLatestVersionFromHtml
(getHtml "https://download.documentfoundation.org/libreoffice/stable/");
# extractSha256FromHtml :: String -> String
extractSha256FromHtml = htmlString:
let
sha256 = (builtins.match ".*([0-9a-fA-F]{64}).*" htmlString);
in
if sha256 == [ ]
then abort "Failed to extract sha256 from html."
else builtins.head sha256;
# getSha256 :: String -> String
getSha256 = dmgUrl: oldVersion: newVersion:
extractSha256FromHtml (getHtml (getSha256Url dmgUrl oldVersion newVersion));
# getSha256Url :: String -> String -> String -> String
getSha256Url = dmgUrl: oldVersion: newVersion:
(builtins.replaceStrings [ oldVersion ] [ newVersion ] dmgUrl) + ".sha256";
in
{
inherit
extractLatestVersionFromHtml
getHtml
getLatestStableVersion
extractSha256FromHtml
getSha256
getSha256Url;
}

View File

@ -0,0 +1,18 @@
# Impure functions, for passthru.updateScript runtime only
{ aarch64Url
, x86_64Url
, version
, pkgs ? import ../../../../../default.nix { }
,
}:
let
inherit (import ./update-utils.nix { inherit (pkgs) lib; })
getLatestStableVersion
getSha256;
in
pkgs.mkShell rec {
buildInputs = [ pkgs.common-updater-scripts ];
newVersion = getLatestStableVersion;
newAarch64Sha256 = getSha256 aarch64Url version newVersion;
newX86_64Sha256 = getSha256 x86_64Url version newVersion;
}

View File

@ -25,11 +25,11 @@ let
in
stdenv.mkDerivation rec {
pname = "PortfolioPerformance";
version = "0.57.2";
version = "0.58.3";
src = fetchurl {
url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
sha256 = "sha256-ftLKlNzr46iL/V+P3J1wtoUByGHHl7wrh4xctU4JYkM=";
sha256 = "sha256-hm7iIYv4egd79G+LfetFSFLQRnfechJIY3k5Dys63vY=";
};
nativeBuildInputs = [

View File

@ -0,0 +1,56 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, jdk8
, makeWrapper
, jre8
, zip
}:
let
jdk = jdk8;
jre = jre8;
in
stdenvNoCC.mkDerivation rec {
pname = "astral";
version = "5.7.1";
src = fetchFromGitHub {
owner = "smirarab";
repo = "ASTRAL";
rev = "v${version}";
sha256 = "043w2z6gbrisqirdid022f4b8jps1pp5syi344krv2bis1gjq5sn";
};
nativeBuildInputs = [ jdk makeWrapper jre zip ];
buildPhase = ''
patchShebangs ./make.sh
./make.sh
'';
doCheck = true;
checkPhase = ''
runHook preCheck
java -jar astral.${version}.jar -i main/test_data/song_primates.424.gene.tre
runHook postCheck
'';
installPhase = ''
mkdir -p $out/share/lib
mkdir -p $out/bin
mv astral.${version}.jar $out/share/
mv lib/*.jar $out/share/lib
mv Astral.${version}.zip $out/share/
cp -a main/test_data $out/share/
makeWrapper ${jre}/bin/java $out/bin/astral \
--add-flags "-jar $out/share/astral.${version}.jar"
'';
meta = with lib; {
homepage = "https://github.com/smirarab/ASTRAL";
description = "Tool for estimating an unrooted species tree given a set of unrooted gene trees";
license = licenses.asl20;
maintainers = with maintainers; [ bzizou ];
};
}

View File

@ -18,7 +18,7 @@ let
shared_meta = lib:
with lib; {
homepage = "https://www.picotech.com/downloads/linux";
maintainers = with maintainers; [ expipiplus1 yorickvp wirew0rm ];
maintainers = with maintainers; [ expipiplus1 wirew0rm ] ++ teams.lumiguide.members;
platforms = [ "x86_64-linux" ];
license = licenses.unfree;
};

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, git, lib, makeWrapper, nettools, perl, perlPackages }:
{ stdenv, fetchFromGitHub, git, lib, makeWrapper, nettools, perl, perlPackages, nixosTests }:
stdenv.mkDerivation rec {
pname = "gitolite";
@ -38,6 +38,10 @@ stdenv.mkDerivation rec {
echo ${version} > $out/bin/VERSION
'';
passthru.tests = {
gitolite = nixosTests.gitolite;
};
meta = with lib; {
description = "Finely-grained git repository hosting";
homepage = "https://gitolite.com/gitolite/index.html";

View File

@ -0,0 +1,86 @@
{ lib
, stdenv
, fetchFromGitHub
, substituteAll
, cinnamon
, gettext
, gobject-introspection
, mpv
, python3
, wrapGAppsHook
}:
stdenv.mkDerivation rec {
pname = "hypnotix";
version = "2.6";
src = fetchFromGitHub {
owner = "linuxmint";
repo = "hypnotix";
rev = version;
hash = "sha256-9HWr8zjUuhj/GZdrt1WwpwYNLEl34S9IJ7ikGZBSw3s=";
};
patches = [
(substituteAll {
src = ./libmpv-path.patch;
libmpv = "${lib.getLib mpv}/lib/libmpv${stdenv.hostPlatform.extensions.sharedLibrary}";
})
];
postPatch = ''
substituteInPlace usr/lib/hypnotix/hypnotix.py \
--replace __DEB_VERSION__ ${version} \
--replace /usr/share/hypnotix $out/share/hypnotix
'';
nativeBuildInputs = [
gettext
gobject-introspection
python3.pkgs.wrapPython
wrapGAppsHook
];
dontWrapGApps = true;
buildInputs = [
cinnamon.xapps
];
pythonPath = with python3.pkgs; [
imdbpy
pygobject3
requests
setproctitle
unidecode
xapp
];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r usr/lib $out
cp -r usr/share $out
glib-compile-schemas $out/share/glib-2.0/schemas
runHook postInstall
'';
preFixup = ''
buildPythonPath "$out $pythonPath"
makeWrapper ${python3.interpreter} $out/bin/hypnotix \
--add-flags $out/lib/hypnotix/hypnotix.py \
--prefix PYTHONPATH : "$program_PYTHONPATH" \
''${gappsWrapperArgs[@]}
'';
meta = {
description = "IPTV streaming application";
homepage = "https://github.com/linuxmint/hypnotix";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ dotlambda ];
platforms = lib.platforms.linux;
};
}

View File

@ -0,0 +1,18 @@
diff --git a/usr/lib/hypnotix/mpv.py b/usr/lib/hypnotix/mpv.py
index f42a3be..f1fc40b 100644
--- a/usr/lib/hypnotix/mpv.py
+++ b/usr/lib/hypnotix/mpv.py
@@ -44,12 +44,7 @@ else:
# still better than segfaulting, we are setting LC_NUMERIC to "C".
locale.setlocale(locale.LC_NUMERIC, 'C')
- sofile = ctypes.util.find_library('mpv')
- if sofile is None:
- raise OSError("Cannot find libmpv in the usual places. Depending on your distro, you may try installing an "
- "mpv-devel or mpv-libs package. If you have libmpv around but this script can't find it, consult "
- "the documentation for ctypes.util.find_library which this script uses to look up the library "
- "filename.")
+ sofile = '@libmpv@'
backend = CDLL(sofile)
fs_enc = sys.getfilesystemencoding()

View File

@ -97,7 +97,7 @@ in
# See https://os.phil-opp.com/testing/ for more information.
assert useSysroot -> !(args.doCheck or true);
stdenv.mkDerivation ((removeAttrs args [ "depsExtraArgs" "cargoLock" ]) // lib.optionalAttrs useSysroot {
stdenv.mkDerivation ((removeAttrs args [ "depsExtraArgs" "cargoUpdateHook" "cargoLock" ]) // lib.optionalAttrs useSysroot {
RUSTFLAGS = "--sysroot ${sysroot} " + (args.RUSTFLAGS or "");
} // {
inherit buildAndTestSubdir cargoDeps;

View File

@ -23,6 +23,7 @@ in
, patches ? []
, sourceRoot ? ""
, cargoUpdateHook ? ""
, nativeBuildInputs ? []
, ...
} @ args:
@ -32,7 +33,7 @@ let hash_ =
else throw "fetchCargoTarball requires a hash for ${name}";
in stdenv.mkDerivation ({
name = "${name}-vendor.tar.gz";
nativeBuildInputs = [ cacert git cargo-vendor-normalise cargo ];
nativeBuildInputs = [ cacert git cargo-vendor-normalise cargo ] ++ nativeBuildInputs;
buildPhase = ''
runHook preBuild
@ -82,5 +83,5 @@ in stdenv.mkDerivation ({
impureEnvVars = lib.fetchers.proxyImpureEnvVars;
} // (builtins.removeAttrs args [
"name" "sha256" "cargoUpdateHook"
"name" "sha256" "cargoUpdateHook" "nativeBuildInputs"
]))

View File

@ -12,20 +12,21 @@ let
in
stdenv.mkDerivation rec {
pname = "flat-remix-gnome";
version = "20220510";
version = "20220524";
src = fetchFromGitHub {
owner = "daniruiz";
repo = pname;
rev = version;
hash = "sha256-sqHX3APeblZai6NBgY+bnRnkzn6CGXwppiQ4pb8HTTw=";
hash = "sha256-m7Er6F0VWcdV3+oUPfhJJq80oaht15hBFtg7JQgZJI8=";
};
nativeBuildInputs = [ glib fake-dconf ];
makeFlags = [ "PREFIX=$(out)" ];
# make install will back up this file, it will fail if the file doesn't exist.
# https://github.com/daniruiz/flat-remix-gnome/blob/20220510/Makefile#L56
preInstall = ''
# make install will back up this file, it will fail if the file doesn't exist.
# https://github.com/daniruiz/flat-remix-gnome/blob/20220510/Makefile#L56
mkdir -p $out/share/gnome-shell/
touch $out/share/gnome-shell/gnome-shell-theme.gresource
'';

View File

@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "qogir-theme";
version = "2022-04-29";
version = "2022-05-29";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
sha256 = "oFGJ29He7ZmryW/Eg+JLM9C3FzNjmKjzNtyXDHGuhwo=";
sha256 = "z8o/1Qc7XmefX9CuVr0Gq2MmKw2NlkUk+5Lz0Z593do=";
};
nativeBuildInputs = [

View File

@ -55,11 +55,11 @@
stdenv.mkDerivation rec {
pname = "gnome-boxes";
version = "42.0.1";
version = "42.1";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "GuIS/4mZFVQuxTtU2VtozfJx2VjPUSzcP+3Hgixu4SM=";
sha256 = "lvXQEbdQjbVhvw0WbA6p6LEhgFxA5dnzYRkkXBUXIIA=";
};
patches = [

View File

@ -42,11 +42,11 @@ in
stdenv.mkDerivation rec {
pname = "gnome-software";
version = "42.1";
version = "42.2";
src = fetchurl {
url = "mirror://gnome/sources/gnome-software/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "MtAFaYoAuK5er5Hk5/hlnvQwCnmPyuaiK3TC1/z2pIY=";
sha256 = "6ENJYyp/XQhmzlwMVi5f6oQRoF8ickRBzZqCQgRiMiQ=";
};
patches = [

View File

@ -23,11 +23,11 @@
stdenv.mkDerivation rec {
pname = "spidermonkey";
version = "91.9.1";
version = "91.10.0";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}esr/source/firefox-${version}esr.source.tar.xz";
sha512 = "d432d559f2c5f4b0bc66a755db7d61585e24a727cd8d18630854b3fb8633d54baf61ed65b580345b13d52b66288aa15ca8ca5cfcde8231e88108241f0b007683";
sha512 = "8344b829d7bd86250afdd4cb582e27ed5705b3ef48aec50b9a39abc17deba86c9fd721f4667f5c2155e3d7cd1d6e1f82ff8e218ced3a16a4e06bb414ee0690f8";
};
outputs = [ "out" "dev" ];

View File

@ -62,7 +62,7 @@ in
stdenv.mkDerivation rec {
pname = "gtk4";
version = "4.6.4";
version = "4.6.5";
outputs = [ "out" "dev" ] ++ lib.optionals x11Support [ "devdoc" ];
outputBin = "dev";
@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnome/sources/gtk/${lib.versions.majorMinor version}/gtk-${version}.tar.xz";
sha256 = "p5orvMeTG3A/xPofy+G5BuIpoVIthU1SKAF2anm8rJ8=";
sha256 = "+kLDcfSckJFnEeFVkdh9S+5EOMJ78GknFVgYB2KL6cI=";
};
nativeBuildInputs = [

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "pico-sdk";
version = "1.3.0";
version = "1.3.1";
src = fetchFromGitHub {
owner = "raspberrypi";
repo = pname;
rev = version;
sha256 = "sha256-cc1UTc1aswtJzuaUdYNcCzLtQ9+Wggiy/eRE+UoxSgE=";
sha256 = "sha256-Yf3cVFdI8vR/qcxghcx8fsbYs1qD8r6O5aqZ0AkSLDc=";
};
nativeBuildInputs = [ cmake ];

View File

@ -0,0 +1,6 @@
# How to update
1. `./fetchrepo.sh`
2. `./mkrepo.sh`
3. Check the `repo.json` diff for new stable versions of `tools`, `platform-tools`, `build-tools`, `emulator` and/or `ndk`
4. Update the relevant argument defaults in `compose-android-packages.nix`

View File

@ -3,10 +3,10 @@
}:
{ toolsVersion ? "26.1.1"
, platformToolsVersion ? "31.0.3"
, buildToolsVersions ? [ "31.0.0" ]
, platformToolsVersion ? "33.0.1"
, buildToolsVersions ? [ "32.0.0" ]
, includeEmulator ? false
, emulatorVersion ? "30.9.0"
, emulatorVersion ? "31.3.7"
, platformVersions ? []
, includeSources ? false
, includeSystemImages ? false
@ -14,7 +14,7 @@
, abiVersions ? [ "armeabi-v7a" ]
, cmakeVersions ? [ ]
, includeNDK ? false
, ndkVersion ? "22.1.7171670"
, ndkVersion ? "24.0.8215888"
, ndkVersions ? [ndkVersion]
, useGoogleAPIs ? false
, useGoogleTVAddOns ? false
@ -120,7 +120,8 @@ rec {
};
platform-tools = import ./platform-tools.nix {
inherit deployAndroidPackage os autoPatchelfHook pkgs lib;
inherit deployAndroidPackage autoPatchelfHook pkgs lib;
os = if stdenv.system == "aarch64-darwin" then "macosx" else os; # "macosx" is a universal binary here
package = packages.platform-tools.${platformToolsVersion};
};

View File

@ -425,16 +425,16 @@
"archives": [
{
"os": "windows",
"sha1": "1d35ead3cdfaf6e51001455f66a2db102dd647b7",
"size": 167191,
"url": "https://dl.google.com/android/repository/gvm-windows_v1_7_0.zip"
"sha1": "7be9c46e3bbf4ab107fa614e426f925584ce310b",
"size": 166975,
"url": "https://dl.google.com/android/repository/gvm-windows_v1_8_0.zip"
}
],
"displayName": "Android Emulator Hypervisor Driver for AMD Processors (installer)",
"license": "android-sdk-license",
"name": "extras-google-Android_Emulator_Hypervisor_Driver",
"path": "extras/google/Android_Emulator_Hypervisor_Driver",
"revision": "1.7.0"
"revision": "1.8.0"
},
"extras;google;admob_ads_sdk": {
"archives": [
@ -1366,6 +1366,21 @@
},
"28": {
"google_apis_playstore": {
"arm64-v8a": {
"archives": [
{
"os": "all",
"sha1": "8901ad796ada9d40272c429427ba628de6919281",
"size": 835797733,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-28_r01.zip"
}
],
"displayName": "Google ARM64-V8a Play ARM 64 v8a System Image",
"license": "android-sdk-arm-dbt-license",
"name": "system-image-28-google_apis_playstore-arm64-v8a",
"path": "system-images/android-28/google_apis_playstore/arm64-v8a",
"revision": "28-google_apis_playstore-arm64-v8a"
},
"x86": {
"archives": [
{
@ -1562,15 +1577,15 @@
"archives": [
{
"os": "macosx",
"sha1": "bef2699f7fd74fe0c4106a8898833074de72984d",
"size": 1394878415,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-31_r06-darwin.zip"
"sha1": "8a1fa9a050a3894fb65c785d6b536e182be30e7f",
"size": 1468377491,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-31_r09-darwin.zip"
},
{
"os": "linux",
"sha1": "bef2699f7fd74fe0c4106a8898833074de72984d",
"size": 1394878415,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-31_r06-linux.zip"
"sha1": "8a1fa9a050a3894fb65c785d6b536e182be30e7f",
"size": 1468377491,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-31_r09-linux.zip"
}
],
"displayName": "Google Play ARM 64 v8a System Image",
@ -1582,29 +1597,109 @@
"x86_64": {
"archives": [
{
"os": "windows",
"sha1": "6450e33574aba4746682cfa72edd4e89947fed38",
"size": 1433583169,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-31_r06-windows.zip"
},
"os": "all",
"sha1": "a80de967f445b3cf71803425f4e4b21b36e11d66",
"size": 1423631458,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-31_r09.zip"
}
],
"displayName": "Google Play Intel x86 Atom_64 System Image",
"license": "android-sdk-arm-dbt-license",
"name": "system-image-31-google_apis_playstore-x86_64",
"path": "system-images/android-31/google_apis_playstore/x86_64",
"revision": "31-google_apis_playstore-x86_64"
}
}
},
"32": {
"google_apis_playstore": {
"arm64-v8a": {
"archives": [
{
"os": "macosx",
"sha1": "6450e33574aba4746682cfa72edd4e89947fed38",
"size": 1433583169,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-31_r06-darwin.zip"
"sha1": "a03c886495ad5a3c3929fb0fc122c8ded743eef0",
"size": 1393496124,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-32_r03-darwin.zip"
},
{
"os": "linux",
"sha1": "6450e33574aba4746682cfa72edd4e89947fed38",
"size": 1433583169,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-31_r06-linux.zip"
"sha1": "a03c886495ad5a3c3929fb0fc122c8ded743eef0",
"size": 1393496124,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-32_r03-linux.zip"
}
],
"displayName": "Google Play ARM 64 v8a System Image",
"license": "android-sdk-arm-dbt-license",
"name": "system-image-32-google_apis_playstore-arm64-v8a",
"path": "system-images/android-32/google_apis_playstore/arm64-v8a",
"revision": "32-google_apis_playstore-arm64-v8a"
},
"x86_64": {
"archives": [
{
"os": "windows",
"sha1": "734f2fde664518688a402ad8198b10cf093c5871",
"size": 1437465460,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-32_r03-windows.zip"
},
{
"os": "macosx",
"sha1": "734f2fde664518688a402ad8198b10cf093c5871",
"size": 1437465460,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-32_r03-darwin.zip"
},
{
"os": "linux",
"sha1": "734f2fde664518688a402ad8198b10cf093c5871",
"size": 1437465460,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-32_r03-linux.zip"
}
],
"displayName": "Google Play Intel x86 Atom_64 System Image",
"license": "android-sdk-preview-license",
"name": "system-image-31-google_apis_playstore-x86_64",
"path": "system-images/android-31/google_apis_playstore/x86_64",
"revision": "31-google_apis_playstore-x86_64"
"name": "system-image-32-google_apis_playstore-x86_64",
"path": "system-images/android-32/google_apis_playstore/x86_64",
"revision": "32-google_apis_playstore-x86_64"
}
}
},
"Tiramisu": {
"google_apis_playstore": {
"arm64-v8a": {
"archives": [
{
"os": "macosx",
"sha1": "2b6d4dc0af98b2b4d3ed4ac82b6d8ee0bfe38383",
"size": 1457296537,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-Tiramisu_r02-darwin.zip"
},
{
"os": "linux",
"sha1": "2b6d4dc0af98b2b4d3ed4ac82b6d8ee0bfe38383",
"size": 1457296537,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-Tiramisu_r02-linux.zip"
}
],
"displayName": "Google Play ARM 64 v8a System Image",
"license": "android-sdk-arm-dbt-license",
"name": "system-image-Tiramisu-google_apis_playstore-arm64-v8a",
"path": "system-images/android-Tiramisu/google_apis_playstore/arm64-v8a",
"revision": "Tiramisu-google_apis_playstore-arm64-v8a"
},
"x86_64": {
"archives": [
{
"os": "all",
"sha1": "2d2fb4c36efa836f348d6acbfc588f9eed70934e",
"size": 1438511715,
"url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-Tiramisu_r02.zip"
}
],
"displayName": "Google Play Intel x86 Atom_64 System Image",
"license": "android-sdk-preview-license",
"name": "system-image-Tiramisu-google_apis_playstore-x86_64",
"path": "system-images/android-Tiramisu/google_apis_playstore/x86_64",
"revision": "Tiramisu-google_apis_playstore-x86_64"
}
}
}
@ -3148,6 +3243,87 @@
"name": "build-tools",
"path": "build-tools/31.0.0",
"revision": "31.0.0"
},
"32.0.0": {
"archives": [
{
"os": "windows",
"sha1": "2134fdd4a00b3501b87597d100182e169eaa8c6a",
"size": 56720035,
"url": "https://dl.google.com/android/repository/210b77e4bc623bd4cdda4dae790048f227972bd2.build-tools_r32-windows.zip"
},
{
"os": "macosx",
"sha1": "27b56ee9a313f0f34f009dea343f3887d3f72b17",
"size": 52875135,
"url": "https://dl.google.com/android/repository/5219cc671e844de73762e969ace287c29d2e14cd.build-tools_r32-macosx.zip"
},
{
"os": "linux",
"sha1": "c7f2c700aafd9f7a2da187d80901481b80156719",
"size": 54940436,
"url": "https://dl.google.com/android/repository/build-tools_r32-linux.zip"
}
],
"displayName": "Android SDK Build-Tools 32",
"license": "android-sdk-license",
"name": "build-tools",
"path": "build-tools/32.0.0",
"revision": "32.0.0"
},
"32.1.0-rc1": {
"archives": [
{
"os": "windows",
"sha1": "af2abccfe48f9109ca0bddbec023234a4a68446b",
"size": 54636210,
"url": "https://dl.google.com/android/repository/21014bc1a76d38d0dcb79b3b3f49f40ea5a53c10.build-tools_r32.1-rc1-windows.zip"
},
{
"os": "linux",
"sha1": "4af23395f3a7cb4a5c01623347622f881a4772fd",
"size": 57403070,
"url": "https://dl.google.com/android/repository/build-tools_r32.1-rc1-linux.zip"
},
{
"os": "macosx",
"sha1": "38c166a60de3cb799ff1ad5b855234579d05e7b6",
"size": 59462877,
"url": "https://dl.google.com/android/repository/c165e9b235479731f416c7aea22d065819c7ce23.build-tools_r32.1-rc1-macosx.zip"
}
],
"displayName": "Android SDK Build-Tools 32.1-rc1",
"license": "android-sdk-preview-license",
"name": "build-tools",
"path": "build-tools/32.1.0-rc1",
"revision": "32.1.0-rc1"
},
"33.0.0-rc2": {
"archives": [
{
"os": "windows",
"sha1": "789aa6dfb2155b81e073108c70982f73c890a95b",
"size": 55466255,
"url": "https://dl.google.com/android/repository/830151c9e0c410f6148390f0de30bd349ba91efd.build-tools_r33-rc2-windows.zip"
},
{
"os": "linux",
"sha1": "013f98217b7af4f5677ab1a47e98da18ad57721c",
"size": 57876882,
"url": "https://dl.google.com/android/repository/build-tools_r33-rc2-linux.zip"
},
{
"os": "macosx",
"sha1": "586f8f77847ba3899b7652d6514e8c6a78ab673a",
"size": 59910819,
"url": "https://dl.google.com/android/repository/f8baa248444f0a5aca1119b48e897908a3da49d5.build-tools_r33-rc2-macosx.zip"
}
],
"displayName": "Android SDK Build-Tools 33-rc2",
"license": "android-sdk-preview-license",
"name": "build-tools",
"path": "build-tools/33.0.0-rc2",
"revision": "33.0.0-rc2"
}
},
"cmake": {
@ -3205,6 +3381,33 @@
"path": "cmake/3.18.1",
"revision": "3.18.1"
},
"3.22.1": {
"archives": [
{
"os": "macosx",
"sha1": "8604eeef9adadb626dbb70a7ff58a87e6a7b967a",
"size": 38223266,
"url": "https://dl.google.com/android/repository/cmake-3.22.1-darwin.zip"
},
{
"os": "linux",
"sha1": "fd0a48b4a758310df8c7aa51f59840ed48fe7ed8",
"size": 22308647,
"url": "https://dl.google.com/android/repository/cmake-3.22.1-linux.zip"
},
{
"os": "windows",
"sha1": "292778f32a7d5183e1c49c7897b870653f2d2c1b",
"size": 16116742,
"url": "https://dl.google.com/android/repository/cmake-3.22.1-windows.zip"
}
],
"displayName": "CMake 3.22.1",
"license": "android-sdk-preview-license",
"name": "cmake",
"path": "cmake/3.22.1",
"revision": "3.22.1"
},
"3.6.4111459": {
"archives": [
{
@ -3395,62 +3598,89 @@
"name": "cmdline-tools",
"path": "cmdline-tools/5.0",
"revision": "5.0"
}
},
"emulator": {
"30.8.4": {
},
"6.0": {
"archives": [
{
"os": "linux",
"sha1": "140f833321684f7696e4b9012636c45eaa5b6a4a",
"size": 277522999,
"url": "https://dl.google.com/android/repository/emulator-linux_x64-7600983.zip"
},
{
"os": "windows",
"sha1": "c26170db8aba1bbfcfe63481e95a90bc7b2ff129",
"size": 326723360,
"url": "https://dl.google.com/android/repository/emulator-windows_x64-7600983.zip"
"sha1": "8d47ab9a90caa60ce8a95d7e384ec64633bc13b4",
"size": 119650630,
"url": "https://dl.google.com/android/repository/commandlinetools-linux-8092744_latest.zip"
},
{
"os": "macosx",
"sha1": "9811a649c516153681471f897a02398947640045",
"size": 315292647,
"url": "https://dl.google.com/android/repository/emulator-darwin_x64-7600983.zip"
"sha1": "bbd306940256ccb698edae47a56fb8da36d63e0b",
"size": 119650616,
"url": "https://dl.google.com/android/repository/commandlinetools-mac-8092744_latest.zip"
},
{
"os": "windows",
"sha1": "3098050fb2bdc7cc8a07bdef4dd13035f9f78d2a",
"size": 119629490,
"url": "https://dl.google.com/android/repository/commandlinetools-win-8092744_latest.zip"
}
],
"displayName": "Android SDK Command-line Tools",
"license": "android-sdk-license",
"name": "cmdline-tools",
"path": "cmdline-tools/6.0",
"revision": "6.0"
}
},
"emulator": {
"31.2.9": {
"archives": [
{
"os": "linux",
"sha1": "164b759748b3d2ee2616da74173867b11b18f64f",
"size": 276337192,
"url": "https://dl.google.com/android/repository/emulator-linux_x64-8316981.zip"
},
{
"os": "windows",
"sha1": "2b6768485a8e6492823a9156fa43c55092afd533",
"size": 345298639,
"url": "https://dl.google.com/android/repository/emulator-windows_x64-8316981.zip"
},
{
"os": "macosx",
"sha1": "af2d950318d8ae8cc516a1401a94f888f615aca6",
"size": 313877066,
"url": "https://dl.google.com/android/repository/emulator-darwin_x64-8316981.zip"
}
],
"displayName": "Android Emulator",
"license": "android-sdk-license",
"name": "emulator",
"path": "emulator",
"revision": "30.8.4"
"revision": "31.2.9"
},
"30.9.0": {
"31.3.7": {
"archives": [
{
"os": "macosx",
"sha1": "b197e04e0543271899a1bd956a3f828e1159086b",
"size": 315330447,
"url": "https://dl.google.com/android/repository/emulator-darwin_x64-7634933.zip"
"sha1": "0020b44623995a5a9a5b0d114f8fd942e9d3cbed",
"size": 347204784,
"url": "https://dl.google.com/android/repository/emulator-darwin_x64-8408431.zip"
},
{
"os": "linux",
"sha1": "5cdfb2b27f24ded22348535f2de28ec373e203c8",
"size": 277557089,
"url": "https://dl.google.com/android/repository/emulator-linux_x64-7634933.zip"
"sha1": "46ba0c398fcd2704bee015c95e44d8f317b7b720",
"size": 293765376,
"url": "https://dl.google.com/android/repository/emulator-linux_x64-8408431.zip"
},
{
"os": "windows",
"sha1": "aed5ba827d0c1d68c8663a4d786f184aaeb939ed",
"size": 326205048,
"url": "https://dl.google.com/android/repository/emulator-windows_x64-7634933.zip"
"sha1": "c09a35dd8c7eb7d8c53bf89c86019f5dbcd89b9d",
"size": 380137986,
"url": "https://dl.google.com/android/repository/emulator-windows_x64-8408431.zip"
}
],
"displayName": "Android Emulator",
"license": "android-sdk-preview-license",
"name": "emulator",
"path": "emulator",
"revision": "30.9.0"
"revision": "31.3.7"
}
},
"extras": {
@ -3481,32 +3711,32 @@
"path": "extras/google/auto",
"revision": "1.1"
},
"2.0-rc2": {
"2.0": {
"archives": [
{
"os": "linux",
"sha1": "dbb771c2be299fd88ca05d8b0e381c369a7f7009",
"size": 6947111,
"url": "https://dl.google.com/android/repository/desktop-head-unit-linux_r02.0.rc2.zip"
"os": "macosx",
"sha1": "d4d12a2173fef608ad62b94fed3a112bfa146759",
"size": 8030009,
"url": "https://dl.google.com/android/repository/desktop-head-unit-darwin-x64_r02.0.zip"
},
{
"os": "macosx",
"sha1": "ec1f68f9acc234f8493f4ba24954d1d45291b736",
"size": 8593497,
"url": "https://dl.google.com/android/repository/desktop-head-unit-macosx_r02.0.rc2.zip"
"os": "linux",
"sha1": "77e3f80c2834e1fad33f56539ceb0215da408fab",
"size": 6895443,
"url": "https://dl.google.com/android/repository/desktop-head-unit-linux-x64_r02.0.zip"
},
{
"os": "windows",
"sha1": "471ae94176512f859580e6ac9e8b8f5010632c78",
"size": 7130894,
"url": "https://dl.google.com/android/repository/desktop-head-unit-windows_r02.0.rc2.zip"
"sha1": "680418d5aca256cce151eb7f9527294e95b6bb8a",
"size": 6801703,
"url": "https://dl.google.com/android/repository/desktop-head-unit-windows-x64_r02.0.zip"
}
],
"displayName": "Android Auto Desktop Head Unit Emulator",
"license": "android-sdk-preview-license",
"license": "android-sdk-license",
"name": "extras",
"path": "extras/google/auto",
"revision": "2.0-rc2"
"revision": "2.0"
}
},
"ndk": {
@ -4265,6 +4495,195 @@
"name": "ndk",
"path": "ndk/23.0.7599858",
"revision": "23.0.7599858"
},
"23.1.7779620": {
"archives": [
{
"os": "macosx",
"sha1": "4f54966e733f92964f097887bedfdd0faa0f7042",
"size": 978956151,
"url": "https://dl.google.com/android/repository/android-ndk-r23b-darwin.zip"
},
{
"os": "linux",
"sha1": "f47ec4c4badd11e9f593a8450180884a927c330d",
"size": 725122099,
"url": "https://dl.google.com/android/repository/android-ndk-r23b-linux.zip"
},
{
"os": "windows",
"sha1": "6e3fb50022c611a2b13d02f5de5c21cc7206a298",
"size": 788638042,
"url": "https://dl.google.com/android/repository/android-ndk-r23b-windows.zip"
}
],
"displayName": "NDK (Side by side) 23.1.7779620",
"license": "android-sdk-license",
"name": "ndk",
"path": "ndk/23.1.7779620",
"revision": "23.1.7779620"
},
"24.0.7856742-rc1": {
"archives": [
{
"os": "macosx",
"sha1": "de560fe3bc8b760d598a08bc329030cf36f6a490",
"size": 950494966,
"url": "https://dl.google.com/android/repository/android-ndk-r24-beta1-darwin.zip"
},
{
"os": "linux",
"sha1": "4e43e498699b00cab8b07d431b65a0c1aa022313",
"size": 684615573,
"url": "https://dl.google.com/android/repository/android-ndk-r24-beta1-linux.zip"
},
{
"os": "windows",
"sha1": "ade5412e9ac0dd206824e9249a5fbc11c9c248bf",
"size": 690364848,
"url": "https://dl.google.com/android/repository/android-ndk-r24-beta1-windows.zip"
}
],
"displayName": "NDK (Side by side) 24.0.7856742",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/24.0.7856742",
"revision": "24.0.7856742-rc1"
},
"24.0.7956693-rc2": {
"archives": [
{
"os": "macosx",
"sha1": "9f95216133c78e871a31b35278dce524956579bd",
"size": 948103952,
"url": "https://dl.google.com/android/repository/android-ndk-r24-beta2-darwin.zip"
},
{
"os": "linux",
"sha1": "78f3006243c0bc051c7c7bfb939689032e7c41ba",
"size": 695411089,
"url": "https://dl.google.com/android/repository/android-ndk-r24-beta2-linux.zip"
},
{
"os": "windows",
"sha1": "d4eb40c03259094ae3ea05134ee17af717f48d6d",
"size": 661623688,
"url": "https://dl.google.com/android/repository/android-ndk-r24-beta2-windows.zip"
}
],
"displayName": "NDK (Side by side) 24.0.7956693",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/24.0.7956693",
"revision": "24.0.7956693-rc2"
},
"24.0.8079956-rc3": {
"archives": [
{
"os": "macosx",
"sha1": "c7f3552e5bd6a76ea7fd460fe49afb4c7bdc5e39",
"size": 901524232,
"url": "https://dl.google.com/android/repository/android-ndk-r24-rc1-darwin.zip"
},
{
"os": "linux",
"sha1": "de2a02e65c1c720336fe991dc708875539df85bf",
"size": 667835859,
"url": "https://dl.google.com/android/repository/android-ndk-r24-rc1-linux.zip"
},
{
"os": "windows",
"sha1": "dbc9f19cc758285192c26238b4b87be207464bf2",
"size": 663173050,
"url": "https://dl.google.com/android/repository/android-ndk-r24-rc1-windows.zip"
}
],
"displayName": "NDK (Side by side) 24.0.8079956",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/24.0.8079956",
"revision": "24.0.8079956-rc3"
},
"24.0.8215888": {
"archives": [
{
"os": "macosx",
"sha1": "fc4d0d86e3c802e8c4a6865d99cff58b336e2d5a",
"size": 901417197,
"url": "https://dl.google.com/android/repository/android-ndk-r24-darwin.zip"
},
{
"os": "linux",
"sha1": "eceb18f147282eb93615eff1ad84a9d3962fbb31",
"size": 667731974,
"url": "https://dl.google.com/android/repository/android-ndk-r24-linux.zip"
},
{
"os": "windows",
"sha1": "75f9c281c64762d18c84da465f486c60def47829",
"size": 663076813,
"url": "https://dl.google.com/android/repository/android-ndk-r24-windows.zip"
}
],
"displayName": "NDK (Side by side) 24.0.8215888",
"license": "android-sdk-license",
"name": "ndk",
"path": "ndk/24.0.8215888",
"revision": "24.0.8215888"
},
"25.0.8151533-rc1": {
"archives": [
{
"os": "macosx",
"sha1": "32024b773d65dd445cf8cf52156a331c544ee7e0",
"size": 918358459,
"url": "https://dl.google.com/android/repository/android-ndk-r25-beta1-darwin.zip"
},
{
"os": "linux",
"sha1": "0acca5e8faa47a6c961c358d724a93e33f8d6caf",
"size": 680831029,
"url": "https://dl.google.com/android/repository/android-ndk-r25-beta1-linux.zip"
},
{
"os": "windows",
"sha1": "a5486182f79696794eb1a216c11f5e29652e72d1",
"size": 676453790,
"url": "https://dl.google.com/android/repository/android-ndk-r25-beta1-windows.zip"
}
],
"displayName": "NDK (Side by side) 25.0.8151533",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/25.0.8151533",
"revision": "25.0.8151533-rc1"
},
"25.0.8221429-rc2": {
"archives": [
{
"os": "macosx",
"sha1": "51961d41ffe63ac664edf26b51906ec07213e088",
"size": 915502522,
"url": "https://dl.google.com/android/repository/android-ndk-r25-beta2-darwin.zip"
},
{
"os": "linux",
"sha1": "3b7435a1a851a4b2dadeafa466f323db9235dd9a",
"size": 677975159,
"url": "https://dl.google.com/android/repository/android-ndk-r25-beta2-linux.zip"
},
{
"os": "windows",
"sha1": "4fd188fdba7413c397bcaa342039d07266c954b6",
"size": 673597865,
"url": "https://dl.google.com/android/repository/android-ndk-r25-beta2-windows.zip"
}
],
"displayName": "NDK (Side by side) 25.0.8221429",
"license": "android-sdk-preview-license",
"name": "ndk",
"path": "ndk/25.0.8221429",
"revision": "25.0.8221429-rc2"
}
},
"ndk-bundle": {
@ -4962,32 +5381,32 @@
}
},
"platform-tools": {
"31.0.3": {
"33.0.1": {
"archives": [
{
"os": "macosx",
"sha1": "15f6f7e97b35994d538a0fc5147ad5fb502ba03d",
"size": 13227985,
"url": "https://dl.google.com/android/repository/e8b2b4cbe47c728c1e54c5f524440b52d4e1a33c.platform-tools_r31.0.3-darwin.zip"
"sha1": "82f7c23e9e4acf6c86991bb23cd5d9f861f7819f",
"size": 13131422,
"url": "https://dl.google.com/android/repository/platform-tools_r33.0.1-darwin.zip"
},
{
"os": "linux",
"sha1": "f09581347ed39978abb3a99c6bb286de6adc98ef",
"size": 13302579,
"url": "https://dl.google.com/android/repository/platform-tools_r31.0.3-linux.zip"
"sha1": "4792ee4593e8e2395ddb87a3e82d60629eb0e977",
"size": 7449306,
"url": "https://dl.google.com/android/repository/platform-tools_r33.0.1-linux.zip"
},
{
"os": "windows",
"sha1": "26bc02bbd920e8ed461ae526cc4c69d773b72395",
"size": 11912013,
"url": "https://dl.google.com/android/repository/platform-tools_r31.0.3-windows.zip"
"sha1": "e91ab59b5ddc5e387c5171b37c3813eaa2fa3846",
"size": 6331279,
"url": "https://dl.google.com/android/repository/platform-tools_r33.0.1-windows.zip"
}
],
"displayName": "Android SDK Platform-Tools",
"license": "android-sdk-license",
"name": "platform-tools",
"path": "platform-tools",
"revision": "31.0.3"
"revision": "33.0.1"
}
},
"platforms": {
@ -5375,6 +5794,21 @@
"path": "platforms/android-31",
"revision": "31"
},
"32": {
"archives": [
{
"os": "all",
"sha1": "afae86ed55d29733d50996ffed832f2d1bd75b9a",
"size": 66108299,
"url": "https://dl.google.com/android/repository/platform-32_r01.zip"
}
],
"displayName": "Android SDK Platform 32",
"license": "android-sdk-license",
"name": "platforms",
"path": "platforms/android-32",
"revision": "32"
},
"4": {
"archives": [
{
@ -5500,9 +5934,51 @@
"name": "platforms",
"path": "platforms/android-9",
"revision": "9"
},
"Tiramisu": {
"archives": [
{
"os": "all",
"sha1": "2ac79862a909392d68d8ad503c45809e725d71f6",
"size": 67290653,
"url": "https://dl.google.com/android/repository/platform-Tiramisu_r02.zip"
}
],
"displayName": "Android SDK Platform Tiramisu",
"license": "android-sdk-license",
"name": "platforms",
"path": "platforms/android-Tiramisu",
"revision": "Tiramisu"
}
},
"skiaparser": {
"1": {
"archives": [
{
"os": "linux",
"sha1": "72be6f7630b28e02449a8bbadff7589688f3c3d6",
"size": 7014665,
"url": "https://dl.google.com/android/repository/skiaparser-8339467-linux.zip"
},
{
"os": "macosx",
"sha1": "53c688b0d2458bcead273791745fb27efa3b58ce",
"size": 17231541,
"url": "https://dl.google.com/android/repository/skiaparser-8339467-mac.zip"
},
{
"os": "windows",
"sha1": "8d08dc7c56531092f1704a24b3457bd0455a4be1",
"size": 10174177,
"url": "https://dl.google.com/android/repository/skiaparser-8339467-win.zip"
}
],
"displayName": "Layout Inspector image server for API 31 and T",
"license": "android-sdk-license",
"name": "skiaparser",
"path": "skiaparser/3",
"revision": "1"
},
"3": {
"archives": [
{
@ -5813,6 +6289,21 @@
"name": "sources",
"path": "sources/android-30",
"revision": "30"
},
"31": {
"archives": [
{
"os": "all",
"sha1": "2934d1b2975a8bf9fff112bd45a04f6d90db743e",
"size": 46383726,
"url": "https://dl.google.com/android/repository/sources-31_r01.zip"
}
],
"displayName": "Sources for Android 31",
"license": "android-sdk-license",
"name": "sources",
"path": "sources/android-31",
"revision": "31"
}
},
"tools": {

View File

@ -3,7 +3,7 @@
buildDunePackage {
pname = "json-data-encoding-bson";
inherit (json-data-encoding) version src useDune2 doCheck;
inherit (json-data-encoding) version src doCheck;
propagatedBuildInputs = [
json-data-encoding

View File

@ -2,15 +2,14 @@
buildDunePackage rec {
pname = "json-data-encoding";
version = "0.10";
version = "0.11";
minimalOCamlVersion = "4.10";
src = fetchFromGitLab {
owner = "nomadic-labs";
repo = "json-data-encoding";
rev = "${version}";
sha256 = "0m0xx382wr44wz7gxf7mpfjx2w287pvqhg2lfvzmclfq3y5iy6mx";
sha256 = "sha256-4FNUU82sq3ylgw0lxHlwi1OV58NRRh9zJqE47YyQZSc=";
};
useDune2 = true;
propagatedBuildInputs = [
uri

View File

@ -2,9 +2,9 @@
buildDunePackage {
pname = "resto-acl";
inherit (resto) src version meta useDune2 doCheck;
inherit (resto) src version meta doCheck;
minimalOCamlVersion = "4.05";
minimalOCamlVersion = "4.10";
propagatedBuildInputs = [
resto

View File

@ -8,7 +8,7 @@
buildDunePackage {
pname = "resto-cohttp-client";
inherit (resto) src version meta useDune2 doCheck;
inherit (resto) src version meta doCheck;
propagatedBuildInputs = [
resto

View File

@ -12,7 +12,7 @@
buildDunePackage {
pname = "resto-cohttp-self-serving-client";
inherit (resto) src version meta useDune2 doCheck;
inherit (resto) src version meta doCheck;
propagatedBuildInputs = [
resto

View File

@ -11,7 +11,7 @@
buildDunePackage {
pname = "resto-cohttp-server";
inherit (resto) src version meta useDune2 doCheck;
inherit (resto) src version meta doCheck;
propagatedBuildInputs = [
resto

View File

@ -2,7 +2,7 @@
buildDunePackage {
pname = "resto-cohttp";
inherit (resto) src version meta useDune2 doCheck;
inherit (resto) src version meta doCheck;
propagatedBuildInputs = [
resto

View File

@ -2,16 +2,14 @@
buildDunePackage rec {
pname = "resto";
version = "0.6.1";
version = "0.7";
src = fetchFromGitLab {
owner = "nomadic-labs";
repo = "resto";
rev = "v${version}";
sha256 = "13h3zga7h2jhgbyda1q53szbpxcz3vvy3c51mlqk3jh9jq2wrn87";
sha256 = "sha256-aX7w/rsoOmbni8BOXa0WnoQ47Y5zl91vWvMobuNFT3Y=";
};
useDune2 = true;
propagatedBuildInputs = [
uri
];

View File

@ -2,7 +2,7 @@
buildDunePackage {
pname = "resto-directory";
inherit (resto) src version meta useDune2 doCheck;
inherit (resto) src version meta doCheck;
propagatedBuildInputs = [
resto

View File

@ -1,13 +0,0 @@
{ buildDunePackage, resto, resto-directory, ezresto, lwt }:
buildDunePackage {
pname = "ezresto-directory";
inherit (resto) src version meta useDune2 doCheck;
propagatedBuildInputs = [
ezresto
resto-directory
resto
lwt
];
}

View File

@ -1,12 +0,0 @@
{ lib, buildDunePackage, resto, resto-json, uri }:
buildDunePackage {
pname = "ezresto";
inherit (resto) src version meta useDune2 doCheck;
propagatedBuildInputs = [
uri
resto
resto-json
];
}

View File

@ -2,7 +2,7 @@
buildDunePackage {
pname = "resto-json";
inherit (resto) src version meta useDune2 doCheck;
inherit (resto) src version meta doCheck;
propagatedBuildInputs = [
resto

View File

@ -0,0 +1,48 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchPypi
, poetry-core
, pytest-asyncio
, pytestCheckHook
, typing-extensions
}:
buildPythonPackage rec {
pname = "bite-parser";
version = "0.1.1";
disabled = pythonOlder "3.7";
format = "pyproject";
src = fetchPypi {
inherit pname version;
sha256 = "8021100bfbd6cc6056605361e763a3591efdea38014b3d8aa76c74c74de4ead4";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'python = "^3.7,<=3.10"' 'python = "^3.7,<3.11"' \
--replace poetry.masonry.api poetry.core.masonry.api
'';
nativeBuildInputs = [
poetry-core
];
checkInputs = [
pytest-asyncio
pytestCheckHook
typing-extensions
];
pythonImportsCheck = [ "bite" ];
meta = {
description = "Asynchronous parser taking incremental bites out of your byte input stream";
homepage = "https://github.com/jgosmann/bite-parser";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -13,11 +13,11 @@
buildPythonPackage rec {
pname = "blocksat-cli";
version = "0.4.3";
version = "0.4.4";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-HHalq64pgjobnPwjXMi57OumHxOuf7wjuw0d6arMoAI=";
sha256 = "sha256-btwL8l5UdE9FwWXfuf1OHa8EwXDoFrh8tvOwr1yhyRg=";
};
propagatedBuildInputs = [

View File

@ -0,0 +1,66 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, more-properties
, typing-inspect
, toolz
, toposort
, bson
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "dataclasses-serialization";
version = "1.3.1";
# upstream requires >= 3.6 but only 3.7 includes dataclasses
disabled = pythonOlder "3.7";
format = "setuptools";
src = fetchFromGitHub {
owner = "madman-bob";
repo = "python-dataclasses-serialization";
rev = version;
hash = "sha256-jLMR2D01KgzHHRP0zduMBJt8xgBmIquWLCjZYLo2/AA=";
};
postPatch = ''
mv pypi_upload/setup.py .
substituteInPlace setup.py \
--replace "project_root = Path(__file__).parents[1]" "project_root = Path(__file__).parents[0]"
# dataclasses is included in Python 3.7
substituteInPlace requirements.txt \
--replace dataclasses ""
# https://github.com/madman-bob/python-dataclasses-serialization/issues/16
sed -i '/(\(Dict\|List\)/d' tests/test_json.py tests/test_bson.py
'';
propagatedBuildInputs = [
more-properties
typing-inspect
toolz
toposort
];
checkInputs = [
bson
pytestCheckHook
];
pythonImportsCheck = [
"dataclasses_serialization.bson"
"dataclasses_serialization.json"
"dataclasses_serialization.serializer_base"
];
meta = {
description = "Serialize/deserialize Python dataclasses to various other data formats";
homepage = "https://github.com/madman-bob/python-dataclasses-serialization";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -0,0 +1,38 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchPypi
, untokenize
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "docformatter";
version = "1.4";
disabled = pythonOlder "3.6";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "064e6d81f04ac96bc0d176cbaae953a0332482b22d3ad70d47c8a7f2732eef6f";
};
propagatedBuildInputs = [
untokenize
];
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [ "docformatter" ];
meta = {
description = "Formats docstrings to follow PEP 257";
homepage = "https://github.com/myint/docformatter";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -9,14 +9,14 @@
buildPythonPackage rec {
pname = "google-re2";
version = "0.2.20220401";
version = "0.2.20220601";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-v3G+MvFV8gq9LJqj/zrtlTjRm0ZNxTh0UdQSPiwFHY4=";
hash = "sha256-zBCYPcqgsyYKTNHAfHrcH6aWfbz6zJwajxHkwRjHeQU=";
};
propagatedBuildInputs = [

View File

@ -7,14 +7,14 @@
}:
buildPythonPackage rec {
version = "1.0.0";
version = "1.0.1";
pname = "gpsoauth";
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
sha256 = "1c4d6a980625b8ab6f6f1cf3e30d9b10a6c61ababb2b60bfe4870649e9c82be0";
sha256 = "sha256-wxLyvrNwT3QQHGLCxaIFdRG7OJpECMpynE+lgAGtFk0=";
};
propagatedBuildInputs = [ pycryptodomex requests ];

View File

@ -7,12 +7,12 @@
}:
buildPythonPackage rec {
version = "5.3.2";
version = "5.4.0";
pname = "gspread";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-MZdm2Q2wUFYpP37grSs1UDoaQGg6dYl6KSI5jNIBYoM=";
sha256 = "sha256-thcrYvqJnj5BmdLQ6hAItkMFVUugjT06lukSOCT97Eg=";
};
propagatedBuildInputs = [ requests google-auth google-auth-oauthlib ];

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "hahomematic";
version = "1.6.1";
version = "1.6.2";
format = "pyproject";
disabled = pythonOlder "3.9";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "danielperna84";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "sha256-/v0om2SbikNpMCvJhwIGlWSiZilhnJi7qj8SCV+zHCU=";
sha256 = "sha256-x7TaSpmNd0YUgh81Favpo6qZgRsVeIyvvFfH3UCCqsQ=";
};
propagatedBuildInputs = [

View File

@ -8,7 +8,7 @@
buildPythonPackage rec {
pname = "hatasmota";
version = "0.5.0";
version = "0.5.1";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "emontnemery";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "sha256-pIMao1zZXJJVEG9J9ypWlo/JF0nmci49ANcqHJSY2AY=";
sha256 = "sha256-1tCTkmhO9HyfdQuymTtFdCvxG9+Xs5/dEN5tB3/2fpQ=";
};
propagatedBuildInputs = [

View File

@ -0,0 +1,45 @@
{ lib
, aiohttp
, buildPythonPackage
, fetchPypi
, poetry-core
, pydantic
, pythonOlder
}:
buildPythonPackage rec {
pname = "huum";
version = "0.5.0";
format = "pyproject";
disabled = pythonOlder "3.9";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-ldhAg9zGCEYvya01s6AHzALI4dS+d0R73c62YZyk19M=";
};
nativeBuildInputs = [
poetry-core
];
propagatedBuildInputs = [
aiohttp
pydantic
];
# Tests are not shipped and source not tagged
# https://github.com/frwickst/pyhuum/issues/2
doCheck = false;
pythonImportsCheck = [
"huum"
];
meta = with lib; {
description = "Library for for Huum saunas";
homepage = "https://github.com/frwickst/pyhuum";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};
}

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "llfuse";
version = "1.4.1";
version = "1.4.2";
disabled = pythonOlder "3.5";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "python-llfuse";
repo = "python-llfuse";
rev = "release-${version}";
sha256 = "1dcpdg6cpkmdbyg66fgrylj7dp9zqzg5bf23y6m6673ykgxlv480";
hash = "sha256-TnZnv439fLvg0WM96yx0dPSSz8Mrae6GDC9LiLFrgQ8=";
};
nativeBuildInputs = [ cython pkg-config ];

View File

@ -0,0 +1,46 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "more-properties";
version = "1.1.1";
# upstream requires >= 3.6 but only 3.7 includes dataclasses
disabled = pythonOlder "3.7";
format = "setuptools";
src = fetchFromGitHub {
owner = "madman-bob";
repo = "python-more-properties";
rev = version;
hash = "sha256-dKG97rw5IG19m7u3ZDBM2yGScL5cFaKBvGZxPVJaUTE=";
};
postPatch = ''
mv pypi_upload/setup.py .
substituteInPlace setup.py \
--replace "project_root = Path(__file__).parents[1]" "project_root = Path(__file__).parents[0]"
# dataclasses is included in Python 3.7
substituteInPlace requirements.txt \
--replace dataclasses ""
'';
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [ "more_properties" ];
meta = {
description = "A collection of property variants";
homepage = "https://github.com/madman-bob/python-more-properties";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "nettigo-air-monitor";
version = "1.2.4";
version = "1.3.0";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "bieniu";
repo = pname;
rev = version;
sha256 = "sha256-zmmJ3F2Fl4u7vOx1h5Z0LtWL0/5xmZiFRY2NU8Tc0MY=";
sha256 = "sha256-O/HJTqmNmnx85AVuhRRxNqS1W0dZyKFSPVFqaBXAuhU=";
};
propagatedBuildInputs = [
@ -36,13 +36,6 @@ buildPythonPackage rec {
pytestCheckHook
];
postPatch = ''
substituteInPlace setup.py \
--replace "pytest-runner" ""
substituteInPlace setup.cfg \
--replace "--cov --cov-report term-missing " ""
'';
pythonImportsCheck = [
"nettigo_air_monitor"
];

View File

@ -28,7 +28,7 @@
buildPythonPackage rec {
pname = "ocrmypdf";
version = "13.4.5";
version = "13.4.6";
src = fetchFromGitHub {
owner = "ocrmypdf";
@ -40,7 +40,7 @@ buildPythonPackage rec {
postFetch = ''
rm "$out/.git_archival.txt"
'';
hash = "sha256-5IpJ55Vu9LjGgWJITkAH5fOr+MfovswWhwqbEs/RlzA=";
hash = "sha256-Hd9vsw+UEpE7juYSCiHhXtxaC58OtS/Uy20Jdp6QXPA=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;

View File

@ -1,17 +1,17 @@
{ lib
, fetchFromGitHub
}: rec {
version = "3.1.0";
version = "3.3.0";
src = fetchFromGitHub {
owner = "openrazer";
repo = "openrazer";
rev = "v${version}";
sha256 = "133szhi0xsfbnjw47xbvyidflxd8fp7pv78vk5wf9s5ch3hpnvxs";
sha256 = "1lw2cpj2xzwcsn5igrqj3f6m2v5n6zp1xa9vv3j9f9r2fbb48jcl";
};
meta = with lib; {
homepage = "https://openrazer.github.io/";
license = licenses.gpl2Only;
maintainers = with maintainers; [ roelvandijk evanjs ];
maintainers = with maintainers; [ evanjs ] ++ teams.lumiguide.members;
platforms = platforms.linux;
};
}

View File

@ -7,14 +7,14 @@
buildPythonPackage rec {
pname = "pex";
version = "2.1.90";
version = "2.1.91";
format = "flit";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-F9kpkp1Z70TWZjg97X0ZHMommswj07sJxQXiKVPMnRU=";
hash = "sha256-nlEdCdFxF/maOZtpUwNVExnmqUhdAfzlbrEMxAHvUxE=";
};
nativeBuildInputs = [

View File

@ -83,12 +83,19 @@ buildPythonPackage rec {
] ++ lib.optionals stdenv.isDarwin [
# Requires loopback networking
"--deselect=pyarrow/tests/test_ipc.py::test_socket_"
"--deselect=pyarrow/tests/test_flight.py::test_never_sends_data"
"--deselect=pyarrow/tests/test_flight.py::test_large_descriptor"
"--deselect=pyarrow/tests/test_flight.py::test_large_metadata_client"
"--deselect=pyarrow/tests/test_flight.py::test_none_action_side_effect"
];
dontUseSetuptoolsCheck = true;
preCheck = ''
shopt -s extglob
rm -r pyarrow/!(tests)
'' + lib.optionalString stdenv.isDarwin ''
# OSError: [Errno 24] Too many open files
ulimit -n 1024
'';
pythonImportsCheck = [ "pyarrow" ] ++ map (module: "pyarrow.${module}") ([
@ -104,7 +111,6 @@ buildPythonPackage rec {
] ++ lib.optionals (!stdenv.isDarwin) [ "plasma" ]);
meta = with lib; {
broken = stdenv.isDarwin;
description = "A cross-language development platform for in-memory data";
homepage = "https://arrow.apache.org/";
license = licenses.asl20;

View File

@ -1,20 +1,45 @@
{ stdenv, lib, buildPythonPackage, fetchPypi, pkg-config, fuse3, trio, pytestCheckHook, pytest-trio, which }:
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, cython
, pkg-config
, fuse3
, trio
, python
, pytestCheckHook
, pytest-trio
, which
}:
buildPythonPackage rec {
pname = "pyfuse3";
version = "3.2.1";
src = fetchPypi {
inherit pname version;
sha256 = "22d146dac59a8429115e9a93317975ea54b35e0278044a94d3fac5b4ad5f7e33";
disabled = pythonOlder "3.5";
format = "setuptools";
src = fetchFromGitHub {
owner = "libfuse";
repo = "pyfuse3";
rev = "release-${version}";
hash = "sha256-JGbp2bSI/Rvyys1xMd2o34KlqqBsV6B9LhuuNopayYA=";
};
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [
cython
pkg-config
];
buildInputs = [ fuse3 ];
propagatedBuildInputs = [ trio ];
preBuild = ''
${python.pythonForBuild.interpreter} setup.py build_cython
'';
checkInputs = [
pytestCheckHook
pytest-trio
@ -25,11 +50,15 @@ buildPythonPackage rec {
# Checks if a /usr/bin directory exists, can't work on NixOS
disabledTests = [ "test_listdir" ];
pythonImportsCheck = [
"pyfuse3"
"pyfuse3_asyncio"
];
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64);
description = "Python 3 bindings for libfuse 3 with async I/O support";
homepage = "https://github.com/libfuse/pyfuse3";
license = licenses.lgpl2Plus;
maintainers = with maintainers; [ nyanloutre ];
maintainers = with maintainers; [ nyanloutre dotlambda ];
};
}

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "pyhiveapi";
version = "0.5.3";
version = "0.5.4";
format = "pyproject";
@ -24,7 +24,7 @@ buildPythonPackage rec {
owner = "Pyhass";
repo = "Pyhiveapi";
rev = "v${version}";
hash = "sha256-QBn+yKZN461npdhGngTnFeewE40dPZ+5TkUf5Xacajk=";
hash = "sha256-H/FxFv+1dOeJqnLZ0urDJfysYZHybeTJdQkjAFghTeI=";
};
postPatch = ''

View File

@ -1,30 +1,50 @@
{ stdenv
, lib
, buildPythonPackage
, fetchPypi
, chameleon
, fetchpatch
, fetchPypi
, pyramid
, zope_interface
, pytestCheckHook
, setuptools
, zope_interface
}:
buildPythonPackage rec {
pname = "pyramid_chameleon";
pname = "pyramid-chameleon";
version = "0.3";
src = fetchPypi {
inherit pname version;
sha256 = "d176792a50eb015d7865b44bd9b24a7bd0489fa9a5cebbd17b9e05048cef9017";
pname = "pyramid_chameleon";
inherit version;
sha256 = "sha256-0XZ5KlDrAV14ZbRL2bJKe9BIn6mlzrvRe54FBIzvkBc=";
};
patches = [
# https://github.com/Pylons/pyramid_chameleon/pull/25
./test-renderers-pyramid-import.patch
# Compatibility with pyramid 2, https://github.com/Pylons/pyramid_chameleon/pull/34
(fetchpatch {
name = "support-later-limiter.patch";
url = "https://github.com/Pylons/pyramid_chameleon/commit/36348bf4c01f52c3461e7ba4d20b1edfc54dba50.patch";
sha256 = "sha256-cPS7JhcS8nkBS1T0OdZke25jvWHT0qkPFjyPUDKHBGU=";
})
];
propagatedBuildInputs = [ chameleon pyramid zope_interface setuptools ];
propagatedBuildInputs = [
chameleon
pyramid
setuptools
zope_interface
];
pythonImportsCheck = [ "pyramid_chameleon" ];
checkInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"pyramid_chameleon"
];
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;

View File

@ -3,23 +3,54 @@
, buildPythonPackage
, fetchPypi
, webtest
, markupsafe
, jinja2
, pytestCheckHook
, zope_deprecation
, pyramid
, pythonOlder
}:
buildPythonPackage rec {
pname = "pyramid_jinja2";
pname = "pyramid-jinja2";
version = "2.10";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-8nEGnZ6ay6x622kSGQqEj2M49+V6+68+lSN/6DzI9NI=";
pname = "pyramid_jinja2";
inherit version;
hash = "sha256-8nEGnZ6ay6x622kSGQqEj2M49+V6+68+lSN/6DzI9NI=";
};
buildInputs = [ webtest ];
propagatedBuildInputs = [ jinja2 pyramid ];
propagatedBuildInputs = [
markupsafe
jinja2
pyramid
zope_deprecation
];
pythonImportsCheck = [ "pyramid_jinja2" ];
checkInputs = [
webtest
pytestCheckHook
];
postPatch = ''
substituteInPlace setup.cfg \
--replace " --cov" ""
'';
pythonImportsCheck = [
"pyramid_jinja2"
];
disabledTests = [
# AssertionError: Lists differ: ['pyramid_jinja2-2.10',...
"test_it_relative_to_package"
# AssertionError: False is not true
"test_options"
];
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin;

View File

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "pysnmplib";
version = "5.0.15";
version = "5.0.16";
format = "pyproject";
disabled = pythonOlder "3.8";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "pysnmp";
repo = "pysnmp";
rev = "v${version}";
hash = "sha256-9HkS8oY9aHr8jXmryUMNz3z36BMWeYMuXLKdpEzCgZc=";
hash = "sha256-TmH4lvlgShEbhpBFEpgGJWLR2k1TmT2MhV2bgYWt9vo=";
};
nativeBuildInputs = [

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "regenmaschine";
version = "2022.05.0";
version = "2022.05.1";
format = "pyproject";
disabled = pythonOlder "3.8";
@ -22,8 +22,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "bachya";
repo = pname;
rev = version;
sha256 = "sha256-8tc/7XaHqgnuQgQc1ZlkoiBnl/d+OKKXjKNWwY+vCaU=";
rev = "refs/tags/${version}";
sha256 = "sha256-E66qs8EC5o2WNMlv8ITK98De639wwhscbSFjljDzrks=";
};
nativeBuildInputs = [

View File

@ -1,44 +1,44 @@
{ lib
, stdenv
, buildPythonPackage
, fetchPypi
, pythonOlder
, asdf
, astropy
, setuptools-scm
, astropy-helpers
, astropy-extension-helpers
, astropy-helpers
, beautifulsoup4
, buildPythonPackage
, drms
, fetchPypi
, glymur
, h5netcdf
, hypothesis
, lxml
, matplotlib
, numpy
, pandas
, parfive
, pytestCheckHook
, pytest-astropy
, pytestCheckHook
, pytest-mock
, python-dateutil
, pythonOlder
, scikitimage
, scipy
, setuptools-scm
, sqlalchemy
, towncrier
, tqdm
, zeep
}:
buildPythonPackage rec {
pname = "sunpy";
version = "3.1.6";
version = "4.0.0";
format = "setuptools";
disabled = pythonOlder "3.6";
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-mI5W4EDzTk3GryTQbnmvP+ks3VJDzw4drew9wD9+tIE=";
hash = "sha256-01eGYls8eE2e3vzDYXz5D1xQs7pxpmHt89aBKCvVdLg=";
};
nativeBuildInputs = [
@ -47,32 +47,59 @@ buildPythonPackage rec {
];
propagatedBuildInputs = [
asdf
astropy
astropy-helpers
beautifulsoup4
drms
glymur
h5netcdf
matplotlib
numpy
pandas
parfive
python-dateutil
scikitimage
scipy
sqlalchemy
towncrier
tqdm
zeep
];
passthru.optional-dependencies = {
asdf = [
asdf
# asdf-astropy
];
database = [
sqlalchemy
];
image = [
scikitimage
scipy
];
net = [
beautifulsoup4
drms
python-dateutil
tqdm
zeep
];
jpeg2000 = [
glymur
lxml
];
timeseries = [
# cdflib
h5netcdf
# h5py
matplotlib
pandas
];
};
checkInputs = [
hypothesis
pytest-astropy
pytest-mock
pytestCheckHook
];
] ++ passthru.optional-dependencies.asdf
++ passthru.optional-dependencies.database
++ passthru.optional-dependencies.image
++ passthru.optional-dependencies.net
++ passthru.optional-dependencies.timeseries;
postPatch = ''
substituteInPlace setup.cfg \
--replace " --dist no" ""
'';
# darwin has write permission issues
doCheck = stdenv.isLinux;
@ -86,18 +113,16 @@ buildPythonPackage rec {
"test_sunpy_warnings_logging"
"test_main_nonexisting_module"
"test_main_stdlib_module"
"test_find_dependencies"
];
disabledTestPaths = [
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/helioprojective-1.0.0.yaml"
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliocentric-1.0.0.yaml"
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliographic_carrington-*.yaml"
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/geocentricearthequatorial-1.0.0.yaml"
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/geocentricsolarecliptic-1.0.0.yaml"
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliocentricearthecliptic-1.0.0.yaml"
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliocentricinertial-1.0.0.yaml"
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/map/generic_map-1.0.0.yaml"
# requires mpl-animators package
# Tests are very slow
"sunpy/net/tests/test_fido.py"
# asdf.extensions plugin issue
"sunpy/io/special/asdf/resources/schemas/"
"sunpy/io/special/asdf/resources/manifests/sunpy-1.0.0.yaml"
# Requires mpl-animators package
"sunpy/map/tests/test_compositemap.py"
"sunpy/map/tests/test_mapbase.py"
"sunpy/map/tests/test_mapsequence.py"
@ -109,8 +134,12 @@ buildPythonPackage rec {
"sunpy/visualization/animator/tests/test_mapsequenceanimator.py"
"sunpy/visualization/animator/tests/test_wcs.py"
"sunpy/visualization/colormaps/tests/test_cm.py"
# requires cdflib package
# Requires cdflib package
"sunpy/timeseries/tests/test_timeseries_factory.py"
# Requires jplephem
"sunpy/image/tests/test_transform.py"
"sunpy/io/special/asdf/tests/test_coordinate_frames.py"
"sunpy/io/special/asdf/tests/test_genericmap.py"
# distutils is deprecated
"sunpy/io/setup_package.py"
];

View File

@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-setuptools";
version = "57.4.15";
version = "57.4.17";
format = "setuptools";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-ZQUozoA1hgKdfxU/Mq7S26prsoiLIzM0r4DXumPtPIc=";
sha256 = "sha256-nVVvyvaAihzq1KqkHlwHph8BUqh1gR4SOXOOuk4LexY=";
};
# Module doesn't have tests

View File

@ -1,21 +1,38 @@
{ lib, buildPythonPackage, fetchFromGitHub, pytest, mock }:
{ lib
, buildPythonPackage
, fetchFromGitHub
, mock
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "verboselogs";
version = "1.7";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "xolox";
repo = "python-verboselogs";
rev = version;
sha256 = "10jzm8pkl49as4y2zyiidmfqqj5zmqg3p73jvx4lfxi0gmp1vhl5";
hash = "sha256-hcIdbn0gdkdJ33KcOx6uv0iMXW0x+i880SoROi+qX4I=";
};
# do not run pylint plugin test, as astroid is a old unsupported version
checkPhase = ''
PATH=$PATH:$out/bin pytest . -k "not test_pylint_plugin"
'';
checkInputs = [ pytest mock ];
checkInputs = [
pytestCheckHook
mock
];
pythonImportsCheck = [
"verboselogs"
];
disabledTests = [
# Do not run pylint plugin test
"test_pylint_plugin"
];
meta = with lib; {
description = "Verbose logging for Python's logging module";

View File

@ -1,25 +1,41 @@
{ buildPythonPackage, fetchFromGitHub, lib, isPy27, webtest, invoke, flake8
, aiohttp, pytest-aiohttp, pytestCheckHook }:
{ lib
, aiohttp
, buildPythonPackage
, fetchFromGitHub
, pytest-aiohttp
, pytestCheckHook
, pythonOlder
, webtest
}:
buildPythonPackage rec {
pname = "webtest-aiohttp";
version = "2.0.0";
disabled = isPy27;
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "sloria";
repo = pname;
rev = version;
sha256 = "1apr1x0wmnc6l8wv67z4dp00fiiygda6rwpxlspfk7nk9zz37q2j";
sha256 = "sha256-UuAz/k/Tnumupv3ybFR7PkYHwG3kH7M5oobZykEP+ao=";
};
propagatedBuildInputs = [
webtest
];
checkInputs = [
aiohttp
pytest-aiohttp
pytestCheckHook
];
pythonImportsCheck = [
"webtest_aiohttp"
];
propagatedBuildInputs = [ webtest ];
checkInputs = [ invoke flake8 aiohttp pytest-aiohttp pytestCheckHook ];
meta = with lib; {
description = "Provides integration of WebTest with aiohttp.web applications";
homepage = "https://github.com/sloria/webtest-aiohttp";

Some files were not shown because too many files have changed in this diff Show More