summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Weinelt <hexa@darmstadt.ccc.de>2024-01-10 16:09:42 +0100
committerMartin Weinelt <hexa@darmstadt.ccc.de>2024-01-10 16:09:52 +0100
commit10b01dcc8907eb56a67a14fb210f7c5be1c8a2e5 (patch)
treedaeae66b677e82faa252f0721af6f2e40411e39b
parent3c4b68b54d7123b14ff0c5c40e67883c32afe3dd (diff)
parentfb8c64e6a1d68202edc93d284eb491fd266db0d0 (diff)
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts: - pkgs/development/python-modules/types-setuptools/default.nix
-rw-r--r--nixos/modules/services/misc/gitlab.nix1
-rw-r--r--nixos/modules/services/web-apps/dokuwiki.nix73
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix4
-rw-r--r--pkgs/applications/misc/archivebox/default.nix49
-rw-r--r--pkgs/applications/misc/bazecor/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix6
-rw-r--r--pkgs/applications/networking/cluster/atlantis/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix15
-rw-r--r--pkgs/applications/networking/instant-messengers/webcord/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch-bower/default.nix6
-rw-r--r--pkgs/by-name/po/postlight-parser/package.json165
-rw-r--r--pkgs/by-name/po/postlight-parser/package.nix36
-rw-r--r--pkgs/by-name/re/readability-extractor/package.nix29
-rw-r--r--pkgs/development/compilers/nim/default.nix2
-rwxr-xr-xpkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py19
-rw-r--r--pkgs/development/python-modules/epion/default.nix7
-rw-r--r--pkgs/development/python-modules/gql/default.nix26
-rw-r--r--pkgs/development/python-modules/pynetbox/default.nix4
-rw-r--r--pkgs/development/python-modules/pytest-check/default.nix4
-rw-r--r--pkgs/development/python-modules/slackclient/default.nix4
-rw-r--r--pkgs/development/python-modules/types-setuptools/default.nix11
-rw-r--r--pkgs/development/python-modules/zamg/default.nix4
-rw-r--r--pkgs/development/python-modules/zm-py/default.nix43
-rw-r--r--pkgs/games/frotz/default.nix29
-rw-r--r--pkgs/os-specific/linux/kernel/zen-kernels.nix4
-rw-r--r--pkgs/servers/geospatial/mapserver/default.nix5
-rw-r--r--pkgs/servers/geospatial/mapserver/fix-build-w-libxml2-12.patch39
-rw-r--r--pkgs/servers/home-assistant/custom-components/README.md1
-rw-r--r--pkgs/servers/monitoring/grafana-agent/default.nix6
-rw-r--r--pkgs/servers/sabnzbd/default.nix4
30 files changed, 447 insertions, 173 deletions
diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix
index ca6910b795d8..d8e4aab4feea 100644
--- a/nixos/modules/services/misc/gitlab.nix
+++ b/nixos/modules/services/misc/gitlab.nix
@@ -1359,6 +1359,7 @@ in {
''
else ''
jq <${pkgs.writeText "database.yml" (builtins.toJSON databaseConfig)} \
+ '${if lib.versionAtLeast (lib.getVersion cfg.packages.gitlab) "15.9" then ".production.main as $main | del(.production.main) | .production |= {main: $main} + ." else ""}' \
>'${cfg.statePath}/config/database.yml'
''
}
diff --git a/nixos/modules/services/web-apps/dokuwiki.nix b/nixos/modules/services/web-apps/dokuwiki.nix
index 1df1cbf9f0e1..256ab3229ea6 100644
--- a/nixos/modules/services/web-apps/dokuwiki.nix
+++ b/nixos/modules/services/web-apps/dokuwiki.nix
@@ -122,62 +122,8 @@ let
};
};
- # The current implementations of `doRename`, `mkRenamedOptionModule` do not provide the full options path when used with submodules.
- # They would only show `settings.useacl' instead of `services.dokuwiki.sites."site1.local".settings.useacl'
- # The partial re-implementation of these functions is done to help users in debugging by showing the full path.
- mkRenamed = from: to: { config, options, name, ... }: let
- pathPrefix = [ "services" "dokuwiki" "sites" name ];
- fromPath = pathPrefix ++ from;
- fromOpt = getAttrFromPath from options;
- toOp = getAttrsFromPath to config;
- toPath = pathPrefix ++ to;
- in {
- options = setAttrByPath from (mkOption {
- visible = false;
- description = lib.mdDoc "Alias of {option}${showOption toPath}";
- apply = x: builtins.trace "Obsolete option `${showOption fromPath}' is used. It was renamed to ${showOption toPath}" toOp;
- });
- config = mkMerge [
- {
- warnings = optional fromOpt.isDefined
- "The option `${showOption fromPath}' defined in ${showFiles fromOpt.files} has been renamed to `${showOption toPath}'.";
- }
- (lib.modules.mkAliasAndWrapDefsWithPriority (setAttrByPath to) fromOpt)
- ];
- };
-
siteOpts = { options, config, lib, name, ... }:
{
- imports = [
- (mkRenamed [ "aclUse" ] [ "settings" "useacl" ])
- (mkRenamed [ "superUser" ] [ "settings" "superuser" ])
- (mkRenamed [ "disableActions" ] [ "settings" "disableactions" ])
- ({ config, options, ... }: let
- showPath = suffix: lib.options.showOption ([ "services" "dokuwiki" "sites" name ] ++ suffix);
- replaceExtraConfig = "Please use `${showPath ["settings"]}' to pass structured settings instead.";
- ecOpt = options.extraConfig;
- ecPath = showPath [ "extraConfig" ];
- in {
- options.extraConfig = mkOption {
- visible = false;
- apply = x: throw "The option ${ecPath} can no longer be used since it's been removed.\n${replaceExtraConfig}";
- };
- config.assertions = [
- {
- assertion = !ecOpt.isDefined;
- message = "The option definition `${ecPath}' in ${showFiles ecOpt.files} no longer has any effect; please remove it.\n${replaceExtraConfig}";
- }
- {
- assertion = config.mergedConfig.useacl -> (config.acl != null || config.aclFile != null);
- message = "Either ${showPath [ "acl" ]} or ${showPath [ "aclFile" ]} is mandatory if ${showPath [ "settings" "useacl" ]} is true";
- }
- {
- assertion = config.usersFile != null -> config.mergedConfig.useacl != false;
- message = "${showPath [ "settings" "useacl" ]} is required when ${showPath [ "usersFile" ]} is set (Currently defined as `${config.usersFile}' in ${showFiles options.usersFile.files}).";
- }
- ];
- })
- ];
options = {
enable = mkEnableOption (lib.mdDoc "DokuWiki web application");
@@ -392,21 +338,6 @@ let
'';
};
- # Required for the mkRenamedOptionModule
- # TODO: Remove me once https://github.com/NixOS/nixpkgs/issues/96006 is fixed
- # or we don't have any more notes about the removal of extraConfig, ...
- warnings = mkOption {
- type = types.listOf types.unspecified;
- default = [ ];
- visible = false;
- internal = true;
- };
- assertions = mkOption {
- type = types.listOf types.unspecified;
- default = [ ];
- visible = false;
- internal = true;
- };
};
};
in
@@ -440,10 +371,6 @@ in
# implementation
config = mkIf (eachSite != {}) (mkMerge [{
- warnings = flatten (mapAttrsToList (_: cfg: cfg.warnings) eachSite);
-
- assertions = flatten (mapAttrsToList (_: cfg: cfg.assertions) eachSite);
-
services.phpfpm.pools = mapAttrs' (hostName: cfg: (
nameValuePair "dokuwiki-${hostName}" {
inherit user;
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index 895b39bb9cc2..d299148e6ade 100644
--- a/pkgs/applications/audio/ft2-clone/default.nix
+++ b/pkgs/applications/audio/ft2-clone/default.nix
@@ -13,13 +13,13 @@
stdenv.mkDerivation rec {
pname = "ft2-clone";
- version = "1.74";
+ version = "1.75";
src = fetchFromGitHub {
owner = "8bitbubsy";
repo = "ft2-clone";
rev = "v${version}";
- hash = "sha256-plr5vmtYL0adeocY4/3hRI2RQ7lDkLvBbQPq2Jw6MvU=";
+ hash = "sha256-K+RUsRr19fc0E9VhZWIawxkGXCTwqXl3a13pRiRxDPg=";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/archivebox/default.nix b/pkgs/applications/misc/archivebox/default.nix
index 42f9feb421fe..4979a683ebe0 100644
--- a/pkgs/applications/misc/archivebox/default.nix
+++ b/pkgs/applications/misc/archivebox/default.nix
@@ -1,7 +1,16 @@
{ lib
+, stdenv
, python3
, fetchFromGitHub
, fetchPypi
+, curl
+, wget
+, git
+, ripgrep
+, postlight-parser
+, readability-extractor
+, chromium
+, yt-dlp
}:
let
@@ -34,6 +43,8 @@ let
rev = "e43f383dae3a35237e42f6acfe1207a8e7e7bdf5";
hash = "sha256-NAMa78KhAuoJfp0Cb0Codz84sRfRQ1JhSLNYRI4GBPM=";
};
+ # possibly a real issue, but that version is not supported anymore
+ disabledTests = [ "test_should_highlight_bash_syntax_without_name" ];
});
};
};
@@ -41,31 +52,51 @@ in
python.pkgs.buildPythonApplication rec {
pname = "archivebox";
- version = "0.6.2";
+ version = "0.7.2";
+ pyproject = true;
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-zHty7lTra6yab9d0q3EqsPG3F+lrnZL6PjQAbL1A2NY=";
+ hash = "sha256-hdBUEX2tOWN2b11w6aG3x7MP7KQTj4Rwc2w8XvABGf4=";
};
+ nativeBuildInputs = with python.pkgs; [
+ pdm-backend
+ ];
+
propagatedBuildInputs = with python.pkgs; [
- requests
- mypy-extensions
+ croniter
+ dateparser
django
django-extensions
- dateparser
- youtube-dl
+ ipython
+ mypy-extensions
python-crontab
- croniter
+ requests
w3lib
- ipython
+ yt-dlp
];
+ makeWrapperArgs = [
+ "--set USE_NODE True" # used through dependencies, not needed explicitly
+ "--set READABILITY_BINARY ${lib.meta.getExe readability-extractor}"
+ "--set MERCURY_BINARY ${lib.meta.getExe postlight-parser}"
+ "--set CURL_BINARY ${lib.meta.getExe curl}"
+ "--set RIPGREP_BINARY ${lib.meta.getExe ripgrep}"
+ "--set WGET_BINARY ${lib.meta.getExe wget}"
+ "--set GIT_BINARY ${lib.meta.getExe git}"
+ "--set YOUTUBEDL_BINARY ${lib.meta.getExe yt-dlp}"
+ ] ++ (if (lib.meta.availableOn stdenv.hostPlatform chromium) then [
+ "--set CHROME_BINARY ${chromium}/bin/chromium-browser"
+ ] else [
+ "--set-default USE_CHROME False"
+ ]);
+
meta = with lib; {
description = "Open source self-hosted web archiving";
homepage = "https://archivebox.io";
license = licenses.mit;
- maintainers = with maintainers; [ siraben ];
+ maintainers = with maintainers; [ siraben viraptor ];
platforms = platforms.unix;
};
}
diff --git a/pkgs/applications/misc/bazecor/default.nix b/pkgs/applications/misc/bazecor/default.nix
index 894f2af320dd..0767c3c03818 100644
--- a/pkgs/applications/misc/bazecor/default.nix
+++ b/pkgs/applications/misc/bazecor/default.nix
@@ -5,13 +5,13 @@
appimageTools.wrapAppImage rec {
pname = "bazecor";
- version = "1.3.8";
+ version = "1.3.9";
src = appimageTools.extract {
inherit pname version;
src = fetchurl {
url = "https://github.com/Dygmalab/Bazecor/releases/download/v${version}/Bazecor-${version}-x64.AppImage";
- hash = "sha256-SwlSH5z0p9ZVoDQzj4GxO3g/iHG8zQZndE4TmqdMtZQ=";
+ hash = "sha256-qve5xxhhyVej8dPDkZ7QQdeDUmqGO4pHJTykbS4RhAk=";
};
# Workaround for https://github.com/Dygmalab/Bazecor/issues/370
@@ -26,7 +26,7 @@ appimageTools.wrapAppImage rec {
# also make sure to update the udev rules in ./10-dygma.rules; most recently
# taken from
- # https://github.com/Dygmalab/Bazecor/blob/v1.3.8/src/main/utils/udev.ts#L6
+ # https://github.com/Dygmalab/Bazecor/blob/v1.3.9/src/main/utils/udev.ts#L6
extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [
p.glib
@@ -39,6 +39,12 @@ appimageTools.wrapAppImage rec {
extraInstallCommands = ''
mv $out/bin/bazecor-* $out/bin/bazecor
+ install -m 444 -D ${src}/Bazecor.desktop -t $out/share/applications
+ substituteInPlace $out/share/applications/Bazecor.desktop \
+ --replace 'Exec=Bazecor' 'Exec=bazecor'
+
+ install -m 444 -D ${src}/bazecor.png -t $out/share/pixmaps
+
mkdir -p $out/lib/udev/rules.d
ln -s --target-directory=$out/lib/udev/rules.d ${./10-dygma.rules}
'';
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index b42880020653..0f848d77c678 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -15,9 +15,9 @@
version = "2023-10-23";
};
};
- hash = "sha256-lT1CCwYj0hT4tCJb689mZwNecUsEwcfn2Ot8r9LBT+M=";
- hash_deb_amd64 = "sha256-4BWLn0+gYNWG4DsolbY6WlTvXWl7tZIZrnqXlrGUGjQ=";
- version = "120.0.6099.199";
+ hash = "sha256-yqk0bh68onWqML20Q8eDsTT9o+eKtta7kS9HL74do6Q=";
+ hash_deb_amd64 = "sha256-MxIyOXssQ1Ke5WZbBbB4FpDec+rn46m8+PbMdmxaQCA=";
+ version = "120.0.6099.216";
};
ungoogled-chromium = {
deps = {
diff --git a/pkgs/applications/networking/cluster/atlantis/default.nix b/pkgs/applications/networking/cluster/atlantis/default.nix
index ba99106c0960..1f90627aa2ad 100644
--- a/pkgs/applications/networking/cluster/atlantis/default.nix
+++ b/pkgs/applications/networking/cluster/atlantis/default.nix
@@ -2,16 +2,20 @@
buildGoModule rec {
pname = "atlantis";
- version = "0.22.3";
+ version = "0.27.0";
src = fetchFromGitHub {
owner = "runatlantis";
repo = "atlantis";
rev = "v${version}";
- sha256 = "sha256-A/FT9t5Z+Iw1mVwS3d5Cc86A9e6jVbEtmEWroVUhhtw=";
+ hash = "sha256-a+xrmEHkSh5kicxIIxnoXgF9ep2ay5kCXwMR2sAVJIA=";
};
+ ldflags = [
+ "-X=main.version=${version}"
+ "-X=main.date=1970-01-01T00:00:00Z"
+ ];
- vendorHash = "sha256-KUkh5yx+v5g0N4yIpgpt3i+uCtOtR0Jvf2PFQcGWtm8=";
+ vendorHash = "sha256-ZbCNHARgliw9TMkHyS9k+cnWgbdCCJ+8nMdJMu66Uvo=";
subPackages = [ "." ];
diff --git a/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix b/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
index a859efd3fae7..6aa4ea71b6a1 100644
--- a/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/teams-for-linux/default.nix
@@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
-, fetchpatch
, makeWrapper
, makeDesktopItem
, copyDesktopItems
@@ -20,13 +19,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "teams-for-linux";
- version = "1.4.1";
+ version = "1.4.2";
src = fetchFromGitHub {
owner = "IsmaelMartinez";
repo = "teams-for-linux";
rev = "v${finalAttrs.version}";
- hash = "sha256-1URS9VPqV58p8RUA47j8sdqYqps1Ruo0aqdZXedvPX8=";
+ hash = "sha256-Y1SVUcBRDM+nyWuT0r0WS/PfKNkQd9x9DYlmJUFoeoo=";
};
offlineCache = fetchYarnDeps {
@@ -34,16 +33,6 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-ef+JW5ud9LlRxaCJC2iOT5N7FgZO7IkAABJcMQPvIBA=";
};
- patches = [
- # remove when IsmaelMartinez/teams-for-linux#1058 is merged
- (fetchpatch {
- name = "teams-for-linux-fix-version.patch";
- url = "https://github.com/IsmaelMartinez/teams-for-linux/commit/1d14947eef35c6a2e0cbdfcce405820f8dd36c68.diff";
- hash = "sha256-kj2jEAqgZ0frUw85hY23mFYFcXz95z/WQSDymsheDfg=";
- })
- ];
-
-
nativeBuildInputs = [ yarn prefetch-yarn-deps nodejs copyDesktopItems makeWrapper ];
configurePhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/webcord/default.nix b/pkgs/applications/networking/instant-messengers/webcord/default.nix
index 6549c533c26f..5e76ac99e277 100644
--- a/pkgs/applications/networking/instant-messengers/webcord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/webcord/default.nix
@@ -5,6 +5,7 @@
, python3
, pipewire
, libpulseaudio
+, libnotify
, xdg-utils
, electron_28
, makeDesktopItem
@@ -44,6 +45,7 @@ buildNpmPackage rec {
libPath = lib.makeLibraryPath [
libpulseaudio
pipewire
+ libnotify
];
binPath = lib.makeBinPath [ xdg-utils ];
in
diff --git a/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix b/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix
index 235991396f57..79b553a5dc92 100644
--- a/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, mercury, pandoc, ncurses, gpgme }:
+{ lib, stdenv, fetchFromGitHub, mercury, pandoc, ncurses, gpgme, coreutils, file }:
stdenv.mkDerivation rec {
pname = "notmuch-bower";
@@ -12,6 +12,10 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ mercury pandoc ];
+ postPatch = ''
+ substituteInPlace src/compose.m --replace 'shell_quoted("base64' 'shell_quoted("${coreutils}/bin/base64'
+ substituteInPlace src/detect_mime_type.m --replace 'shell_quoted("file' 'shell_quoted("${file}/bin/file'
+ '';
buildInputs = [ ncurses gpgme ];
diff --git a/pkgs/by-name/po/postlight-parser/package.json b/pkgs/by-name/po/postlight-parser/package.json
new file mode 100644
index 000000000000..11b49c9e686e
--- /dev/null
+++ b/pkgs/by-name/po/postlight-parser/package.json
@@ -0,0 +1,165 @@
+{
+ "name": "@postlight/parser",
+ "version": "2.2.3",
+ "description": "Postlight Parser transforms web pages into clean text. Publishers and programmers use it to make the web make sense, and readers use it to read any web article comfortably.",
+ "author": "Postlight <mercury@postlight.com>",
+ "homepage": "https://reader.postlight.com",
+ "license": "MIT",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/postlight/parser.git"
+ },
+ "bugs": {
+ "url": "https://github.com/postlight/parser/issues"
+ },
+ "keywords": [
+ "mercury",
+ "parser",
+ "reader",
+ "web",
+ "content"
+ ],
+ "files": [
+ "dist",
+ "cli.js",
+ "src/shims/"
+ ],
+ "main": "./dist/mercury.js",
+ "bin": {
+ "mercury-parser": "./cli.js",
+ "postlight-parser": "./cli.js"
+ },
+ "scripts": {
+ "lint": "eslint . --fix",
+ "lint:ci": "remark . && eslint .",
+ "lint-fix-quiet": "eslint --fix --quiet",
+ "build": "yarn lint && rollup -c && yarn test:build",
+ "build:ci": "rollup -c && yarn test:build",
+ "build:web": "yarn lint && rollup -c rollup.config.web.js && yarn test:build:web",
+ "build:esm": "yarn lint && rollup -c rollup.config.esm.js && yarn test:build:esm",
+ "build:esm:ci": "rollup -c rollup.config.esm.js && yarn test:build:esm",
+ "build:web:ci": "rollup -c rollup.config.web.js && yarn test:build:web",
+ "release": "yarn build && yarn build:web",
+ "build:generator": "rollup -c scripts/rollup.config.js",
+ "test_build": "rollup -c",
+ "test": "yarn test:node && yarn test:web",
+ "test:node": "jest --json --outputFile test-output.json",
+ "test:web": "node ./node_modules/karma/bin/karma start karma.conf.js --auto-watch",
+ "test:build": "cd ./scripts && jest check-build.test.js",
+ "test:build:web": "node ./scripts/proxy-browser-test.js",
+ "test:build:esm": "node ./scripts/proxy-browser-test.js",
+ "watch:test": "jest --watch",
+ "generate-parser": "node ./dist/generate-custom-parser.js"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "devDependencies": {
+ "@babel/core": "^7.0.0",
+ "@babel/plugin-transform-runtime": "^7.0.0",
+ "@babel/polyfill": "^7.0.0",
+ "@babel/preset-env": "^7.0.0",
+ "@babel/runtime": "^7.0.0",
+ "@jesses/circle-github-bot": "^2.1.0",
+ "@octokit/rest": "^16.9.0",
+ "babel-core": "^7.0.0-bridge.0",
+ "babel-eslint": "^10.0.1",
+ "babel-jest": "^23.4.2",
+ "babel-plugin-module-alias": "^1.6.0",
+ "babel-plugin-module-resolver": "^3.1.2",
+ "babelify": "^10.0.0",
+ "babelrc-rollup": "^3.0.0",
+ "brfs": "^2.0.1",
+ "brfs-babel": "^2.0.0",
+ "browserify": "^16.2.3",
+ "changelog-maker": "^2.3.0",
+ "eslint": "^5.12.0",
+ "eslint-config-airbnb": "^17.1.0",
+ "eslint-config-prettier": "^6.1.0",
+ "eslint-import-resolver-babel-module": "^2.2.1",
+ "eslint-plugin-babel": "^5.3.0",
+ "eslint-plugin-import": "^2.14.0",
+ "eslint-plugin-jsx-a11y": "^6.1.2",
+ "eslint-plugin-react": "^7.12.3",
+ "express": "^4.16.4",
+ "husky": "^3.0.0",
+ "inquirer": "^7.0.0",
+ "jasmine-core": "^2.5.2",
+ "jest": "^23.6.0",
+ "jest-cli": "^23.6.0",
+ "karma": "^6.3.16",
+ "karma-browserify": "8.1.0",
+ "karma-chrome-launcher": "^3.0.0",
+ "karma-cli": "^2.0.0",
+ "karma-jasmine": "^1.0.2",
+ "karma-mocha": "^1.3.0",
+ "karma-requirejs": "^1.1.0",
+ "lint-staged": "^8.1.0",
+ "mocha": "^6.0.0",
+ "nock": "^10.0.6",
+ "ora": "^4.0.0",
+ "prettier": "^1.15.3",
+ "remark-cli": "^7.0.0",
+ "remark-lint": "^6.0.4",
+ "remark-preset-lint-recommended": "^3.0.2",
+ "request": "^2.88.2",
+ "requirejs": "^2.3.6",
+ "rollup": "^1.1.0",
+ "rollup-plugin-babel": "^4.0.1",
+ "rollup-plugin-commonjs": "^9.2.0",
+ "rollup-plugin-node-globals": "^1.4.0",
+ "rollup-plugin-node-resolve": "^2.0.0",
+ "rollup-plugin-terser": "^6.1.0",
+ "rollup-plugin-uglify": "^6.0.1",
+ "watchify": "^3.11.1"
+ },
+ "dependencies": {
+ "@babel/runtime-corejs2": "^7.2.0",
+ "@postlight/ci-failed-test-reporter": "^1.0",
+ "browser-request": "github:postlight/browser-request#feat-add-headers-to-response",
+ "cheerio": "^0.22.0",
+ "difflib": "github:postlight/difflib.js",
+ "ellipsize": "0.1.0",
+ "iconv-lite": "0.5.0",
+ "jquery": "^3.5.0",
+ "moment": "^2.23.0",
+ "moment-parseformat": "3.0.0",
+ "moment-timezone": "0.5.37",
+ "postman-request": "^2.88.1-postman.31",
+ "string-direction": "^0.1.2",
+ "turndown": "^7.1.1",
+ "valid-url": "^1.0.9",
+ "wuzzy": "^0.1.4",
+ "yargs-parser": "^15.0.1"
+ },
+ "bundleDependencies": [
+ "jquery",
+ "moment-timezone",
+ "browser-request"
+ ],
+ "browser": {
+ "main": "./dist/mercury.web.js",
+ "cheerio": "./src/shims/cheerio-query",
+ "jquery": "./node_modules/jquery/dist/jquery.min.js",
+ "postman-request": "browser-request",
+ "iconv-lite": "./src/shims/iconv-lite",
+ "moment-timezone": "./node_modules/moment-timezone/builds/moment-timezone-with-data-2012-2022.min.js"
+ },
+ "husky": {
+ "hooks": {
+ "pre-commit": "lint-staged"
+ }
+ },
+ "lint-staged": {
+ "*.js": [
+ "eslint --fix",
+ "prettier --write",
+ "git add"
+ ],
+ "*.{json,css,md}": [
+ "remark .",
+ "prettier --write",
+ "git add"
+ ]
+ }
+}
diff --git a/pkgs/by-name/po/postlight-parser/package.nix b/pkgs/by-name/po/postlight-parser/package.nix
new file mode 100644
index 000000000000..c00028b9a401
--- /dev/null
+++ b/pkgs/by-name/po/postlight-parser/package.nix
@@ -0,0 +1,36 @@
+{ lib
+, stdenv
+, mkYarnPackage
+, fetchFromGitHub
+, fetchYarnDeps
+}:
+
+mkYarnPackage rec {
+ pname = "postlight-parser";
+ version = "2.2.3";
+
+ src = fetchFromGitHub {
+ owner = "postlight";
+ repo = "parser";
+ rev = "v${version}";
+ hash = "sha256-k6m95FHeJ+iiWSeY++1zds/bo1RtNXbnv2spaY/M+L0=";
+ };
+
+ packageJSON = ./package.json;
+
+ doDist = false;
+
+ offlineCache = fetchYarnDeps {
+ yarnLock = "${src}/yarn.lock";
+ hash = "sha256-Vs8bfkhEbPv33ew//HBeDnpQcyWveByHi1gUsdl2CNI=";
+ };
+
+ meta = with lib; {
+ changelog = "https://github.com/postlight/parser/blob/${src.rev}/CHANGELOG.md";
+ homepage = "https://reader.postlight.com";
+ description = "Extracts the bits that humans care about from any URL you give it";
+ license = licenses.mit;
+ maintainers = with maintainers; [ viraptor ];
+ mainProgram = "postlight-parser";
+ };
+}
diff --git a/pkgs/by-name/re/readability-extractor/package.nix b/pkgs/by-name/re/readability-extractor/package.nix
new file mode 100644
index 000000000000..49d8333dd8e8
--- /dev/null
+++ b/pkgs/by-name/re/readability-extractor/package.nix
@@ -0,0 +1,29 @@
+{ lib
+, stdenv
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage {
+ pname = "readability-extractor";
+ version = "0.0.10";
+
+ src = fetchFromGitHub {
+ owner = "ArchiveBox";
+ repo = "readability-extractor";
+ rev = "be5c3222990d4f0459b21e74802565309bdd1d52";
+ hash = "sha256-KX9mtvwDUIV2XsH6Hgx5/W34AlM4QtZuzxp4QofPcyg=";
+ };
+
+ dontNpmBuild = true;
+
+ npmDepsHash = "sha256-bQHID9c2Ioyectx6t/GjTR/4cCyfwDfpT0aEQZoYCiU=";
+
+ meta = with lib; {
+ homepage = "https://github.com/ArchiveBox/readability-extractor";
+ description = "Javascript wrapper around Mozilla Readability for ArchiveBox to call as a oneshot CLI to extract article text";
+ license = licenses.mit;
+ maintainers = with maintainers; [ viraptor ];
+ mainProgram = "readability-extractor";
+ };
+}
diff --git a/pkgs/development/compilers/nim/default.nix b/pkgs/development/compilers/nim/default.nix
index 70d46dc46061..1b5f21ddef79 100644
--- a/pkgs/development/compilers/nim/default.nix
+++ b/pkgs/development/compilers/nim/default.nix
@@ -147,7 +147,7 @@ in {
ln -sf $out/nim/bin/nim $out/bin/nim
ln -sf $out/nim/lib $out/lib
./install.sh $out
- cp -a tools $out/nim/
+ cp -a tools dist $out/nim/
runHook postInstall
'';
diff --git a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py
index d9b539926b83..9e46a11141a6 100755
--- a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py
+++ b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py
@@ -210,7 +210,7 @@ def _determine_latest_version(current_version, target, versions):
return (max(sorted(versions))).raw_version
-def _get_latest_version_pypi(package, extension, current_version, target):
+def _get_latest_version_pypi(attr_path, package, extension, current_version, target):
"""Get latest version and hash from PyPI."""
url = "{}/{}/json".format(INDEX, package)
json = _fetch_page(url)
@@ -234,7 +234,7 @@ def _get_latest_version_pypi(package, extension, current_version, target):
return version, sha256, None
-def _get_latest_version_github(package, extension, current_version, target):
+def _get_latest_version_github(attr_path, package, extension, current_version, target):
def strip_prefix(tag):
return re.sub("^[^0-9]*", "", tag)
@@ -242,9 +242,6 @@ def _get_latest_version_github(package, extension, current_version, target):
matches = re.findall(r"^([^0-9]*)", string)
return next(iter(matches), "")
- # when invoked as an updateScript, UPDATE_NIX_ATTR_PATH will be set
- # this allows us to work with packages which live outside of python-modules
- attr_path = os.environ.get("UPDATE_NIX_ATTR_PATH", f"python3Packages.{package}")
try:
homepage = subprocess.check_output(
[
@@ -421,13 +418,17 @@ def _update_package(path, target):
# Attempt a fetch using each pname, e.g. backports-zoneinfo vs backports.zoneinfo
successful_fetch = False
for pname in pnames:
- if BULK_UPDATE and _skip_bulk_update(f"python3Packages.{pname}"):
+ # when invoked as an updateScript, UPDATE_NIX_ATTR_PATH will be set
+ # this allows us to work with packages which live outside of python-modules