Merge master into staging-next

This commit is contained in:
github-actions[bot] 2021-12-05 06:01:04 +00:00 committed by GitHub
commit 3995cabfbe
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
70 changed files with 1186 additions and 302 deletions

View file

@ -2092,6 +2092,17 @@
githubId = 12386805; githubId = 12386805;
name = "Chua Hou"; name = "Chua Hou";
}; };
chuangzhu = {
name = "Chuang Zhu";
email = "chuang@melty.land";
matrix = "@chuangzhu:matrix.org";
github = "chuangzhu";
githubId = 31200881;
keys = [{
longkeyid = "rsa4096/E838CED81CFFD3F9";
fingerprint = "5D03 A5E6 0754 A3E3 CA57 5037 E838 CED8 1CFF D3F9";
}];
};
chvp = { chvp = {
email = "nixpkgs@cvpetegem.be"; email = "nixpkgs@cvpetegem.be";
matrix = "@charlotte:vanpetegem.me"; matrix = "@charlotte:vanpetegem.me";
@ -6207,6 +6218,12 @@
email = "tierpluspluslists@gmail.com"; email = "tierpluspluslists@gmail.com";
name = "Karn Kallio"; name = "Karn Kallio";
}; };
klden = {
name = "Kenzyme Le";
email = "kl@kenzymele.com";
github = "klDen";
githubId = 5478260;
};
klntsky = { klntsky = {
email = "klntsky@gmail.com"; email = "klntsky@gmail.com";
name = "Vladimir Kalnitsky"; name = "Vladimir Kalnitsky";

View file

@ -524,6 +524,15 @@
<link linkend="opt-services.ananicy.enable">services.ananicy</link>. <link linkend="opt-services.ananicy.enable">services.ananicy</link>.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
<link xlink:href="https://github.com/prometheus-community/smartctl_exporter">smartctl_exporter</link>,
a Prometheus exporter for
<link xlink:href="https://en.wikipedia.org/wiki/S.M.A.R.T.">S.M.A.R.T.</link>
data. Available as
<link xlink:href="options.html#opt-services.prometheus.exporters.smartctl.enable">services.prometheus.exporters.smartctl</link>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
<section xml:id="sec-release-21.11-incompatibilities"> <section xml:id="sec-release-21.11-incompatibilities">

View file

@ -147,6 +147,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- Auto nice daemons [ananicy](https://github.com/Nefelim4ag/Ananicy) and [ananicy-cpp](https://gitlab.com/ananicy-cpp/ananicy-cpp/). Available as [services.ananicy](#opt-services.ananicy.enable). - Auto nice daemons [ananicy](https://github.com/Nefelim4ag/Ananicy) and [ananicy-cpp](https://gitlab.com/ananicy-cpp/ananicy-cpp/). Available as [services.ananicy](#opt-services.ananicy.enable).
- [smartctl_exporter](https://github.com/prometheus-community/smartctl_exporter), a Prometheus exporter for [S.M.A.R.T.](https://en.wikipedia.org/wiki/S.M.A.R.T.) data. Available as [services.prometheus.exporters.smartctl](options.html#opt-services.prometheus.exporters.smartctl.enable).
## Backward Incompatibilities {#sec-release-21.11-incompatibilities} ## Backward Incompatibilities {#sec-release-21.11-incompatibilities}
- The NixOS VM test framework, `pkgs.nixosTest`/`make-test-python.nix`, now requires detaching commands such as `succeed("foo &")` and `succeed("foo | xclip -i")` to close stdout. - The NixOS VM test framework, `pkgs.nixosTest`/`make-test-python.nix`, now requires detaching commands such as `succeed("foo &")` and `succeed("foo | xclip -i")` to close stdout.

View file

@ -61,6 +61,7 @@ let
"rtl_433" "rtl_433"
"script" "script"
"snmp" "snmp"
"smartctl"
"smokeping" "smokeping"
"sql" "sql"
"surfboard" "surfboard"

View file

@ -0,0 +1,64 @@
{ config, lib, pkgs, options }:
with lib;
let
cfg = config.services.prometheus.exporters.smartctl;
format = pkgs.formats.yaml {};
configFile = format.generate "smartctl-exporter.yml" {
smartctl_exporter = {
bind_to = "${cfg.listenAddress}:${toString cfg.port}";
url_path = "/metrics";
smartctl_location = "${pkgs.smartmontools}/bin/smartctl";
collect_not_more_than_period = cfg.maxInterval;
devices = cfg.devices;
};
};
in {
port = 9633;
extraOpts = {
devices = mkOption {
type = types.listOf types.str;
default = [];
example = literalExpression ''
[ "/dev/sda", "/dev/nvme0n1" ];
'';
description = ''
Paths to disks that will be monitored.
'';
};
maxInterval = mkOption {
type = types.str;
default = "60s";
example = "2m";
description = ''
Interval that limits how often a disk can be queried.
'';
};
};
serviceOpts = {
serviceConfig = {
AmbientCapabilities = [
"CAP_SYS_ADMIN"
];
CapabilityBoundingSet = [
"CAP_SYS_ADMIN"
];
DevicePolicy = "closed";
DeviceAllow = lib.mkForce cfg.devices;
ExecStart = ''
${pkgs.prometheus-smartctl-exporter}/bin/smartctl_exporter -config ${configFile}
'';
PrivateDevices = lib.mkForce false;
ProtectProc = "invisible";
ProcSubset = "pid";
SupplementaryGroups = [ "disk" ];
SystemCallFilter = [
"@system-service"
"~@privileged @resources"
];
};
};
}

View file

@ -29,7 +29,7 @@ let
configFile = if (cfg.configFile != null) then cfg.configFile else configFile'; configFile = if (cfg.configFile != null) then cfg.configFile else configFile';
preStart = '' preStart = ''
install ${configFile} /run/${RuntimeDirectory}/ddclient.conf install --mode=0400 ${configFile} /run/${RuntimeDirectory}/ddclient.conf
${lib.optionalString (cfg.configFile == null) (if (cfg.passwordFile != null) then '' ${lib.optionalString (cfg.configFile == null) (if (cfg.passwordFile != null) then ''
password=$(printf "%q" "$(head -n 1 "${cfg.passwordFile}")") password=$(printf "%q" "$(head -n 1 "${cfg.passwordFile}")")
sed -i "s|^password=$|password=$password|" /run/${RuntimeDirectory}/ddclient.conf sed -i "s|^password=$|password=$password|" /run/${RuntimeDirectory}/ddclient.conf

View file

@ -80,13 +80,13 @@ in {
}; };
config = mkIf config.services.knot.enable { config = mkIf config.services.knot.enable {
users.groups.knot = {};
users.users.knot = { users.users.knot = {
isSystemUser = true; isSystemUser = true;
group = "knot"; group = "knot";
description = "Knot daemon user"; description = "Knot daemon user";
}; };
users.groups.knot.gid = null;
systemd.services.knot = { systemd.services.knot = {
unitConfig.Documentation = "man:knotd(8) man:knot.conf(5) man:knotc(8) https://www.knot-dns.cz/docs/${cfg.package.version}/html/"; unitConfig.Documentation = "man:knotd(8) man:knot.conf(5) man:knotc(8) https://www.knot-dns.cz/docs/${cfg.package.version}/html/";
description = cfg.package.meta.description; description = cfg.package.meta.description;
@ -98,17 +98,52 @@ in {
Type = "notify"; Type = "notify";
ExecStart = "${cfg.package}/bin/knotd --config=${configFile} --socket=${socketFile} ${concatStringsSep " " cfg.extraArgs}"; ExecStart = "${cfg.package}/bin/knotd --config=${configFile} --socket=${socketFile} ${concatStringsSep " " cfg.extraArgs}";
ExecReload = "${knot-cli-wrappers}/bin/knotc reload"; ExecReload = "${knot-cli-wrappers}/bin/knotc reload";
CapabilityBoundingSet = "CAP_NET_BIND_SERVICE CAP_SETPCAP";
AmbientCapabilities = "CAP_NET_BIND_SERVICE CAP_SETPCAP";
NoNewPrivileges = true;
User = "knot"; User = "knot";
Group = "knot";
AmbientCapabilities = [
"CAP_NET_BIND_SERVICE"
];
CapabilityBoundingSet = [
"CAP_NET_BIND_SERVICE"
];
DeviceAllow = "";
DevicePolicy = "closed";
LockPersonality = true;
MemoryDenyWriteExecute = true;
NoNewPrivileges = true;
PrivateDevices = true;
PrivateTmp = true;
PrivateUsers = false; # breaks capability passing
ProcSubset = "pid";
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
ProtectSystem = "strict";
RemoveIPC = true;
Restart = "on-abort";
RestrictAddressFamilies = [
"AF_INET"
"AF_INET6"
"AF_UNIX"
];
RestrictNamespaces = true;
RestrictRealtime =true;
RestrictSUIDSGID = true;
RuntimeDirectory = "knot"; RuntimeDirectory = "knot";
StateDirectory = "knot"; StateDirectory = "knot";
StateDirectoryMode = "0700"; StateDirectoryMode = "0700";
PrivateDevices = true;
RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6";
SystemCallArchitectures = "native"; SystemCallArchitectures = "native";
Restart = "on-abort"; SystemCallFilter = [
"@system-service"
"~@privileged"
];
UMask = "0077";
}; };
}; };

View file

@ -296,9 +296,10 @@ in
}) })
(mkIf serviceCfg.contractor.enable { (mkIf serviceCfg.contractor.enable {
environment.systemPackages = with pkgs.pantheon; [ environment.systemPackages = with pkgs.pantheon; [
contractor contractor
extra-elementary-contracts file-roller-contract
gnome-bluetooth-contract
]; ];
environment.pathsToLink = [ environment.pathsToLink = [

View file

@ -45,6 +45,10 @@ in {
nodes = { nodes = {
master = { lib, ... }: { master = { lib, ... }: {
imports = [ common ]; imports = [ common ];
# trigger sched_setaffinity syscall
virtualisation.cores = 2;
networking.interfaces.eth1 = { networking.interfaces.eth1 = {
ipv4.addresses = lib.mkForce [ ipv4.addresses = lib.mkForce [
{ address = "192.168.0.1"; prefixLength = 24; } { address = "192.168.0.1"; prefixLength = 24; }
@ -206,5 +210,7 @@ in {
test(host, "RRSIG", "www.example.com", r"RR set signature is") test(host, "RRSIG", "www.example.com", r"RR set signature is")
test(host, "DNSKEY", "example.com", r"DNSSEC key is") test(host, "DNSKEY", "example.com", r"DNSSEC key is")
master.log(master.succeed("systemd-analyze security knot.service | grep -v ''"))
''; '';
}) })

View file

@ -1018,6 +1018,25 @@ let
''; '';
}; };
smartctl = {
exporterConfig = {
enable = true;
devices = [
"/dev/vda"
];
};
exporterTest = ''
wait_for_unit("prometheus-smartctl-exporter.service")
wait_for_open_port("9633")
wait_until_succeeds(
"curl -sSf 'localhost:9633/metrics'"
)
wait_until_succeeds(
'journalctl -eu prometheus-smartctl-exporter.service -o cat | grep "/dev/vda: Unable to detect device type"'
)
'';
};
smokeping = { smokeping = {
exporterConfig = { exporterConfig = {
enable = true; enable = true;

View file

@ -11,11 +11,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "ocenaudio"; pname = "ocenaudio";
version = "3.10.6"; version = "3.11.0";
src = fetchurl { src = fetchurl {
url = "https://www.ocenaudio.com/downloads/index.php/ocenaudio_debian9_64.deb?version=${version}"; url = "https://www.ocenaudio.com/downloads/index.php/ocenaudio_debian9_64.deb?version=${version}";
sha256 = "0fgvm1xw2kgrqj3w6slpfxbb3pw9k8i0dz16q9d5d8gyyvr2mh8g"; sha256 = "1yflpyl0d1mi0zxdyrlbg0px95s2c945ahy0agc8rha01ccf7jwy";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -0,0 +1,91 @@
diff --git a/data/core/commands/findreplace.lua b/data/core/commands/findreplace.lua
index 5d27aa6..db6a2dd 100644
--- a/data/core/commands/findreplace.lua
+++ b/data/core/commands/findreplace.lua
@@ -37,7 +37,7 @@ local function update_preview(sel, search_fn, text)
last_view:scroll_to_line(line2, true)
found_expression = true
else
- last_view.doc:set_selection(unpack(sel))
+ last_view.doc:set_selection(table.unpack(sel))
found_expression = false
end
end
@@ -55,7 +55,7 @@ end
local function find(label, search_fn)
last_view, last_sel = core.active_view,
{ core.active_view.doc:get_selection() }
- local text = last_view.doc:get_text(unpack(last_sel))
+ local text = last_view.doc:get_text(table.unpack(last_sel))
found_expression = false
core.command_view:set_text(text, true)
@@ -69,8 +69,8 @@ local function find(label, search_fn)
last_fn, last_text = search_fn, text
else
core.error("Couldn't find %q", text)
- last_view.doc:set_selection(unpack(last_sel))
- last_view:scroll_to_make_visible(unpack(last_sel))
+ last_view.doc:set_selection(table.unpack(last_sel))
+ last_view:scroll_to_make_visible(table.unpack(last_sel))
end
end, function(text)
update_preview(last_sel, search_fn, text)
@@ -79,8 +79,8 @@ local function find(label, search_fn)
end, function(explicit)
core.status_view:remove_tooltip()
if explicit then
- last_view.doc:set_selection(unpack(last_sel))
- last_view:scroll_to_make_visible(unpack(last_sel))
+ last_view.doc:set_selection(table.unpack(last_sel))
+ last_view:scroll_to_make_visible(table.unpack(last_sel))
end
end)
end
diff --git a/data/core/doc/init.lua b/data/core/doc/init.lua
index 2e72907..0e61ffb 100644
--- a/data/core/doc/init.lua
+++ b/data/core/doc/init.lua
@@ -198,9 +198,9 @@ local function selection_iterator(invariant, idx)
local target = invariant[3] and (idx*4 - 7) or (idx*4 + 1)
if target > #invariant[1] or target <= 0 or (type(invariant[3]) == "number" and invariant[3] ~= idx - 1) then return end
if invariant[2] then
- return idx+(invariant[3] and -1 or 1), sort_positions(unpack(invariant[1], target, target+4))
+ return idx+(invariant[3] and -1 or 1), sort_positions(table.unpack(invariant[1], target, target+4))
else
- return idx+(invariant[3] and -1 or 1), unpack(invariant[1], target, target+4)
+ return idx+(invariant[3] and -1 or 1), table.unpack(invariant[1], target, target+4)
end
end
@@ -345,7 +345,7 @@ function Doc:raw_insert(line, col, text, undo_stack, time)
-- push undo
local line2, col2 = self:position_offset(line, col, #text)
- push_undo(undo_stack, time, "selection", unpack(self.selections))
+ push_undo(undo_stack, time, "selection", table.unpack(self.selections))
push_undo(undo_stack, time, "remove", line, col, line2, col2)
-- update highlighter and assure selection is in bounds
@@ -357,7 +357,7 @@ end
function Doc:raw_remove(line1, col1, line2, col2, undo_stack, time)
-- push undo
local text = self:get_text(line1, col1, line2, col2)
- push_undo(undo_stack, time, "selection", unpack(self.selections))
+ push_undo(undo_stack, time, "selection", table.unpack(self.selections))
push_undo(undo_stack, time, "insert", line1, col1, text)
-- get line content before/after removed text
diff --git a/data/core/tokenizer.lua b/data/core/tokenizer.lua
index d95baeb..f77fed4 100644
--- a/data/core/tokenizer.lua
+++ b/data/core/tokenizer.lua
@@ -161,7 +161,7 @@ function tokenizer.tokenize(incoming_syntax, text, state)
if count % 2 == 0 then break end
end
until not res[1] or not close or not target[3]
- return unpack(res)
+ return table.unpack(res)
end
while i <= #text do

View file

@ -1,6 +1,5 @@
{ agg { agg
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, Foundation , Foundation
, freetype , freetype
, lib , lib
@ -16,30 +15,18 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lite-xl"; pname = "lite-xl";
version = "2.0.1"; version = "2.0.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lite-xl"; owner = "lite-xl";
repo = "lite-xl"; repo = "lite-xl";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-+RbmT6H/5Ldhv3qOClxMjCSGMudbkGtkjo2SpGqExao="; sha256 = "sha256-8Hw2zDYynWG/NwxtWgbEVUCzrtRVkOhwtsisURNqUn8=";
}; };
patches = [ patches = [
# Fixes compatibility with Lua5.2, remove patch when PR merged # Fixes compatibility with Lua5.2, remove patch when a new release covers this
# https://github.com/lite-xl/lite-xl/pull/435 ./0001-replace-unpack-with-table-unpack.patch
(fetchpatch {
name = "0001-replace-unpack-with-table.unpack.patch";
url = "https://github.com/lite-xl/lite-xl/commit/30ccde896d1ffe37cbd8990e9b8aaef275e18935.patch";
sha256 = "sha256-IAe3jIyD3OtZtu1V7MtPR4QzFKvU/aV/nLQ4U9nHyIQ=";
})
# Lets meson fallback to the system reproc if available.
# remove patch when 2.0.2 is proposed.
(fetchpatch {
name = "0002-use-dependency-fallbacks-use-system-reproc-if-available.patch";
url = "https://github.com/lite-xl/lite-xl/commit/973acb787aacb0164b2f4ae6fe335d250ba80a7b.patch";
sha256 = "sha256-GmgATsRlj1FePmw3+AoWEMZIo2eujHYewKQCx583qbU=";
})
]; ];
nativeBuildInputs = [ meson ninja pkg-config ]; nativeBuildInputs = [ meson ninja pkg-config ];

View file

@ -3,7 +3,7 @@
}: }:
let let
version = "12.5"; version = "12.6";
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {
name = "netbeans"; name = "netbeans";
exec = "netbeans"; exec = "netbeans";
@ -19,7 +19,7 @@ stdenv.mkDerivation {
inherit version; inherit version;
src = fetchurl { src = fetchurl {
url = "mirror://apache/netbeans/netbeans/${version}/netbeans-${version}-bin.zip"; url = "mirror://apache/netbeans/netbeans/${version}/netbeans-${version}-bin.zip";
sha512 = "3yagspb2clcvd87a9vnpwd64w3afm4kyprqyjccpckysh4php5vhf7dfza3zhs4yzmkikc2pfs7470w54mxz9rcmaixh23h3hlgd1ii"; hash = "sha512-K0HjEO/yw9h+2+Y5CvxyYG1+kx+KH9NSn+QsKCsvh/rG/ilYLYyy93iZfx+wzwrgEfRtfMpZGtDAxd6nyUSnCA==";
}; };
buildCommand = '' buildCommand = ''

View file

@ -170,15 +170,19 @@ in
}; };
texturize = pluginDerivation { texturize = pluginDerivation {
name = "texturize-2.2.2017-07-28"; pname = "texturize";
version = "2.2+unstable=2021-12-03";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lmanul"; owner = "lmanul";
repo = "gimp-texturize"; repo = "gimp-texturize";
rev = "de4367f71e40fe6d82387eaee68611a80a87e0e1"; rev = "9ceff0d411cda018108e5477320669b8d00d811e";
sha256 = "1zzvbczly7k456c0y6s92a1i8ph4ywmbvdl8i4rcc29l4qd2z8fw"; sha256 = "haYS0K3oAPlHtHB8phOCX5/gtWq9uiVQhG5ZhAFX0t0=";
}; };
installPhase = "installPlugin src/texturize"; nativeBuildInputs = with pkgs; [
meta.broken = true; # https://github.com/lmanul/gimp-texturize/issues/1 meson
ninja
gettext
];
}; };
waveletSharpen = pluginDerivation { waveletSharpen = pluginDerivation {

View file

@ -0,0 +1,27 @@
{ appimageTools, lib, fetchurl }:
let
pname = "fspy";
version = "1.0.3";
name = "${pname}-v${version}";
src = fetchurl {
url = "https://github.com/stuffmatic/fSpy/releases/download/v${version}/${pname}-${version}-x86_64.AppImage";
sha256 = "sha256-L+qsSExuEkzZkjnV/J6rrZ3BXqWQd+IfsN6a3kvQF3A=";
};
in appimageTools.wrapType2 {
inherit name src;
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
'';
meta = with lib; {
description = "A cross platform app for quick and easy still image camera matching";
license = licenses.gpl3;
homepage = "https://fspy.io/";
maintainers = with maintainers; [ polygon ];
platforms = platforms.linux;
mainProgram = "fspy";
};
}

View file

@ -0,0 +1,39 @@
{ lib, fetchurl, appimageTools }:
let
pname = "mobilecoin-wallet";
version = "1.4.1";
name = "${pname}-${version}";
src = fetchurl {
url = "https://github.com/mobilecoinofficial/desktop-wallet/releases/download/v${version}/MobileCoin-Wallet-${version}.AppImage";
sha256 = "sha256-x5frHgkEz77pqSB6YANRtZmCzaK/RxRzMElLu49lxPk=";
};
appimageContents = appimageTools.extractType2 { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
extraPkgs = pkgs: (appimageTools.defaultFhsEnvArgs.multiPkgs pkgs) ++ [ pkgs.libsecret ];
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
mkdir -p $out/share/${pname}
cp -a ${appimageContents}/locales $out/share/${pname}
cp -a ${appimageContents}/resources $out/share/${pname}
cp -a ${appimageContents}/usr/share/icons $out/share/
install -Dm 644 ${appimageContents}/${pname}.desktop -t $out/share/applications/
substituteInPlace $out/share/applications/${pname}.desktop \
--replace "AppRun" "${pname}"
'';
meta = with lib; {
description = "A user-friendly desktop wallet with support for transaction history, encrypted contact book, gift codes, and payments";
homepage = "https://github.com/mobilecoinofficial/desktop-wallet";
license = licenses.gpl3Only;
maintainers = with maintainers; [ wolfangaukang ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -5,22 +5,21 @@
, ffmpeg-full , ffmpeg-full
, fetchFromGitHub , fetchFromGitHub
, openssh , openssh
, netcat
, makeWrapper , makeWrapper
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "restream"; pname = "restream";
version = "1.1"; version = "1.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rien"; owner = "rien";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "18z17chl7r5dg12xmr3f9gbgv97nslm8nijigd03iysaj6dhymp3"; sha256 = "0vyj0kng8c9inv2rbw1qdr43ic15s5x8fvk9mbw0vpc6g723x99g";
}; };
nativeBuildInputs = [ makeWrapper ];
dontConfigure = true; dontConfigure = true;
dontBuild = true; dontBuild = true;
@ -33,10 +32,22 @@ stdenv.mkDerivation rec {
runHook postInstall runHook postInstall
''; '';
postInstall = '' postInstall = let
# `ffmpeg-full` is used here to bring in `ffplay`, which is used to display deps = [
# the reMarkable framebuffer # `ffmpeg-full` is used here to bring in `ffplay`, which is used
wrapProgram "$out/bin/restream" --suffix PATH ":" "${lib.makeBinPath [ ffmpeg-full lz4 openssh ]}" # to display the reMarkable framebuffer
ffmpeg-full
lz4
openssh
# Libressl netcat brings in `nc` which used for --uncompressed mode.
netcat
];
in ''
# This `sed` command has the same effect as `wrapProgram`, except
# without .restream-wrapped store paths appearing everywhere.
sed -i \
'2i export PATH=$PATH''${PATH:+':'}${lib.makeBinPath deps}' \
"$out/bin/restream"
''; '';
meta = with lib; { meta = with lib; {

View file

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "terminal-typeracer"; pname = "terminal-typeracer";
version = "2.0.4"; version = "2.0.8";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "ttyperacer"; owner = "ttyperacer";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "RjGHY6KN6thxbg9W5FRwaAmUeD+5/WCeMCvzFHqZ+J4="; sha256 = "Fb2MCQaQaJseXa8Csesz1s5Yel4wcSMxfMeKSW7rlU4=";
}; };
cargoSha256 = "sha256-A7O/e8PAcW36i8pT71SkWoWDIiMuEhSS9SmASNzNCjk="; cargoSha256 = "sha256-SAVDSUm2jpDwTfwo4L6MVUKzBxZvCfjn4UNIGUJziSY=";
buildInputs = [ openssl sqlite ] ++ lib.optionals stdenv.isDarwin [ libiconv Security ]; buildInputs = [ openssl sqlite ] ++ lib.optionals stdenv.isDarwin [ libiconv Security ];
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
@ -29,6 +29,6 @@ rustPlatform.buildRustPackage rec {
homepage = "https://gitlab.com/ttyperacer/terminal-typeracer"; homepage = "https://gitlab.com/ttyperacer/terminal-typeracer";
license = licenses.gpl3Plus; license = licenses.gpl3Plus;
maintainers = with maintainers; [ yoctocell ]; maintainers = with maintainers; [ yoctocell ];
platforms = platforms.x86_64; platforms = platforms.unix;
}; };
} }

View file

@ -4,11 +4,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "rocketchat-desktop"; pname = "rocketchat-desktop";
version = "3.6.0"; version = "3.7.0";
src = fetchurl { src = fetchurl {
url = "https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/${version}/rocketchat_${version}_amd64.deb"; url = "https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/${version}/rocketchat_${version}_amd64.deb";
sha256 = "1691mzg52hkvkzm4pvmjyc3n04ppxk36rjk7zxh8682ciszz9pl3"; sha256 = "1z6crwb7svg7iw59gm88d29yknhk84hwcps9f565c3mabjdxzhw2";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -10,7 +10,7 @@ assert withQt -> qt5 != null;
with lib; with lib;
let let
version = "3.4.9"; version = "3.4.10";
variant = if withQt then "qt" else "cli"; variant = if withQt then "qt" else "cli";
in stdenv.mkDerivation { in stdenv.mkDerivation {
@ -20,7 +20,7 @@ in stdenv.mkDerivation {
src = fetchurl { src = fetchurl {
url = "https://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz"; url = "https://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz";
sha256 = "084nv4fbgpxsf6b6cfi6cinn8l3wsbn0g8lsd7p2aifjkf15wln6"; sha256 = "sha256-iqfvSkSuYruNtGPPdh4swDuXMF4Od+1b5T+oNykYfO8=";
}; };
cmakeFlags = [ cmakeFlags = [

View file

@ -0,0 +1,94 @@
{ lib
, mkDerivation
, fetchFromGitLab
, cmake
, extra-cmake-modules
, makeWrapper
, qtbase
, qtquickcontrols2
, qtsvg
, qtlocation
, qtdeclarative
, kirigami2
, kdbusaddons
, ki18n
, kcalendarcore
, kconfigwidgets
, kwindowsystem
, kcoreaddons
, kcontacts
, kitemmodels
, kxmlgui
, knotifications
, kiconthemes
, kservice
, kmime
, kpackage
, eventviews
, calendarsupport
, akonadi
, akonadi-contacts
, akonadi-calendar-tools
, kdepim-runtime
}:
mkDerivation rec {
pname = "kalendar";
version = "0.3.1";
src = fetchFromGitLab {
domain = "invent.kde.org";
owner = "pim";
repo = pname;
rev = "v${version}";
sha256 = "sha256-foG8j/MRbDZyzM9KmxEARfWUQXMz8ylQgersE1/gtnQ=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
makeWrapper
];
buildInputs = [
qtbase
qtquickcontrols2
qtsvg
qtlocation
qtdeclarative
kirigami2
kdbusaddons
ki18n
kcalendarcore
kconfigwidgets
kwindowsystem
kcoreaddons
kcontacts
kitemmodels
kxmlgui
knotifications
kiconthemes
kservice
kmime
kpackage
eventviews
calendarsupport
akonadi-contacts
akonadi-calendar-tools
];
propagatedUserEnvPkgs = [ akonadi kdepim-runtime ];
meta = with lib; {
description = "A calendar application using Akonadi to sync with external services (Nextcloud, GMail, ...)";
homepage = "https://invent.kde.org/pim/kalendar/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ chuangzhu ];
platforms = platforms.linux;
};
}

View file

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "glitter"; pname = "glitter";
version = "1.5.9"; version = "1.5.10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "milo123459"; owner = "milo123459";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-jznlGPRYzWND5qdopD4iMz1IgduP8hXV4T+IGkSI3Qg="; sha256 = "sha256-4d1zMCQ4rYU5kL7Qhwibt6+IfKHUjYndHHeX7JT9zwU=";
}; };
cargoSha256 = "sha256-HAEyb2iVGRxaHQhy3zUgmRiBtXHmyxgmmh1R8wwoBs0="; cargoSha256 = "sha256-eaSQGbsvAas7CLMtgSNWCqdrYU5Kc/0GY10rkNK05Uo=";
# tests require it to be in a git repository # tests require it to be in a git repository
preCheck = '' preCheck = ''

View file

@ -16,12 +16,12 @@ with lib;
buildGoPackage rec { buildGoPackage rec {
pname = "gitea"; pname = "gitea";
version = "1.15.6"; version = "1.15.7";
# not fetching directly from the git repo, because that lacks several vendor files for the web UI # not fetching directly from the git repo, because that lacks several vendor files for the web UI
src = fetchurl { src = fetchurl {
url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz"; url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
sha256 = "sha256-FMM/iQAxJcymv4jYBzaBXG0Uy8UxHh9gFWB5gzV9cn0="; sha256 = "sha256-Ckg8XKCPnyp4a0kXJrqju2jAJvD4tzjomaeJxlFwYzg=";
}; };
unpackPhase = '' unpackPhase = ''

View file

@ -1,22 +1,26 @@
{ lib, fetchzip }: { lib, fetchFromGitHub }:
let let
pname = "junicode"; pname = "junicode";
version = "1.002"; version = "1.003";
in fetchzip { in
fetchFromGitHub {
name = "${pname}-${version}"; name = "${pname}-${version}";
url = "mirror://sourceforge/junicode/junicode/junicode-${version}/junicode-${version}.zip"; owner = "psb1558";
repo = "Junicode-font";
rev = "55d816d91a5e19795d9b66edec478379ee2b9ddb";
postFetch = '' postFetch = ''
mkdir -p $out/share/fonts local out_ttf=$out/share/fonts/junicode-ttf
unzip -j $downloadedFile \*.ttf -d $out/share/fonts/junicode-ttf mkdir -p $out_ttf
tar -f $downloadedFile -C $out_ttf --wildcards -x '*.ttf' --strip=2
''; '';
sha256 = "1n170gw41lr0zr5958z5cgpg6i1aa7kj7iq9s6gdh1cqq7hhgd08"; sha256 = "1v334gljmidh58kmrarz5pf348b0ac7vh25f1xs3gyvn78khh5nw";
meta = { meta = {
homepage = "http://junicode.sourceforge.net/"; homepage = "https://github.com/psb1558/Junicode-font";
description = "A Unicode font for medievalists"; description = "A Unicode font for medievalists";
maintainers = with lib.maintainers; [ ivan-timokhin ]; maintainers = with lib.maintainers; [ ivan-timokhin ];
license = lib.licenses.ofl; license = lib.licenses.ofl;

View file

@ -12,7 +12,7 @@
mkDerivation rec { mkDerivation rec {
pname = "adwaita-qt"; pname = "adwaita-qt";
version = "1.4.0"; version = "1.4.1";
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
@ -20,7 +20,7 @@ mkDerivation rec {
owner = "FedoraQt"; owner = "FedoraQt";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-KkqLUhS0JMwJsgu8fv5iGozH3Xv+cXumxx5IewZTTPc="; sha256 = "sha256-t9vv1KcMUg8Qe7lhVMN4GO+VPoT7QzeoQ6hV4fesA8U=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -0,0 +1,48 @@
{ lib
, mkDerivation
, fetchFromGitHub
, cmake
, extra-cmake-modules
, qtx11extras
, kcoreaddons
, kguiaddons
, kconfig
, kdecoration
, kconfigwidgets
, kwindowsystem
, kiconthemes
, kwayland
}:
mkDerivation rec {
pname = "material-kwin-decoration";
version = "unstable-20211028";
src = fetchFromGitHub {
owner = "Zren";
repo = "material-decoration";
rev = "cc5cc399a546b66907629b28c339693423c894c8";
sha256 = "sha256-aYlnPFhf+ISVe5Ycryu5BSXY8Lb5OoueMqnWQZiv6Lc=";
};
nativeBuildInputs = [ cmake extra-cmake-modules ];
buildInputs = [
qtx11extras
kcoreaddons
kguiaddons
kdecoration
kconfig
kconfigwidgets
kwindowsystem
kiconthemes
kwayland
];
meta = with lib; {
description = "Material-ish window decoration theme for KWin";
homepage = "https://github.com/Zren/material-decoration";
license = licenses.gpl2;
maintainers = [ maintainers.nickcao ];
};
}

View file

@ -93,14 +93,18 @@ lib.makeScope pkgs.newScope (self: with self; {
elementary-shortcut-overlay = callPackage ./desktop/elementary-shortcut-overlay { }; elementary-shortcut-overlay = callPackage ./desktop/elementary-shortcut-overlay { };
extra-elementary-contracts = callPackage ./desktop/extra-elementary-contracts { file-roller-contract = callPackage ./desktop/file-roller-contract {
inherit (gnome) file-roller gnome-bluetooth; inherit (gnome) file-roller;
}; };
gala = callPackage ./desktop/gala { gala = callPackage ./desktop/gala {
inherit (gnome) gnome-desktop; inherit (gnome) gnome-desktop;
}; };
gnome-bluetooth-contract = callPackage ./desktop/gnome-bluetooth-contract {
inherit (gnome) gnome-bluetooth;
};
wingpanel = callPackage ./desktop/wingpanel { }; wingpanel = callPackage ./desktop/wingpanel { };
wingpanel-with-indicators = callPackage ./desktop/wingpanel/wrapper.nix { wingpanel-with-indicators = callPackage ./desktop/wingpanel/wrapper.nix {
@ -217,4 +221,6 @@ lib.makeScope pkgs.newScope (self: with self; {
elementary-screenshot-tool = elementary-screenshot; # added 2021-07-21 elementary-screenshot-tool = elementary-screenshot; # added 2021-07-21
extra-elementary-contracts = throw "extra-elementary-contracts has been removed as all contracts have been upstreamed."; # added 2021-12-01
}) })

View file

@ -1,44 +0,0 @@
{ lib
, stdenv
, substituteAll
, fetchFromGitHub
, file-roller
, gnome-bluetooth
}:
stdenv.mkDerivation rec {
pname = "extra-elementary-contracts";
version = "2018-08-21";
src = fetchFromGitHub {
owner = "worldofpeace";
repo = pname;
rev = "a05dfb00695854163805b666185e3e9f31b6eb83";
sha256 = "0fkaf2w4xg0n9faj74rgzy7gvd3yz112l058b157a3pr39vpci7g";
};
patches = [
(substituteAll {
src = ./exec-path.patch;
file_roller = file-roller;
gnome_bluetooth = gnome-bluetooth;
})
];
dontBuild = true;
dontConfigure = true;
installPhase = ''
mkdir -p $out/share/contractor
cp *.contract $out/share/contractor/
'';
meta = with lib; {
description = "Extra contractor files for elementary";
homepage = "https://github.com/worldofpeace/extra-elementary-contracts";
license = licenses.gpl2;
maintainers = with maintainers; [ worldofpeace ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,46 @@
{ lib
, stdenv
, fetchFromGitHub
, substituteAll
, file-roller
}:
stdenv.mkDerivation rec {
pname = "file-roller-contract";
version = "unstable-2021-02-23";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = "cf001d84a7e2ddcfbee2cfdb19885798a869833e";
sha256 = "sha256-jnXq44NiQiSYsvaBF828TklLg9d6z6n+gCZKgbFiERI=";
};
patches = [
(substituteAll {
src = ./exec-path.patch;
file_roller = file-roller;
})
];
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/contractor
cp *.contract $out/share/contractor/
runHook postInstall
'';
meta = with lib; {
description = "Contractor extension for File Roller";
homepage = "https://github.com/elementary/file-roller-contract";
license = licenses.gpl3Plus;
maintainers = teams.pantheon.members;
platforms = platforms.linux;
};
}

View file

@ -1,19 +1,18 @@
diff --git a/file-roller-compress.contract b/file-roller-compress.contract diff --git a/io.elementary.contractor.file-roller-compress.contract b/io.elementary.contractor.file-roller-compress.contract
index 8de5396..de7e939 100644 index 11e4da3..d58549f 100644
--- a/file-roller-compress.contract --- a/io.elementary.contractor.file-roller-compress.contract
+++ b/file-roller-compress.contract +++ b/io.elementary.contractor.file-roller-compress.contract
@@ -3,6 +3,6 @@ Name=Compress @@ -3,5 +3,5 @@ Name=Compress
Icon=add-files-to-archive Icon=add-files-to-archive
Description=Create a compressed archive with the selected objects Description=Create a compressed archive with the selected objects
MimeType=!archive;inode/blockdevice;inode/chardevice;inode/fifo;inode/socket; MimeType=!archive;inode/blockdevice;inode/chardevice;inode/fifo;inode/socket;
-Exec=file-roller --add %U -Exec=file-roller --add %U
+Exec=@file_roller@/bin/file-roller --add %U +Exec=@file_roller@/bin/file-roller --add %U
Gettext-Domain=file-roller Gettext-Domain=file-roller
diff --git a/io.elementary.contractor.file-roller-extract-here.contract b/io.elementary.contractor.file-roller-extract-here.contract
diff --git a/file-roller-extract-here.contract b/file-roller-extract-here.contract
index 184a6f2..345f4e7 100644 index 184a6f2..345f4e7 100644
--- a/file-roller-extract-here.contract --- a/io.elementary.contractor.file-roller-extract-here.contract
+++ b/file-roller-extract-here.contract +++ b/io.elementary.contractor.file-roller-extract-here.contract
@@ -3,5 +3,5 @@ Name=Extract Here @@ -3,5 +3,5 @@ Name=Extract Here
Icon=extract-archive Icon=extract-archive
Description=Extract the contents of the archives in the archive folder and quit the program Description=Extract the contents of the archives in the archive folder and quit the program
@ -21,14 +20,3 @@ index 184a6f2..345f4e7 100644
-Exec=file-roller --extract-here %U -Exec=file-roller --extract-here %U
+Exec=@file_roller@/bin/file-roller --extract-here %U +Exec=@file_roller@/bin/file-roller --extract-here %U
Gettext-Domain=file-roller Gettext-Domain=file-roller
diff --git a/gnome-bluetooth.contract b/gnome-bluetooth.contract
index 745dbbe..8cc0102 100644
--- a/gnome-bluetooth.contract
+++ b/gnome-bluetooth.contract
@@ -3,5 +3,5 @@ Name=Send files via Bluetooth
Icon=bluetooth
Description=Send files to device...
MimeType=!inode;
-Exec=bluetooth-sendto %F
+Exec=@gnome_bluetooth@/bin/bluetooth-sendto %F
Gettext-Domain=gnome-bluetooth2

View file

@ -0,0 +1,46 @@
{ lib
, stdenv
, fetchFromGitHub
, substituteAll
, gnome-bluetooth
}:
stdenv.mkDerivation rec {
pname = "gnome-bluetooth-contract";
version = "unstable-2021-02-23";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = "8dcd4d03dc7a7d487980fd8bc95af985dc4fff5c";
sha256 = "sha256-9eX6j/cvN/CoqrHrh9mZEsUJ8viDWIGxIva1xFwIK7c=";
};
patches = [
(substituteAll {
src = ./exec-path.patch;
gnome_bluetooth = gnome-bluetooth;
})
];
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/contractor
cp *.contract $out/share/contractor/
runHook postInstall
'';
meta = with lib; {
description = "Contractor extension for GNOME Bluetooth";
homepage = "https://github.com/elementary/gnome-bluetooth-contract";
license = licenses.gpl3Plus;
maintainers = teams.pantheon.members;
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,11 @@
diff --git a/io.elementary.contracter.gnome-bluetooth.contract b/io.elementary.contracter.gnome-bluetooth.contract
index 3eb2334..ce0e5f5 100644
--- a/io.elementary.contracter.gnome-bluetooth.contract
+++ b/io.elementary.contracter.gnome-bluetooth.contract
@@ -3,5 +3,5 @@ Name=Send Files via Bluetooth
Icon=bluetooth
Description=Send files to device...
MimeType=!inode;
-Exec=bluetooth-sendto %F
+Exec=@gnome_bluetooth@/bin/bluetooth-sendto %F
Gettext-Domain=gnome-bluetooth2

View file

@ -13,7 +13,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "intel-media-driver"; pname = "intel-media-driver";
version = "21.4.2"; version = "21.4.3";
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
owner = "intel"; owner = "intel";
repo = "media-driver"; repo = "media-driver";
rev = "intel-media-${version}"; rev = "intel-media-${version}";
sha256 = "0hphpv3n2cdxmbyiwly7v9r0ijdq6hfnw604xz42jqgh9idi6h55"; sha256 = "04r03f48j1nly0j6aq8017va9m3yrnscv6lbrvf3a98fpwk9gc1l";
}; };
patches = [ patches = [

View file

@ -15,13 +15,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "libdeltachat"; pname = "libdeltachat";
version = "1.69.0"; version = "1.70.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "deltachat"; owner = "deltachat";
repo = "deltachat-core-rust"; repo = "deltachat-core-rust";
rev = version; rev = version;
hash = "sha256-yW6MXDb7kiI24akJrEPHeb4bI8jEldBcPYx+5+dwJR0="; hash = "sha256-702XhFWvFG+g++3X97sy6C5DMNWogv1Xbr8QPR8QyLo=";
}; };
patches = [ patches = [
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
cargoDeps = rustPlatform.fetchCargoTarball { cargoDeps = rustPlatform.fetchCargoTarball {
inherit src; inherit src;
name = "${pname}-${version}"; name = "${pname}-${version}";
hash = "sha256-76TraZCJhppPhkdQfAf1XqOoK7RS+VoYIp2keTn4es4="; hash = "sha256-MiSGJMXe8vouv4XEHXq274FHEvBMtd7IX6DyNJIWYeU=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, ncurses ? null, perl ? null, lib }: { stdenv, fetchurl, fetchpatch, ncurses ? null, perl ? null, lib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "liboping"; pname = "liboping";
@ -13,6 +13,14 @@ stdenv.mkDerivation rec {
# Add support for ncurses-6.3. A backport of patch pending upstream # Add support for ncurses-6.3. A backport of patch pending upstream
# inclusion: https://github.com/octo/liboping/pull/61 # inclusion: https://github.com/octo/liboping/pull/61
./ncurses-6.3.patch ./ncurses-6.3.patch
# Pull pending fix for format arguments mismatch:
# https://github.com/octo/liboping/pull/60
(fetchpatch {
name = "format-args.patch";
url = "https://github.com/octo/liboping/commit/7a50e33f2a686564aa43e4920141e6f64e042df1.patch";
sha256 = "118fl3k84m3iqwfp49g5qil4lw1gcznzmyxnfna0h7za2nm50cxw";
})
]; ];
NIX_CFLAGS_COMPILE = lib.optionalString NIX_CFLAGS_COMPILE = lib.optionalString

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "rdkafka"; pname = "rdkafka";
version = "1.8.0"; version = "1.8.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "edenhill"; owner = "edenhill";
repo = "librdkafka"; repo = "librdkafka";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-LTO27UQqGHOEOXaw2Aln1i37ZaXIAKK8r7P2WAx8nIQ="; sha256 = "sha256-YagvXeusHThUo5/1mMs+r+Nr03vAagdnFMkwX3hJsq4=";
}; };
nativeBuildInputs = [ pkg-config python3 ]; nativeBuildInputs = [ pkg-config python3 ];

View file

@ -8,7 +8,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "aiomusiccast"; pname = "aiomusiccast";
version = "0.14.0"; version = "0.14.2";
format = "pyproject"; format = "pyproject";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "vigonotion"; owner = "vigonotion";
repo = "aiomusiccast"; repo = "aiomusiccast";
rev = version; rev = version;
sha256 = "sha256-Zb2wwqKXtXlPvfmDNOlTHho9zHFFJOQxqoeqL//Z69M="; sha256 = "sha256-5xIz36FgNwcaesmkYp3EWTxCe/8RaUJOJW9dqK+eang=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -2,14 +2,27 @@
, fetchFromGitHub , fetchFromGitHub
, pythonOlder , pythonOlder
, buildPythonPackage , buildPythonPackage
# propagated
, django , django
, hiredis
, lz4
, msgpack
, redis , redis
# testing
, pkgs
, pytest-django
, pytest-mock
, pytestCheckHook , pytestCheckHook
}: }:
buildPythonPackage rec { let
pname = "django-redis"; pname = "django-redis";
version = "5.0.0"; version = "5.1.0";
in
buildPythonPackage {
inherit pname version;
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
@ -17,7 +30,7 @@ buildPythonPackage rec {
owner = "jazzband"; owner = "jazzband";
repo = "django-redis"; repo = "django-redis";
rev = version; rev = version;
sha256 = "1np10hfyg4aamlz7vav9fy80gynb1lhl2drqkbckr3gg1gbz6crj"; sha256 = "sha256-S94qH2W5e65yzGfPxpwBUKhvvVS0Uc/zSyo66bnvzf4=";
}; };
postPatch = '' postPatch = ''
@ -26,6 +39,9 @@ buildPythonPackage rec {
propagatedBuildInputs = [ propagatedBuildInputs = [
django django
hiredis
lz4
msgpack
redis redis
]; ];
@ -33,12 +49,28 @@ buildPythonPackage rec {
"django_redis" "django_redis"
]; ];
DJANGO_SETTINGS_MODULE = "tests.settings.sqlite";
preCheck = ''
${pkgs.redis}/bin/redis-server &
'';
checkInputs = [ checkInputs = [
pytest-django
pytest-mock
pytestCheckHook pytestCheckHook
]; ];
disabledTestPaths = [ disabledTests = [
"tests/test_backend.py" # django.core.exceptions.ImproperlyConfigured: Requested setting DJANGO_REDIS_SCAN_ITERSIZE, but settings are not configured. # ModuleNotFoundError: No module named 'test_cache_options'
"test_custom_key_function"
# ModuleNotFoundError: No module named 'test_client'
"test_delete_pattern_calls_get_client_given_no_client"
"test_delete_pattern_calls_make_pattern"
"test_delete_pattern_calls_scan_iter_with_count_if_itersize_given"
"test_delete_pattern_calls_scan_iter_with_count_if_itersize_given"
"test_delete_pattern_calls_scan_iter"
"test_delete_pattern_calls_delete_for_given_keys"
]; ];
meta = with lib; { meta = with lib; {

View file

@ -8,7 +8,6 @@
, importlib-metadata , importlib-metadata
, importlib-resources , importlib-resources
, jbig2enc , jbig2enc
, leptonica
, pdfminer , pdfminer
, pikepdf , pikepdf
, pillow , pillow
@ -30,7 +29,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "ocrmypdf"; pname = "ocrmypdf";
version = "12.7.2"; version = "13.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jbarlow83"; owner = "jbarlow83";
@ -42,7 +41,7 @@ buildPythonPackage rec {
extraPostFetch = '' extraPostFetch = ''
rm "$out/.git_archival.txt" rm "$out/.git_archival.txt"
''; '';
sha256 = "sha256-+mh7NgAk7R/94FXjRV+SLy478pZwYLLS8HwCazEbMf4="; sha256 = "sha256-W5RFCWKDIRrsgHZL8uSOQWvEltLbqYAweZkgIZZrSIo=";
}; };
SETUPTOOLS_SCM_PRETEND_VERSION = version; SETUPTOOLS_SCM_PRETEND_VERSION = version;
@ -52,7 +51,6 @@ buildPythonPackage rec {
src = ./paths.patch; src = ./paths.patch;
gs = "${lib.getBin ghostscript}/bin/gs"; gs = "${lib.getBin ghostscript}/bin/gs";
jbig2 = "${lib.getBin jbig2enc}/bin/jbig2"; jbig2 = "${lib.getBin jbig2enc}/bin/jbig2";
liblept = "${lib.getLib leptonica}/lib/liblept${stdenv.hostPlatform.extensions.sharedLibrary}";
pngquant = "${lib.getBin pngquant}/bin/pngquant"; pngquant = "${lib.getBin pngquant}/bin/pngquant";
tesseract = "${lib.getBin tesseract4}/bin/tesseract"; tesseract = "${lib.getBin tesseract4}/bin/tesseract";
unpaper = "${lib.getBin unpaper}/bin/unpaper"; unpaper = "${lib.getBin unpaper}/bin/unpaper";

View file

@ -1,30 +1,17 @@
diff --git a/src/ocrmypdf/_exec/ghostscript.py b/src/ocrmypdf/_exec/ghostscript.py diff --git a/src/ocrmypdf/_exec/ghostscript.py b/src/ocrmypdf/_exec/ghostscript.py
index 5c357f1b..f459763a 100644 index 1146cc5f..43f3915c 100644
--- a/src/ocrmypdf/_exec/ghostscript.py --- a/src/ocrmypdf/_exec/ghostscript.py
+++ b/src/ocrmypdf/_exec/ghostscript.py +++ b/src/ocrmypdf/_exec/ghostscript.py
@@ -25,28 +25,7 @@ from ocrmypdf.subprocess import get_version, run, run_polling_stderr @@ -40,15 +40,7 @@ For details see:
# Most reliable what to get the bitness of Python interpreter, according to Python docs
_is_64bit = sys.maxsize > 2 ** 32
log = logging.getLogger(__name__)
-missing_gs_error = """
----------------------------------------------------------------------
-This error normally occurs when ocrmypdf find can't Ghostscript.
-Please ensure Ghostscript is installed and its location is added to
-the system PATH environment variable.
-
-For details see:
- https://ocrmypdf.readthedocs.io/en/latest/installation.html
----------------------------------------------------------------------
-"""
-
-_gswin = None -_gswin = None
-if os.name == 'nt': -if os.name == 'nt':
- _gswin = which('gswin64c') - if _is_64bit:
- if not _gswin: - _gswin = 'gswin64c'
- _gswin = which('gswin32c') - else:
- if not _gswin: - _gswin = 'gswin32c'
- raise MissingDependencyError(missing_gs_error)
- _gswin = Path(_gswin).stem
- -
-GS = _gswin if _gswin else 'gs' -GS = _gswin if _gswin else 'gs'
-del _gswin -del _gswin
@ -86,19 +73,19 @@ index ca8a4542..d0544174 100644
'--skip-if-larger', '--skip-if-larger',
'--quality', '--quality',
diff --git a/src/ocrmypdf/_exec/tesseract.py b/src/ocrmypdf/_exec/tesseract.py diff --git a/src/ocrmypdf/_exec/tesseract.py b/src/ocrmypdf/_exec/tesseract.py
index 33ead41e..5840f7c1 100644 index a3688f65..61f54465 100644
--- a/src/ocrmypdf/_exec/tesseract.py --- a/src/ocrmypdf/_exec/tesseract.py
+++ b/src/ocrmypdf/_exec/tesseract.py +++ b/src/ocrmypdf/_exec/tesseract.py
@@ -78,7 +78,7 @@ class TesseractVersion(StrictVersion): @@ -75,7 +75,7 @@ class TesseractVersion(StrictVersion):
def version(): def version() -> str:
- return get_version('tesseract', regex=r'tesseract\s(.+)') - return get_version('tesseract', regex=r'tesseract\s(.+)')
+ return get_version('@tesseract@', regex=r'tesseract\s(.+)') + return get_version('@tesseract@', regex=r'tesseract\s(.+)')
def has_user_words(): def has_user_words():
@@ -100,7 +100,7 @@ def get_languages(): @@ -97,7 +97,7 @@ def get_languages():
msg += output msg += output
return msg return msg
@ -107,7 +94,7 @@ index 33ead41e..5840f7c1 100644
try: try:
proc = run( proc = run(
args_tess, args_tess,
@@ -122,7 +122,7 @@ def get_languages(): @@ -119,7 +119,7 @@ def get_languages():
def tess_base_args(langs: List[str], engine_mode: Optional[int]) -> List[str]: def tess_base_args(langs: List[str], engine_mode: Optional[int]) -> List[str]:
@ -117,7 +104,7 @@ index 33ead41e..5840f7c1 100644
args.extend(['-l', '+'.join(langs)]) args.extend(['-l', '+'.join(langs)])
if engine_mode is not None: if engine_mode is not None:
diff --git a/src/ocrmypdf/_exec/unpaper.py b/src/ocrmypdf/_exec/unpaper.py diff --git a/src/ocrmypdf/_exec/unpaper.py b/src/ocrmypdf/_exec/unpaper.py
index 3c3ae72c..d269966a 100644 index aec365c2..cc5cb7e4 100644
--- a/src/ocrmypdf/_exec/unpaper.py --- a/src/ocrmypdf/_exec/unpaper.py
+++ b/src/ocrmypdf/_exec/unpaper.py +++ b/src/ocrmypdf/_exec/unpaper.py
@@ -31,7 +31,7 @@ log = logging.getLogger(__name__) @@ -31,7 +31,7 @@ log = logging.getLogger(__name__)
@ -138,23 +125,3 @@ index 3c3ae72c..d269966a 100644
with TemporaryDirectory() as tmpdir: with TemporaryDirectory() as tmpdir:
input_pnm, output_pnm = _setup_unpaper_io(Path(tmpdir), input_file) input_pnm, output_pnm = _setup_unpaper_io(Path(tmpdir), input_file)
diff --git a/src/ocrmypdf/leptonica.py b/src/ocrmypdf/leptonica.py
index e4814f1a..fdaf7ea4 100644
--- a/src/ocrmypdf/leptonica.py
+++ b/src/ocrmypdf/leptonica.py
@@ -33,14 +33,7 @@ from ocrmypdf.lib._leptonica import ffi
logger = logging.getLogger(__name__)
-if os.name == 'nt':
- from ocrmypdf.subprocess._windows import shim_env_path
-
- libname = 'liblept-5'
- os.environ['PATH'] = shim_env_path()
-else:
- libname = 'lept'
-_libpath = find_library(libname)
+_libpath = '@liblept@'
if not _libpath:
raise MissingDependencyError(
"""

View file

@ -2,6 +2,7 @@
, buildPythonPackage , buildPythonPackage
, fetchFromGitHub , fetchFromGitHub
, pytestCheckHook , pytestCheckHook
, six
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -19,7 +20,7 @@ buildPythonPackage rec {
patchShebangs tests/cgiapp_data/ patchShebangs tests/cgiapp_data/
''; '';
# propagatedBuildInputs = [ six ]; propagatedBuildInputs = [ six ];
checkInputs = [ pytestCheckHook ]; checkInputs = [ pytestCheckHook ];

View file

@ -24,7 +24,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pikepdf"; pname = "pikepdf";
version = "4.0.2"; version = "4.1.0";
disabled = ! isPy3k; disabled = ! isPy3k;
src = fetchFromGitHub { src = fetchFromGitHub {
@ -37,7 +37,7 @@ buildPythonPackage rec {
extraPostFetch = '' extraPostFetch = ''
rm "$out/.git_archival.txt" rm "$out/.git_archival.txt"
''; '';
sha256 = "sha256-bUf9fef/YQsSj78kwoKl5a3zOjpeKWla9YY0azk0lIQ="; sha256 = "sha256-8l3IDC2EhoNTImaTTjkBYhwbSBDC3PVLbdgs4txZOKc=";
}; };
patches = [ patches = [

View file

@ -24,7 +24,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "poetry"; pname = "poetry";
version = "1.1.11"; version = "1.1.12";
format = "pyproject"; format = "pyproject";
disabled = isPy27; disabled = isPy27;
@ -32,7 +32,7 @@ buildPythonPackage rec {
owner = "python-poetry"; owner = "python-poetry";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "1f3y3gav2snvcf2h9mbkinvnlcyl9kndf6bh6j0vxkxzlmb4zilx"; sha256 = "1fm4yj6wxr24v7b77gmf63j7xsgszhbhzw2i9fvlfi0p9l0q34pm";
}; };
postPatch = '' postPatch = ''

View file

@ -15,6 +15,10 @@ buildPythonPackage rec {
propagatedBuildInputs = [ gobject-introspection pygobject3 graphviz gtk3 numpy ]; propagatedBuildInputs = [ gobject-introspection pygobject3 graphviz gtk3 numpy ];
checkInputs = [ xvfb-run ]; checkInputs = [ xvfb-run ];
postInstall = ''
wrapProgram "$out/bin/xdot" --prefix PATH : "${lib.makeBinPath [ graphviz ]}"
'';
checkPhase = '' checkPhase = ''
xvfb-run -s '-screen 0 800x600x24' ${python3.interpreter} nix_run_setup test xvfb-run -s '-screen 0 800x600x24' ${python3.interpreter} nix_run_setup test
''; '';

View file

@ -7,14 +7,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "ytmusicapi"; pname = "ytmusicapi";
version = "0.19.4"; version = "0.19.5";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "sha256-AAGUfa91f9aquPLQZs9kQDbZXrBrxjSBFdWIrxB5D/I="; sha256 = "sha256-haZe5afwkU8wD8s2lrmHJuVo6TO3CcQ/0TuJbHPmqvU=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -1,21 +1,29 @@
{ lib, stdenv, fetchFromGitHub, rustPlatform, installShellFiles, Security }: { lib
, stdenv
, fetchFromGitHub
, rustPlatform
, installShellFiles
, DiskArbitration
, Foundation
, Security
}:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "fnm"; pname = "fnm";
version = "1.27.0"; version = "1.28.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Schniz"; owner = "Schniz";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-4qnisgWhdAWZda8iy9nkph7//bVKJuUeEDS1GaAx+FQ="; sha256 = "sha256-EH3M5wg+BfTZLvch4jL7AGWwywoSxo+8marzdUgAitg=";
}; };
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];
buildInputs = lib.optionals stdenv.isDarwin [ Security ]; buildInputs = lib.optionals stdenv.isDarwin [ DiskArbitration Foundation Security ];
cargoSha256 = "sha256-f3wzuXH2ByXHHOq3zLaMtYm2HJ4BzmZe2e6DQ3V7qVo="; cargoSha256 = "sha256-Mq1SzAZa05tglcwW6fvT1khVwqA3hRzFjouWLNMWgOk=";
doCheck = false; doCheck = false;

View file

@ -1,16 +1,16 @@
{ fetchFromGitHub, buildGoModule, lib, installShellFiles, libgit2, pkg-config }: { fetchFromGitHub, buildGoModule, lib, installShellFiles, libgit2, pkg-config }:
buildGoModule rec { buildGoModule rec {
pname = "turbogit"; pname = "turbogit";
version = "3.0.1"; version = "3.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "b4nst"; owner = "b4nst";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-A1hVpapp6yIpUVnDQ1yLLHiYdLcQlr/JcTOmt5sr3Oo="; sha256 = "sha256-BHgVJlitRUX/9zYPoK5XfRpzzTZRbLhQVZJcx8KVshk=";
}; };
vendorSha256 = "sha256-1AEcBq7wiENWQ5HZEEXpIgA6Bf2T28zm/MwYTke/f9s="; vendorSha256 = "sha256-280OcGXZQJD4G6z0b2WnWAS+v7XVptyf2WnlPjG99/0=";
subPackages = [ "." ]; subPackages = [ "." ];

View file

@ -16,12 +16,12 @@ let
]; ];
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "insomnia"; pname = "insomnia";
version = "2021.4.1"; version = "2021.6.0";
src = fetchurl { src = fetchurl {
url = url =
"https://github.com/Kong/insomnia/releases/download/core%40${version}/Insomnia.Core-${version}.deb"; "https://github.com/Kong/insomnia/releases/download/core%40${version}/Insomnia.Core-${version}.deb";
sha256 = "sha256-74du6UQB1LfsnYF9tmx41KJNmlEVVL5H2W+YQR720FY="; sha256 = "sha256-YvAzO5oxeq7bnYHzKTXqRVjfJXnwrTr0DNrdWS3yrX4=";
}; };
nativeBuildInputs = nativeBuildInputs =

View file

@ -1,27 +1,28 @@
{ lib, stdenv, cmake, libGL, SDL, SDL_mixer, SDL_net, fetchFromGitHub, makeWrapper }: { lib, stdenv, cmake, libGL, SDL2, SDL2_mixer, SDL2_net, fetchFromGitHub, makeWrapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "eternity-engine"; pname = "eternity-engine";
version = "3.42.02"; version = "4.02.00";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "team-eternity"; owner = "team-eternity";
repo = "eternity"; repo = "eternity";
rev = version; rev = version;
sha256 = "00kpq4k23hjmzjaymw3sdda7mqk8fjq6dzf7fmdal9fm7lfmj41k"; sha256 = "0dlz7axbiw003bgwk2hl43w8r2bwnxhi042i1xwdiwaja0cpnf5y";
fetchSubmodules = true;
}; };
nativeBuildInputs = [ cmake makeWrapper ]; nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ libGL SDL SDL_mixer SDL_net ]; buildInputs = [ libGL SDL2 SDL2_mixer SDL2_net ];
installPhase = '' installPhase = ''
install -Dm755 source/eternity $out/lib/eternity/eternity install -Dm755 eternity/eternity $out/lib/eternity/eternity
cp -r $src/base $out/lib/eternity/base cp -r $src/base $out/lib/eternity/base
mkdir $out/bin mkdir $out/bin
makeWrapper $out/lib/eternity/eternity $out/bin/eternity makeWrapper $out/lib/eternity/eternity $out/bin/eternity
''; '';
meta = { meta = {
homepage = "http://doomworld.com/eternity"; homepage = "https://doomworld.com/eternity";
description = "New school Doom port by James Haley"; description = "New school Doom port by James Haley";
license = lib.licenses.gpl3; license = lib.licenses.gpl3;
platforms = lib.platforms.linux; platforms = lib.platforms.linux;

View file

@ -0,0 +1,38 @@
{ lib, fetchurl, appimageTools, python }:
let
pname = "heroic";
version = "1.10.3";
name = "${pname}-${version}";
src = fetchurl {
url = "https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v${version}/Heroic-${version}.AppImage";
sha256 = "sha256-0VQ5rSGGsEAsOLB4H/Hn2w7wCOrCSoVFzCBqNV5NyVE=";
};
appimageContents = appimageTools.extractType2 { inherit name src; };
in appimageTools.wrapType2 {
inherit name src;
extraInstallCommands = ''
mv $out/bin/${name} $out/bin/${pname}
mkdir -p $out/share/${pname}
cp -a ${appimageContents}/locales $out/share/${pname}
cp -a ${appimageContents}/resources $out/share/${pname}
install -m 444 -D ${appimageContents}/heroic.desktop -t $out/share/applications
cp -a ${appimageContents}/usr/share/icons $out/share/
substituteInPlace $out/share/applications/heroic.desktop \
--replace 'Exec=AppRun' 'Exec=heroic'
'';
meta = with lib; {
description = "A Native GUI Epic Games Launcher for Linux, Windows and Mac";
homepage = "https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher";
license = licenses.gpl3Only;
maintainers = with maintainers; [ wolfangaukang ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -60,6 +60,7 @@ stdenv.mkDerivation rec {
freetype freetype
harfbuzz harfbuzz
sqlite sqlite
] ++ lib.optionals (!stdenv.isDarwin) [
vulkan-headers vulkan-headers
vulkan-loader vulkan-loader
]; ];
@ -93,7 +94,7 @@ stdenv.mkDerivation rec {
# #
# Alternatively, we could have set CMAKE_INSTALL_BINDIR to "bin". # Alternatively, we could have set CMAKE_INSTALL_BINDIR to "bin".
"-DCMAKE_INSTALL_DATAROOTDIR=${placeholder "out"}/share" "-DCMAKE_INSTALL_DATAROOTDIR=${placeholder "out"}/share"
]; ] ++ lib.optional stdenv.isDarwin "-P../configure_mac.cmake";
postInstall = lib.optionalString withVideos '' postInstall = lib.optionalString withVideos ''
cp ${sequences_src} $out/share/warzone2100/sequences.wz cp ${sequences_src} $out/share/warzone2100/sequences.wz
@ -115,6 +116,9 @@ stdenv.mkDerivation rec {
homepage = "http://wz2100.net"; homepage = "http://wz2100.net";
license = licenses.gpl2Plus; license = licenses.gpl2Plus;
maintainers = with maintainers; [ astsmtl fgaz ]; maintainers = with maintainers; [ astsmtl fgaz ];
platforms = platforms.linux; platforms = platforms.all;
# configure_mac.cmake tries to download stuff
# https://github.com/Warzone2100/warzone2100/blob/master/macosx/README.md
broken = stdenv.isDarwin;
}; };
} }

View file

@ -0,0 +1,28 @@
{ lib, buildGoPackage, fetchFromGitHub, mage }:
buildGoPackage rec {
pname = "dave";
version = "0.4.0";
src = fetchFromGitHub {
owner = "micromata";
repo = "dave";
rev = "v${version}";
sha256 = "sha256-wvsW4EwMWAgEV+LPeMhHL4AsuyS5TDMmpD9D4F1nVM4=";
};
goPackagePath = "github.com/micromata/dave";
subPackages = [ "cmd/dave" "cmd/davecli" ];
ldflags =
[ "-s" "-w" "-X main.version=${version}" "-X main.builtBy=nixpkgs" ];
meta = with lib; {
homepage = "https://github.com/micromata/dave";
description =
"A totally simple and very easy to configure stand alone webdav server";
license = licenses.asl20;
maintainers = with maintainers; [ lunik1 ];
};
}

View file

@ -0,0 +1,51 @@
From e81b06df67b1d42ef915615fafa0b56ef956673b Mon Sep 17 00:00:00 2001
From: Andreas Fuchs <asf@boinkor.net>
Date: Thu, 11 Feb 2021 17:30:44 -0500
Subject: [PATCH] Return the cached value if it's not time to scan again yet
This should ensure that if we have a valid value cached (which ought
to be every time after the first scan), we return it as metrics.
This fixes the crashes that would happen if queries happened earlier
than the re-scan interval allowed.
Address review feedback: Shorten the time-to-scan logic
We can express this in a single if statement, so it takes fewer lines
to do the "should we check again" check.
---
readjson.go | 11 ++---------
1 file changed, 2 insertions(+), 9 deletions(-)
diff --git a/readjson.go b/readjson.go
index da35448..c9996fd 100644
--- a/readjson.go
+++ b/readjson.go
@@ -78,14 +78,7 @@ func readData(device string) (gjson.Result, error) {
if _, err := os.Stat(device); err == nil {
cacheValue, cacheOk := jsonCache[device]
- timeToScan := false
- if cacheOk {
- timeToScan = time.Now().After(cacheValue.LastCollect.Add(options.SMARTctl.CollectPeriodDuration))
- } else {
- timeToScan = true
- }
-
- if timeToScan {
+ if !cacheOk || time.Now().After(cacheValue.LastCollect.Add(options.SMARTctl.CollectPeriodDuration)) {
json, ok := readSMARTctl(device)
if ok {
jsonCache[device] = JSONCache{JSON: json, LastCollect: time.Now()}
@@ -93,7 +86,7 @@ func readData(device string) (gjson.Result, error) {
}
return gjson.Parse(DEFAULT_EMPTY_JSON), fmt.Errorf("smartctl returned bad data for device %s", device)
}
- return gjson.Parse(DEFAULT_EMPTY_JSON), fmt.Errorf("Too early collect called for device %s", device)
+ return cacheValue.JSON, nil
}
return gjson.Parse(DEFAULT_EMPTY_JSON), fmt.Errorf("Device %s unavialable", device)
}
--
2.33.1

View file

@ -0,0 +1,41 @@
{ lib
, fetchFromGitHub
, fetchpatch
, buildGoModule
}:
buildGoModule rec {
pname = "smartctl_exporter";
version = "unstable-2020-11-14";
src = fetchFromGitHub {
owner = "prometheus-community";
repo = pname;
rev = "e27581d56ad80340fb076d3ce22cef337ed76679";
sha256 = "sha256-iWaFDjVLBIAA9zGe0utbuvmEdA3R5lge0iCh3j2JfE8=";
};
patches = [
# Fixes out of range panic (https://github.com/prometheus-community/smartctl_exporter/issues/19)
(fetchpatch {
url = "https://github.com/prometheus-community/smartctl_exporter/commit/15575301a8e2fe5802a8c066c6fa9765d50b8cfa.patch";
sha256 = "sha256-HLUrGXNz3uKpuQBUgQBSw6EGbGl23hQnimTGl64M5bQ=";
})
# Fix validation on empty smartctl response (https://github.com/prometheus-community/smartctl_exporter/pull/31)
(fetchpatch {
url = "https://github.com/prometheus-community/smartctl_exporter/commit/744b4e5f6a46e029d31d5aa46642e85f429c2cfa.patch";
sha256 = "sha256-MgLtYR1SpM6XrZQQ3AgQRmNF3OnaBCqXMJRV9BOzKPc=";
})
# Fixes missing metrics if outside of query interval (https://github.com/prometheus-community/smartctl_exporter/pull/18)
./0001-Return-the-cached-value-if-it-s-not-time-to-scan-aga.patch
];
vendorSha256 = "1xhrzkfm2p20k7prgdfax4408g4qpa4wbxigmcmfz7kjg2zi88ld";
meta = with lib; {
description = "Export smartctl statistics for Prometheus";
homepage = "https://github.com/prometheus-community/smartctl_exporter";
license = licenses.lgpl3;
maintainers = with maintainers; [ hexa ];
};
}

View file

@ -1,26 +1,63 @@
{ lib, stdenv, fetchurl, autoreconfHook, pkg-config, systemd, glib, dbus, libnl, python3Packages }: { stdenv
, lib
, fetchurl
, autoreconfHook
, autoconf-archive
, pkg-config
, systemd
, glib
, dbus
, libnl
, python2Packages
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "neard"; pname = "neard";
version = "0.16"; version = "0.18";
outputs = [ "out" "dev" ];
src = fetchurl { src = fetchurl {
url = "https://git.kernel.org/pub/scm/network/nfc/neard.git/snapshot/neard-${version}.tar.gz"; url = "https://git.kernel.org/pub/scm/network/nfc/neard.git/snapshot/neard-${version}.tar.gz";
sha256 = "0bpdmyxvd3z54p95apz4bjb5jp8hbc04sicjapcryjwa8mh6pbil"; sha256 = "wBPjEVMV4uEdFrXw8cjOmvvNuiaACq2RJF/ZtKXck4s=";
}; };
nativeBuildInputs = [ autoreconfHook pkg-config python3Packages.wrapPython ]; nativeBuildInputs = [
buildInputs = [ systemd glib dbus libnl ] ++ (with python3Packages; [ python ]); autoreconfHook
pythonPath = with python3Packages; [ pygobject3 dbus-python ]; autoconf-archive
pkg-config
python2Packages.wrapPython
];
buildInputs = [
systemd
glib
dbus
libnl
] ++ (with python2Packages; [
python
]);
pythonPath = with python2Packages; [
pygobject2
dbus-python
pygtk
];
strictDeps = true; strictDeps = true;
configureFlags = [ "--disable-debug" "--enable-tools" "--enable-ese" "--with-systemdsystemunitdir=$out/lib/systemd/system" ]; enableParallelBuilding = true;
configureFlags = [
"--disable-debug"
"--enable-tools"
"--enable-ese"
"--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
];
postInstall = '' postInstall = ''
install -m 0755 tools/snep-send $out/bin/ install -m 0755 tools/snep-send $out/bin/
install -D -m644 src/neard.service $out/lib/systemd/system/neard.service
install -D -m644 src/main.conf $out/etc/neard/main.conf install -D -m644 src/main.conf $out/etc/neard/main.conf
# INFO: the config option "--enable-test" would copy the apps to $out/lib/neard/test/ instead # INFO: the config option "--enable-test" would copy the apps to $out/lib/neard/test/ instead
@ -31,9 +68,9 @@ stdenv.mkDerivation rec {
meta = with lib; { meta = with lib; {
description = "Near Field Communication manager"; description = "Near Field Communication manager";
homepage = "https://01.org/linux-nfc"; homepage = "https://01.org/linux-nfc";
license = licenses.gpl2; license = licenses.gpl2Only;
maintainers = with maintainers; [ tstrobel ]; maintainers = with maintainers; [ jtojnar tstrobel ];
platforms = platforms.unix; platforms = platforms.unix;
}; };
} }

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, postgresql, openssl, zlib, readline, libkrb5 }: { lib, stdenv, fetchFromGitHub, fetchpatch, postgresql, openssl, zlib, readline, libkrb5 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "pg_auto_failover"; pname = "pg_auto_failover";
@ -11,6 +11,16 @@ stdenv.mkDerivation rec {
sha256 = "sha256-hGpcHV4ai9mxaJ/u/o9LNFWPGsW22W7ak2pbvAUgmwU="; sha256 = "sha256-hGpcHV4ai9mxaJ/u/o9LNFWPGsW22W7ak2pbvAUgmwU=";
}; };
patches = [
# Pull upstream fix for ncurses-6.3 support:
# https://github.com/citusdata/pg_auto_failover/pull/830
(fetchpatch {
name = "ncurses-6.3.patch";
url = "https://github.com/citusdata/pg_auto_failover/commit/fc92546965437a6d5f82ed9a6bdc8204a3bca725.patch";
sha256 = "sha256-t4DC/d/2s/Mc44rpFxBMOWGhACG0s5wAWyeDD7Mefo8=";
})
];
buildInputs = [ postgresql openssl zlib readline libkrb5 ]; buildInputs = [ postgresql openssl zlib readline libkrb5 ];
installPhase = '' installPhase = ''

View file

@ -2,13 +2,13 @@
buildFishPlugin rec { buildFishPlugin rec {
pname = "fzf.fish"; pname = "fzf.fish";
version = "7.3"; version = "7.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "PatrickF1"; owner = "PatrickF1";
repo = "fzf.fish"; repo = "fzf.fish";
rev = "v${version}"; rev = "v${version}";
sha256 = "16mdfyznxjhv7x561srl559misn37a35d2q9fspxa7qg1d0sc3x9"; sha256 = "sha256-dngAKzyD+lmqmxsCSOMViyCgA/+Ve35gLtPS+Lgs8Pc=";
}; };
checkInputs = [ fzf fd util-linux ]; checkInputs = [ fzf fd util-linux ];

View file

@ -6,13 +6,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "clickclack"; pname = "clickclack";
version = "0.1.1"; version = "0.2";
src = fetchFromSourcehut { src = fetchFromSourcehut {
owner = "~proycon"; owner = "~proycon";
repo = "clickclack"; repo = "clickclack";
rev = version; rev = version;
sha256 = "1q8r0ng1bld5n82gh7my7ck90f4plf8vf019hm2wz475dl38izd5"; sha256 = "sha256-hldtHSRdw6yP9lUFna5yvJ3mOTbQbbQNnGM7fMQmmtM=";
}; };
buildInputs = [ buildInputs = [

View file

@ -5,58 +5,40 @@
, python3 , python3
}: }:
let python3.pkgs.buildPythonApplication rec {
py = python3.override {
packageOverrides = self: super: {
click = super.click.overridePythonAttrs (oldAttrs: rec {
version = "8.0.1";
src = oldAttrs.src.override {
inherit version;
sha256 = "0ymdyf37acq4qxh038q0xx44qgj6y2kf0jd0ivvix6qij88w214c";
};
});
arrow = super.arrow.overridePythonAttrs (oldAttrs: rec {
version = "1.2.0";
src = oldAttrs.src.override {
inherit version;
sha256 = "0x70a057dqki2z1ny491ixbg980hg4lihc7g1zmy69g4v6xjkz0n";
};
});
};
};
in
with py.pkgs;
buildPythonApplication rec {
pname = "gitlint"; pname = "gitlint";
version = "0.16.0"; version = "0.17.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jorisroovers"; owner = "jorisroovers";
repo = "gitlint"; repo = "gitlint";
rev = "v${version}"; rev = "v${version}";
sha256 = "1j6gfgqin5dmqd2qq0vib55d2r07s9sy4hwrvwlichxx5jjwncly"; sha256 = "sha256-RXBMb43BBiJ23X0eKC1kqgLw8iFKJnP5iejY0AWcUrU=";
}; };
nativeBuildInputs = [ # Upstream splitted the project into gitlint and gitlint-core to
wheel # simplify the dependency handling
]; sourceRoot = "source/gitlint-core";
propagatedBuildInputs = [ propagatedBuildInputs = with python3.pkgs; [
arrow arrow
click click
sh sh
]; ];
preCheck = '' checkInputs = with python3.pkgs; [
export PATH="$out/bin:$PATH" gitMinimal
pytestCheckHook
];
postPatch = ''
# We don't need gitlint-core
substituteInPlace setup.py \
--replace "'gitlint-core[trusted-deps]==' + version," ""
''; '';
checkInputs = [ pythonImportsCheck = [
gitMinimal "gitlint"
]; ];
meta = with lib; { meta = with lib; {

View file

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "steampipe"; pname = "steampipe";
version = "0.9.1"; version = "0.10.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "turbot"; owner = "turbot";
repo = "steampipe"; repo = "steampipe";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-asAqRCJdy8HmzWzuE9nSvxqo6EVY8tkljzEFAClogrs="; sha256 = "sha256-Hg9GvHB2eTcOUUC/WLpks9TUWivoV6KxXcWWBWne5Lg=";
}; };
vendorSha256 = "sha256-3JBCiF1gxGCVn81s7abGvNIAy+eP7orAnSBOXUNImao="; vendorSha256 = "sha256-akMUJcAoUGHz3FzDJlMUYtHXrtvU0JMiRfqhTm4IEpA=";
# tests are failing for no obvious reasons # tests are failing for no obvious reasons
doCheck = false; doCheck = false;

View file

@ -5,14 +5,14 @@
buildGoModule rec { buildGoModule rec {
pname = "trillian"; pname = "trillian";
version = "1.3.13"; version = "1.4.0";
vendorSha256 = "1ad0vaw0k57njzk9x233iqjbplyvw66qjk8r9j7sx87pdc6a4lpb"; vendorSha256 = "sha256-n5PD3CGgNGrqSYLJS+3joGFNue2fF/tdimC6CtO15yU=";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "google"; owner = "google";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1ns394yd4js9g1psd1dkrffidyzixqvjp5lhw2x2iycrxbnm3y44"; sha256 = "sha256-c7Sii6GMWZOeD46OwdkXU/wt9zY+EyPSnahYPJQKJcA=";
}; };
subPackages = [ subPackages = [

View file

@ -2,27 +2,20 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "ytcc"; pname = "ytcc";
version = "2.5.3"; version = "2.5.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "woefe"; owner = "woefe";
repo = "ytcc"; repo = "ytcc";
rev = "v${version}"; rev = "v${version}";
sha256 = "1skhg8ca2bjjfi02pjsi3w7v3f4xhzg7bqyy0cajxsymzqzqp7lm"; sha256 = "sha256-nYHfmksZnIZGMSSFDhW7ajvv1F5h3aJo8IXw6yYOEw0=";
}; };
postPatch = ''
substituteInPlace setup.py --replace "youtube_dl" "yt_dlp"
'';
nativeBuildInputs = [ gettext installShellFiles ]; nativeBuildInputs = [ gettext installShellFiles ];
propagatedBuildInputs = with python3Packages; [ propagatedBuildInputs = with python3Packages; [
click
feedparser
lxml
sqlalchemy
yt-dlp yt-dlp
click
wcwidth wcwidth
]; ];

View file

@ -4,14 +4,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "apk-tools"; pname = "apk-tools";
version = "2.12.7"; version = "2.12.8";
src = fetchFromGitLab { src = fetchFromGitLab {
domain = "gitlab.alpinelinux.org"; domain = "gitlab.alpinelinux.org";
owner = "alpine"; owner = "alpine";
repo = "apk-tools"; repo = "apk-tools";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-sGAsC5HZV5jaaUXgaPDUf4+vDL4zSGldzhykpdZlFS4="; sha256 = "1bqrvdyqqllzsyx9gdkqmd17wxcmli6ljwxxa8wj9gzg9pqhlhqz";
}; };
nativeBuildInputs = [ pkg-config scdoc ] nativeBuildInputs = [ pkg-config scdoc ]

View file

@ -0,0 +1,89 @@
{ lib, stdenv, fetchurl, dpkg, buildFHSUserEnv
, glibc, glib, openssl, tpm2-tss
, gtk3, gnome, polkit, polkit_gnome
}:
let
pname = "beyond-identity";
version = "2.45.0-0";
libPath = lib.makeLibraryPath ([ glib glibc openssl tpm2-tss gtk3 gnome.gnome-keyring polkit polkit_gnome ]);
meta = with lib; {
description = "Passwordless MFA identities for workforces, customers, and developers";
homepage = "https://www.beyondidentity.com";
downloadPage = "https://app.byndid.com/downloads";
license = licenses.unfree;
maintainers = with maintainers; [ klden ];
platforms = [ "x86_64-linux" ];
};
beyond-identity = stdenv.mkDerivation {
inherit pname version meta;
src = fetchurl {
url = "https://packages.beyondidentity.com/public/linux-authenticator/deb/ubuntu/pool/focal/main/b/be/${pname}_${version}/${pname}_${version}_amd64.deb";
sha512 = "852689d473b7538cdca60d264295f39972491b5505accad897fd924504189f0a6d8b6481cc0520ee762d4642e0f4fd664a03b5741f9ea513ec46ab16b05158f2";
};
nativeBuildInputs = [
dpkg
];
unpackPhase = ''
dpkg -x $src .
'';
installPhase = ''
mkdir -p $out/opt/beyond-identity
rm -rf usr/share/doc
# https://github.com/NixOS/nixpkgs/issues/42117
sed -i -e 's/auth_self/yes/g' usr/share/polkit-1/actions/com.beyondidentity.endpoint.stepup.policy
cp -ar usr/{bin,share} $out
cp -ar opt/beyond-identity/bin $out/opt/beyond-identity
ln -s $out/opt/beyond-identity/bin/* $out/bin/
'';
postFixup = ''
substituteInPlace \
$out/share/applications/com.beyondidentity.endpoint.BeyondIdentity.desktop \
--replace /usr/bin/ $out/bin/
substituteInPlace \
$out/share/applications/com.beyondidentity.endpoint.webserver.BeyondIdentity.desktop \
--replace /opt/ $out/opt/
substituteInPlace \
$out/opt/beyond-identity/bin/byndid-web \
--replace /opt/ $out/opt/
substituteInPlace \
$out/bin/beyond-identity \
--replace /opt/ $out/opt/ \
--replace /usr/bin/gtk-launch ${gtk3}/bin/gtk-launch
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${libPath}" \
--force-rpath \
$out/bin/byndid
'';
};
# /usr/bin/pkcheck is hardcoded in binary - we need FHS
in buildFHSUserEnv {
inherit meta;
name = pname;
targetPkgs = pkgs: [
beyond-identity
glib glibc openssl tpm2-tss
gtk3 gnome.gnome-keyring
polkit polkit_gnome
];
extraInstallCommands = ''
ln -s ${beyond-identity}/share $out
'';
runScript = "beyond-identity";
}

View file

@ -0,0 +1,32 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "kubeaudit";
version = "0.16.0";
src = fetchFromGitHub {
owner = "Shopify";
repo = pname;
rev = version;
sha256 = "sha256-AIvH9HF0Ha1b+NZiJmiT6beYuKnCqJMXKzDFUzV9J4c=";
};
vendorSha256 = "sha256-XrEzkhQU/KPElQNgCX6yWDMQXZSd3lRXmUDJpsj5ACY=";
postInstall = ''
mv $out/bin/cmd $out/bin/$pname
'';
# Tests require a running Kubernetes instance
doCheck = false;
meta = with lib; {
description = "Audit tool for Kubernetes";
homepage = "https://github.com/Shopify/kubeaudit";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};
}

View file

@ -5,13 +5,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "alpine-make-vm-image"; pname = "alpine-make-vm-image";
version = "0.7.0"; version = "0.8.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alpinelinux"; owner = "alpinelinux";
repo = "alpine-make-vm-image"; repo = "alpine-make-vm-image";
rev = "v${version}"; rev = "v${version}";
sha256 = "0cjcwq957nsml06kdnnvgzki84agjfvqw3mpyiix4i4q5by91lcl"; sha256 = "14rkqlg319h8agiydgknjfv2f7vl6rdj848xfkngvydrf1rr38j6";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];

View file

@ -0,0 +1,29 @@
{ lib, stdenv, fetchFromGitHub, wl-clipboard }:
stdenv.mkDerivation rec {
pname = "wl-clipboard-x11";
version = "5";
src = fetchFromGitHub {
owner = "brunelli";
repo = pname;
rev = "v${version}";
hash = "sha256-i+oF1Mu72O5WPTWzqsvo4l2CERWWp4Jq/U0DffPZ8vg=";
};
makeFlags = [ "PREFIX=${placeholder "out"}" ];
postPatch = ''
substituteInPlace src/wl-clipboard-x11 \
--replace '$(command -v wl-copy)' ${wl-clipboard}/bin/wl-copy \
--replace '$(command -v wl-paste)' ${wl-clipboard}/bin/wl-paste
'';
meta = with lib; {
description = "A wrapper to use wl-clipboard as a drop-in replacement for X11 clipboard tools";
homepage = "https://github.com/brunelli/wl-clipboard-x11";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ samuelgrf ];
mainProgram = "xclip";
};
}

View file

@ -206,6 +206,8 @@ with pkgs;
bakelite = callPackage ../tools/backup/bakelite { }; bakelite = callPackage ../tools/backup/bakelite { };
beyond-identity = callPackage ../tools/security/beyond-identity {};
breakpad = callPackage ../development/misc/breakpad { }; breakpad = callPackage ../development/misc/breakpad { };
buf = callPackage ../development/tools/buf { }; buf = callPackage ../development/tools/buf { };
@ -1703,6 +1705,8 @@ with pkgs;
foxdot = with python3Packages; toPythonApplication foxdot; foxdot = with python3Packages; toPythonApplication foxdot;
fspy = callPackage ../applications/misc/fspy { };
fxlinuxprintutil = callPackage ../tools/misc/fxlinuxprintutil { }; fxlinuxprintutil = callPackage ../tools/misc/fxlinuxprintutil { };
genann = callPackage ../development/libraries/genann { }; genann = callPackage ../development/libraries/genann { };
@ -1843,6 +1847,8 @@ with pkgs;
mdr = callPackage ../tools/misc/mdr { }; mdr = callPackage ../tools/misc/mdr { };
mobilecoin-wallet = callPackage ../applications/misc/mobilecoin-wallet { };
mpdevil = callPackage ../applications/audio/mpdevil { }; mpdevil = callPackage ../applications/audio/mpdevil { };
pacparser = callPackage ../tools/networking/pacparser { }; pacparser = callPackage ../tools/networking/pacparser { };
@ -2561,6 +2567,8 @@ with pkgs;
wl-clipboard = callPackage ../tools/wayland/wl-clipboard { }; wl-clipboard = callPackage ../tools/wayland/wl-clipboard { };
wl-clipboard-x11 = callPackage ../tools/wayland/wl-clipboard-x11 { };
wl-mirror = callPackage ../tools/wayland/wl-mirror { }; wl-mirror = callPackage ../tools/wayland/wl-mirror { };
wlogout = callPackage ../tools/wayland/wlogout { }; wlogout = callPackage ../tools/wayland/wlogout { };
@ -2676,6 +2684,8 @@ with pkgs;
datovka = libsForQt5.callPackage ../applications/networking/datovka { }; datovka = libsForQt5.callPackage ../applications/networking/datovka { };
dave = callPackage ../servers/http/dave { };
dconf = callPackage ../development/libraries/dconf { }; dconf = callPackage ../development/libraries/dconf { };
dcw-gmt = callPackage ../applications/gis/gmt/dcw.nix { }; dcw-gmt = callPackage ../applications/gis/gmt/dcw.nix { };
@ -3144,6 +3154,8 @@ with pkgs;
hebcal = callPackage ../tools/misc/hebcal {}; hebcal = callPackage ../tools/misc/hebcal {};
heroic = callPackage ../games/heroic {};
hexio = callPackage ../development/tools/hexio { }; hexio = callPackage ../development/tools/hexio { };
hexyl = callPackage ../tools/misc/hexyl { }; hexyl = callPackage ../tools/misc/hexyl { };
@ -11644,7 +11656,7 @@ with pkgs;
flutter = flutterPackages.stable; flutter = flutterPackages.stable;
fnm = callPackage ../development/tools/fnm { fnm = callPackage ../development/tools/fnm {
inherit (darwin.apple_sdk.frameworks) Security; inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation Security;
}; };
fnlfmt = callPackage ../development/tools/fnlfmt { }; fnlfmt = callPackage ../development/tools/fnlfmt { };
@ -14787,6 +14799,8 @@ with pkgs;
kube-aws = callPackage ../development/tools/kube-aws { }; kube-aws = callPackage ../development/tools/kube-aws { };
kubeaudit = callPackage ../tools/security/kubeaudit { };
kubectx = callPackage ../development/tools/kubectx { }; kubectx = callPackage ../development/tools/kubectx { };
kube-prompt = callPackage ../development/tools/kube-prompt { }; kube-prompt = callPackage ../development/tools/kube-prompt { };
@ -15405,9 +15419,7 @@ with pkgs;
ttyd = callPackage ../servers/ttyd { }; ttyd = callPackage ../servers/ttyd { };
turbogit = callPackage ../development/tools/turbogit { turbogit = callPackage ../development/tools/turbogit { };
libgit2 = libgit2_1_1; # git2go only supports v1.1.x
};
tweak = callPackage ../applications/editors/tweak { }; tweak = callPackage ../applications/editors/tweak { };
@ -21407,6 +21419,7 @@ with pkgs;
prometheus-rabbitmq-exporter = callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix { }; prometheus-rabbitmq-exporter = callPackage ../servers/monitoring/prometheus/rabbitmq-exporter.nix { };
prometheus-rtl_433-exporter = callPackage ../servers/monitoring/prometheus/rtl_433-exporter.nix { }; prometheus-rtl_433-exporter = callPackage ../servers/monitoring/prometheus/rtl_433-exporter.nix { };
prometheus-script-exporter = callPackage ../servers/monitoring/prometheus/script-exporter.nix { }; prometheus-script-exporter = callPackage ../servers/monitoring/prometheus/script-exporter.nix { };
prometheus-smartctl-exporter = callPackage ../servers/monitoring/prometheus/smartctl-exporter { };
prometheus-smokeping-prober = callPackage ../servers/monitoring/prometheus/smokeping-prober.nix { }; prometheus-smokeping-prober = callPackage ../servers/monitoring/prometheus/smokeping-prober.nix { };
prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { }; prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { };
prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { }; prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-exporter.nix { };
@ -23405,6 +23418,8 @@ with pkgs;
material-icons = callPackage ../data/fonts/material-icons { }; material-icons = callPackage ../data/fonts/material-icons { };
material-kwin-decoration = libsForQt5.callPackage ../data/themes/material-kwin-decoration { };
meslo-lg = callPackage ../data/fonts/meslo-lg {}; meslo-lg = callPackage ../data/fonts/meslo-lg {};
meslo-lgs-nf = callPackage ../data/fonts/meslo-lgs-nf {}; meslo-lgs-nf = callPackage ../data/fonts/meslo-lgs-nf {};
@ -24876,6 +24891,8 @@ with pkgs;
icesl = callPackage ../applications/misc/icesl { }; icesl = callPackage ../applications/misc/icesl { };
kalendar = libsForQt5.callPackage ../applications/office/kalendar { };
keepassx = callPackage ../applications/misc/keepassx { }; keepassx = callPackage ../applications/misc/keepassx { };
keepassx2 = callPackage ../applications/misc/keepassx/2.0.nix { }; keepassx2 = callPackage ../applications/misc/keepassx/2.0.nix { };
keepassxc = libsForQt5.callPackage ../applications/misc/keepassx/community.nix { }; keepassxc = libsForQt5.callPackage ../applications/misc/keepassx/community.nix { };

View file

@ -10158,7 +10158,9 @@ in {
xdis = callPackage ../development/python-modules/xdis { }; xdis = callPackage ../development/python-modules/xdis { };
xdot = callPackage ../development/python-modules/xdot { }; xdot = callPackage ../development/python-modules/xdot {
inherit (pkgs) graphviz;
};
xenomapper = callPackage ../applications/science/biology/xenomapper { }; xenomapper = callPackage ../applications/science/biology/xenomapper { };