Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2024-03-10 00:02:48 +00:00 committed by GitHub
commit 3ce29d4386
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
85 changed files with 1716 additions and 745 deletions

View File

@ -306,18 +306,129 @@ rec {
in if drv == null then null else in if drv == null then null else
deepSeq drv' drv'; deepSeq drv' drv';
/* Make a set of packages with a common scope. All packages called /**
with the provided `callPackage` will be evaluated with the same Make an attribute set (a "scope") from functions that take arguments from that same attribute set.
arguments. Any package in the set may depend on any other. The See [](#ex-makeScope) for how to use it.
`overrideScope'` function allows subsequent modification of the package
set in a consistent way, i.e. all packages in the set will be
called with the overridden packages. The package sets may be
hierarchical: the packages in the set are called with the scope
provided by `newScope` and the set provides a `newScope` attribute
which can form the parent scope for later package sets.
Type: # Inputs
makeScope :: (AttrSet -> ((AttrSet -> a) | Path) -> AttrSet -> a) -> (AttrSet -> AttrSet) -> AttrSet
1. `newScope` (`AttrSet -> ((AttrSet -> a) | Path) -> AttrSet -> a`)
A function that takes an attribute set `attrs` and returns what ends up as `callPackage` in the output.
Typical values are `callPackageWith` or the output attribute `newScope`.
2. `f` (`AttrSet -> AttrSet`)
A function that takes an attribute set as returned by `makeScope newScope f` (a "scope") and returns any attribute set.
This function is used to compute the fixpoint of the resulting scope using `callPackage`.
Its argument is the lazily evaluated reference to the value of that fixpoint, and is typically called `self` or `final`.
See [](#ex-makeScope) for how to use it.
See [](#sec-functions-library-fixedPoints) for details on fixpoint computation.
# Output
`makeScope` returns an attribute set of a form called `scope`, which also contains the final attributes produced by `f`:
```
scope :: {
callPackage :: ((AttrSet -> a) | Path) -> AttrSet -> a
newScope = AttrSet -> scope
overrideScope = (scope -> scope -> AttrSet) -> scope
packages :: AttrSet -> AttrSet
}
```
- `callPackage` (`((AttrSet -> a) | Path) -> AttrSet -> a`)
A function that
1. Takes a function `p`, or a path to a Nix file that contains a function `p`, which takes an attribute set and returns value of arbitrary type `a`,
2. Takes an attribute set `args` with explicit attributes to pass to `p`,
3. Calls `f` with attributes from the original attribute set `attrs` passed to `newScope` updated with `args, i.e. `attrs // args`, if they match the attributes in the argument of `p`.
All such functions `p` will be called with the same value for `attrs`.
See [](#ex-makeScope-callPackage) for how to use it.
- `newScope` (`AttrSet -> scope`)
Takes an attribute set `attrs` and returns a scope that extends the original scope.
- `overrideScope` (`(scope -> scope -> AttrSet) -> scope`)
Takes a function `g` of the form `final: prev: { # attributes }` to act as an overlay on `f`, and returns a new scope with values determined by `extends g f`.
See [](https://nixos.org/manual/nixpkgs/unstable/#function-library-lib.fixedPoints.extends) for details.
This allows subsequent modification of the final attribute set in a consistent way, i.e. all functions `p` invoked with `callPackage` will be called with the modified values.
- `packages` (`AttrSet -> AttrSet`)
The value of the argument `f` to `makeScope`.
- final attributes
The final values returned by `f`.
# Examples
:::{#ex-makeScope .example}
# Create an interdependent package set on top of `pkgs`
The functions in `foo.nix` and `bar.nix` can depend on each other, in the sense that `foo.nix` can contain a function that expects `bar` as an attribute in its argument.
```nix
let
pkgs = import <nixpkgs> { };
in
pkgs.lib.makeScope pkgs.newScope (self: {
foo = self.callPackage ./foo.nix { };
bar = self.callPackage ./bar.nix { };
})
```
evaluates to
```nix
{
callPackage = «lambda»;
newScope = «lambda»;
overrideScope = «lambda»;
packages = «lambda»;
foo = «derivation»;
bar = «derivation»;
}
```
:::
:::{#ex-makeScope-callPackage .example}
# Using `callPackage` from a scope
```nix
let
pkgs = import <nixpkgs> { };
inherit (pkgs) lib;
scope = lib.makeScope lib.callPackageWith (self: { a = 1; b = 2; });
three = scope.callPackage ({ a, b }: a + b) { };
four = scope.callPackage ({ a, b }: a + b) { a = 2; };
in
[ three four ]
```
evaluates to
```nix
[ 3 4 ]
```
:::
# Type
```
makeScope :: (AttrSet -> ((AttrSet -> a) | Path) -> AttrSet -> a) -> (AttrSet -> AttrSet) -> scope
```
*/ */
makeScope = newScope: f: makeScope = newScope: f:
let self = f self // { let self = f self // {

View File

@ -121,6 +121,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- The `power.ups` module now generates `upsd.conf`, `upsd.users` and `upsmon.conf` automatically from a set of new configuration options. This breaks compatibility with existing `power.ups` setups where these files were created manually. Back up these files before upgrading NixOS. - The `power.ups` module now generates `upsd.conf`, `upsd.users` and `upsmon.conf` automatically from a set of new configuration options. This breaks compatibility with existing `power.ups` setups where these files were created manually. Back up these files before upgrading NixOS.
- `unrar` was updated to v7. See [changelog](https://www.rarlab.com/unrar7notes.htm) for more information.
- `k3s` was updated to [v1.29](https://github.com/k3s-io/k3s/releases/tag/v1.29.1%2Bk3s2). See [changelog and upgrade notes](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.29.md#urgent-upgrade-notes) for more information. - `k3s` was updated to [v1.29](https://github.com/k3s-io/k3s/releases/tag/v1.29.1%2Bk3s2). See [changelog and upgrade notes](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.29.md#urgent-upgrade-notes) for more information.
- `k9s` was updated to v0.31. There have been various breaking changes in the config file format, - `k9s` was updated to v0.31. There have been various breaking changes in the config file format,

View File

@ -66,7 +66,7 @@ with lib;
networkmanager-sstp = super.networkmanager-vpnc.override { withGnome = false; }; networkmanager-sstp = super.networkmanager-vpnc.override { withGnome = false; };
networkmanager-vpnc = super.networkmanager-vpnc.override { withGnome = false; }; networkmanager-vpnc = super.networkmanager-vpnc.override { withGnome = false; };
pango = super.pango.override { x11Support = false; }; pango = super.pango.override { x11Support = false; };
pinentry = super.pinentry.override { enabledFlavors = [ "curses" "tty" "emacs" ]; withLibsecret = false; }; pinentry-curses = super.pinentry-curses.override { withLibsecret = false; };
pipewire = super.pipewire.override { vulkanSupport = false; x11Support = false; }; pipewire = super.pipewire.override { vulkanSupport = false; x11Support = false; };
pythonPackagesExtensions = super.pythonPackagesExtensions ++ [ pythonPackagesExtensions = super.pythonPackagesExtensions ++ [
(python-final: python-prev: { (python-final: python-prev: {

View File

@ -1,8 +1,7 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
with lib;
let let
inherit (lib) mkRemovedOptionModule mkOption mkPackageOption types mkIf optionalString;
cfg = config.programs.gnupg; cfg = config.programs.gnupg;
@ -26,8 +25,10 @@ let
"curses"; "curses";
in in
{ {
imports = [
(mkRemovedOptionModule [ "programs" "gnupg" "agent" "pinentryFlavor" ] "Use programs.gnupg.agent.pinentryPackage instead")
];
options.programs.gnupg = { options.programs.gnupg = {
package = mkPackageOption pkgs "gnupg" { }; package = mkPackageOption pkgs "gnupg" { };
@ -66,17 +67,17 @@ in
''; '';
}; };
agent.pinentryFlavor = mkOption { agent.pinentryPackage = mkOption {
type = types.nullOr (types.enum pkgs.pinentry.flavors); type = types.nullOr types.package;
example = "gnome3"; example = lib.literalMD "pkgs.pinentry-gnome3";
default = defaultPinentryFlavor; default = pkgs.pinentry-curses;
defaultText = literalMD ''matching the configured desktop environment''; defaultText = lib.literalMD "matching the configured desktop environment or `pkgs.pinentry-curses`";
description = lib.mdDoc '' description = lib.mdDoc ''
Which pinentry interface to use. If not null, the path to the Which pinentry package to use. The path to the mainProgram as defined in
pinentry binary will be set in /etc/gnupg/gpg-agent.conf. the package's meta attriutes will be set in /etc/gnupg/gpg-agent.conf.
If not set at all, it'll pick an appropriate flavor depending on the If not set by the user, it'll pick an appropriate flavor depending on the
system configuration (qt flavor for lxqt and plasma5, gtk2 for xfce system configuration (qt flavor for lxqt and plasma5, gtk2 for xfce,
4.12, gnome3 on all other systems with X enabled, ncurses otherwise). gnome3 on all other systems with X enabled, curses otherwise).
''; '';
}; };
@ -102,9 +103,8 @@ in
}; };
config = mkIf cfg.agent.enable { config = mkIf cfg.agent.enable {
programs.gnupg.agent.settings = { programs.gnupg.agent.settings = mkIf (cfg.agent.pinentryPackage != null) {
pinentry-program = lib.mkIf (cfg.agent.pinentryFlavor != null) pinentry-program = lib.getExe cfg.agent.pinentryPackage;
"${pkgs.pinentry.${cfg.agent.pinentryFlavor}}/bin/pinentry";
}; };
environment.etc."gnupg/gpg-agent.conf".source = environment.etc."gnupg/gpg-agent.conf".source =
@ -207,9 +207,9 @@ in
wantedBy = [ "sockets.target" ]; wantedBy = [ "sockets.target" ];
}; };
services.dbus.packages = mkIf (cfg.agent.pinentryFlavor == "gnome3") [ pkgs.gcr ]; services.dbus.packages = mkIf (lib.elem "gnome3" (cfg.agent.pinentryPackage.flavors or [])) [ pkgs.gcr ];
environment.systemPackages = with pkgs; [ cfg.package ]; environment.systemPackages = [ cfg.package ];
environment.interactiveShellInit = '' environment.interactiveShellInit = ''
# Bind gpg-agent to this TTY if gpg commands are used. # Bind gpg-agent to this TTY if gpg commands are used.
@ -230,12 +230,10 @@ in
''; '';
assertions = [ assertions = [
{ assertion = cfg.agent.enableSSHSupport -> !config.programs.ssh.startAgent; {
assertion = cfg.agent.enableSSHSupport -> !config.programs.ssh.startAgent;
message = "You can't use ssh-agent and GnuPG agent with SSH support enabled at the same time!"; message = "You can't use ssh-agent and GnuPG agent with SSH support enabled at the same time!";
} }
]; ];
}; };
# uses attributes of the linked package
meta.buildDocsInSandbox = false;
} }

View File

@ -152,6 +152,7 @@ in {
''; '';
} }
]; ];
environment = { environment = {
systemPackages = optional (cfg.package != null) cfg.package ++ cfg.extraPackages; systemPackages = optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
# Needed for the default wallpaper: # Needed for the default wallpaper:
@ -166,8 +167,12 @@ in {
"sway/config".source = mkOptionDefault "${cfg.package}/etc/sway/config"; "sway/config".source = mkOptionDefault "${cfg.package}/etc/sway/config";
}; };
}; };
programs.gnupg.agent.pinentryPackage = lib.mkDefault pkgs.pinentry-gnome3;
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913 # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
xdg.portal.config.sway.default = mkDefault [ "wlr" "gtk" ]; xdg.portal.config.sway.default = mkDefault [ "wlr" "gtk" ];
# To make a Sway session available if a display manager like SDDM is enabled: # To make a Sway session available if a display manager like SDDM is enabled:
services.xserver.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ]; } services.xserver.displayManager.sessionPackages = optionals (cfg.package != null) [ cfg.package ]; }
(import ./wayland-session.nix { inherit lib pkgs; }) (import ./wayland-session.nix { inherit lib pkgs; })

View File

@ -14,11 +14,11 @@ let
customEtc = { customEtc = {
"fwupd/fwupd.conf" = { "fwupd/fwupd.conf" = {
source = format.generate "fwupd.conf" { source = format.generate "fwupd.conf" ({
fwupd = cfg.daemonSettings; fwupd = cfg.daemonSettings;
} // lib.optionalAttrs (lib.length (lib.attrNames cfg.uefiCapsuleSettings) != 0) { } // lib.optionalAttrs (lib.length (lib.attrNames cfg.uefiCapsuleSettings) != 0) {
uefi_capsule = cfg.uefiCapsuleSettings; uefi_capsule = cfg.uefiCapsuleSettings;
}; });
# fwupd tries to chmod the file if it doesn't have the right permissions # fwupd tries to chmod the file if it doesn't have the right permissions
mode = "0640"; mode = "0640";
}; };

View File

@ -37,7 +37,7 @@ in
type = lib.types.str; type = lib.types.str;
default = "127.0.0.1:8009"; default = "127.0.0.1:8009";
example = "[::]:8008"; example = "[::]:8008";
description = lib.mdDoc "The interface and port to listen on."; description = lib.mdDoc "The interface and port or path (for unix socket) to listen on.";
}; };
SYNCV3_LOG_LEVEL = lib.mkOption { SYNCV3_LOG_LEVEL = lib.mkOption {
@ -98,6 +98,7 @@ in
ExecStart = lib.getExe cfg.package; ExecStart = lib.getExe cfg.package;
StateDirectory = "matrix-sliding-sync"; StateDirectory = "matrix-sliding-sync";
WorkingDirectory = "%S/matrix-sliding-sync"; WorkingDirectory = "%S/matrix-sliding-sync";
RuntimeDirectory = "matrix-sliding-sync";
Restart = "on-failure"; Restart = "on-failure";
RestartSec = "1s"; RestartSec = "1s";
}; };

View File

@ -6,9 +6,6 @@ with lib;
let let
cfg = config.services.yubikey-agent; cfg = config.services.yubikey-agent;
# reuse the pinentryFlavor option from the gnupg module
pinentryFlavor = config.programs.gnupg.agent.pinentryFlavor;
in in
{ {
###### interface ###### interface
@ -41,13 +38,8 @@ in
# This overrides the systemd user unit shipped with the # This overrides the systemd user unit shipped with the
# yubikey-agent package # yubikey-agent package
systemd.user.services.yubikey-agent = mkIf (pinentryFlavor != null) { systemd.user.services.yubikey-agent = mkIf (pinentryFlavor != null) {
path = [ pkgs.pinentry.${pinentryFlavor} ]; path = [ config.programs.gnupg.agent.pinentryPackage ];
wantedBy = [ wantedBy = [ "default.target" ];
(if pinentryFlavor == "tty" || pinentryFlavor == "curses" then
"default.target"
else
"graphical-session.target")
];
}; };
# Yubikey-agent expects pcsd to be running in order to function. # Yubikey-agent expects pcsd to be running in order to function.

View File

@ -66,6 +66,7 @@ in
services.upower.enable = mkDefault config.powerManagement.enable; services.upower.enable = mkDefault config.powerManagement.enable;
networking.networkmanager.enable = mkDefault true; networking.networkmanager.enable = mkDefault true;
programs.dconf.enable = mkDefault true; programs.dconf.enable = mkDefault true;
programs.gnupg.agent.pinentryPackage = pkgs.pinentry-qt;
fonts.packages = with pkgs; [ noto-fonts ]; fonts.packages = with pkgs; [ noto-fonts ];
xdg.mime.enable = true; xdg.mime.enable = true;

View File

@ -62,6 +62,8 @@ in
# Link some extra directories in /run/current-system/software/share # Link some extra directories in /run/current-system/software/share
environment.pathsToLink = [ "/share" ]; environment.pathsToLink = [ "/share" ];
programs.gnupg.agent.pinentryPackage = pkgs.pinentry-qt;
# virtual file systems support for PCManFM-QT # virtual file systems support for PCManFM-QT
services.gvfs.enable = true; services.gvfs.enable = true;

View File

@ -336,6 +336,7 @@ in
serif = [ "Noto Serif" ]; serif = [ "Noto Serif" ];
}; };
programs.gnupg.agent.pinentryPackage = pkgs.pinentry-qt;
programs.ssh.askPassword = mkDefault "${pkgs.plasma5Packages.ksshaskpass.out}/bin/ksshaskpass"; programs.ssh.askPassword = mkDefault "${pkgs.plasma5Packages.ksshaskpass.out}/bin/ksshaskpass";
# Enable helpful DBus services. # Enable helpful DBus services.

View File

@ -175,7 +175,7 @@ in {
++ lib.optional config.powerManagement.enable powerdevil ++ lib.optional config.powerManagement.enable powerdevil
++ lib.optional config.services.colord.enable colord-kde ++ lib.optional config.services.colord.enable colord-kde
++ lib.optional config.services.hardware.bolt.enable plasma-thunderbolt ++ lib.optional config.services.hardware.bolt.enable plasma-thunderbolt
++ lib.optionals config.services.samba.enable [kdenetwork-filesharing pkgs.samba] ++ lib.optional config.services.samba.enable kdenetwork-filesharing
++ lib.optional config.services.xserver.wacom.enable wacomtablet ++ lib.optional config.services.xserver.wacom.enable wacomtablet
++ lib.optional config.services.flatpak.enable flatpak-kcm; ++ lib.optional config.services.flatpak.enable flatpak-kcm;
@ -210,6 +210,7 @@ in {
serif = ["Noto Serif"]; serif = ["Noto Serif"];
}; };
programs.gnupg.agent.pinentryPackage = pkgs.pinentry-qt;
programs.ssh.askPassword = mkDefault "${kdePackages.ksshaskpass.out}/bin/ksshaskpass"; programs.ssh.askPassword = mkDefault "${kdePackages.ksshaskpass.out}/bin/ksshaskpass";
# Enable helpful DBus services. # Enable helpful DBus services.

View File

@ -131,6 +131,7 @@ in
xfdesktop xfdesktop
] ++ optional cfg.enableScreensaver xfce4-screensaver) excludePackages; ] ++ optional cfg.enableScreensaver xfce4-screensaver) excludePackages;
programs.gnupg.agent.pinentryPackage = pkgs.pinentry-gtk2;
programs.xfconf.enable = true; programs.xfconf.enable = true;
programs.thunar.enable = true; programs.thunar.enable = true;

View File

@ -749,6 +749,8 @@ in
boot.kernel.sysctl."fs.inotify.max_user_instances" = mkDefault 524288; boot.kernel.sysctl."fs.inotify.max_user_instances" = mkDefault 524288;
boot.kernel.sysctl."fs.inotify.max_user_watches" = mkDefault 524288; boot.kernel.sysctl."fs.inotify.max_user_watches" = mkDefault 524288;
programs.gnupg.agent.pinentryPackage = lib.mkDefault pkgs.pinentry-gnome3;
systemd.defaultUnit = mkIf cfg.autorun "graphical.target"; systemd.defaultUnit = mkIf cfg.autorun "graphical.target";
systemd.services.display-manager = systemd.services.display-manager =

View File

@ -26,7 +26,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
programs.gnupg = { programs.gnupg = {
agent.enable = true; agent.enable = true;
agent.pinentryFlavor = "tty";
dirmngr.enable = true; dirmngr.enable = true;
}; };
}; };

View File

@ -9,7 +9,7 @@
# use ./update.sh to help with updating for each quarterly release # use ./update.sh to help with updating for each quarterly release
# #
# then, to test: # then, to test:
# for e in cpp dsl modeling platform sdk java jee committers rcp; do for s in pkgs pkgsCross.aarch64-multiplatform; do echo; echo $s $e; nix build -f default.nix ${s}.eclipses.eclipse-${e} -o eclipse-${s}-${e}; done; done # for e in cpp dsl embedcpp modeling platform sdk java jee committers rcp; do for s in pkgs pkgsCross.aarch64-multiplatform; do echo; echo $s $e; nix build -f default.nix ${s}.eclipses.eclipse-${e} -o eclipse-${s}-${e}; done; done
let let
platform_major = "4"; platform_major = "4";
@ -64,6 +64,21 @@ in rec {
}; };
}; };
### Eclipse IDE for Embedded C/C++ Developers
eclipse-embedcpp = buildEclipse {
name = "eclipse-embedcpp-${platform_major}.${platform_minor}";
description = "Eclipse IDE for Embedded C/C++ Developers";
src =
fetchurl {
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-embedcpp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
hash = {
x86_64 = "sha256-c/dd/3PzTSnrtaa2gNw+crdNu/xA428hYr8YNeBSEyw=";
aarch64 = "sha256-tF6o3NpFNxXALf2UA8tLzFhqYe46cI2swvym8vDSxNI=";
}.${arch};
};
};
### Eclipse Modeling ### Eclipse Modeling
eclipse-modeling = buildEclipse { eclipse-modeling = buildEclipse {

View File

@ -43,8 +43,9 @@ let
rev = "e43f383dae3a35237e42f6acfe1207a8e7e7bdf5"; rev = "e43f383dae3a35237e42f6acfe1207a8e7e7bdf5";
hash = "sha256-NAMa78KhAuoJfp0Cb0Codz84sRfRQ1JhSLNYRI4GBPM="; hash = "sha256-NAMa78KhAuoJfp0Cb0Codz84sRfRQ1JhSLNYRI4GBPM=";
}; };
# possibly a real issue, but that version is not supported anymore # possibly a real issue, but that version is not supported anymore
disabledTests = [ "test_should_highlight_bash_syntax_without_name" ]; doCheck = false;
}); });
}; };
}; };

View File

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "rke"; pname = "rke";
version = "1.5.5"; version = "1.5.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rancher"; owner = "rancher";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-TPgXjM7RyjI8NmfiZHkHF3txfzAwjOg7kGODBj37JEI="; hash = "sha256-yw7GacSvPKXStmYtG4oQQlIca5Svk4pHDliMDVhyPRI=";
}; };
vendorHash = "sha256-0H9K3/BwdSExADFHaYtn2RrHZ6AyEjzlBKYXL/Ow9JA="; vendorHash = "sha256-0H9K3/BwdSExADFHaYtn2RrHZ6AyEjzlBKYXL/Ow9JA=";

View File

@ -89,16 +89,16 @@ checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1"
[[package]] [[package]]
name = "arc-swap" name = "arc-swap"
version = "1.6.0" version = "1.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" checksum = "7b3d0060af21e8d11a926981cc00c6c1541aa91dd64b9f881985c3da1094425f"
[[package]] [[package]]
name = "article_scraper" name = "article_scraper"
version = "2.0.0" version = "2.0.0"
source = "git+https://gitlab.com/news-flash/article_scraper.git#0dcebe8b49b8d867810d0f7ff155e502f637bb96" source = "git+https://gitlab.com/news-flash/article_scraper.git#0dcebe8b49b8d867810d0f7ff155e502f637bb96"
dependencies = [ dependencies = [
"base64", "base64 0.21.7",
"chrono", "chrono",
"encoding_rs", "encoding_rs",
"escaper", "escaper",
@ -139,7 +139,7 @@ version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb" checksum = "258b52a1aa741b9f09783b2d86cf0aeeb617bbf847f6933340a39644227acbdb"
dependencies = [ dependencies = [
"event-listener 5.1.0", "event-listener 5.2.0",
"event-listener-strategy 0.5.0", "event-listener-strategy 0.5.0",
"futures-core", "futures-core",
"pin-project-lite", "pin-project-lite",
@ -152,7 +152,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3" checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
dependencies = [ dependencies = [
"concurrent-queue", "concurrent-queue",
"event-listener 5.1.0", "event-listener 5.2.0",
"event-listener-strategy 0.5.0", "event-listener-strategy 0.5.0",
"futures-core", "futures-core",
"pin-project-lite", "pin-project-lite",
@ -259,7 +259,7 @@ dependencies = [
"async-signal", "async-signal",
"blocking", "blocking",
"cfg-if", "cfg-if",
"event-listener 5.1.0", "event-listener 5.2.0",
"futures-lite", "futures-lite",
"rustix", "rustix",
"windows-sys 0.52.0", "windows-sys 0.52.0",
@ -273,7 +273,7 @@ checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -308,7 +308,7 @@ checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -345,10 +345,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
[[package]] [[package]]
name = "bigdecimal" name = "base64"
version = "0.4.2" version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c06619be423ea5bb86c95f087d5707942791a08a85530df0db2209a3ecfb8bc9" checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51"
[[package]]
name = "bigdecimal"
version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9324c8014cd04590682b34f1e9448d38f0674d0f7b2dc553331016ef0e4e9ebc"
dependencies = [ dependencies = [
"autocfg", "autocfg",
"libm", "libm",
@ -546,9 +552,9 @@ dependencies = [
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.0.88" version = "1.0.89"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "02f341c093d19155a6e41631ce5971aac4e9a868262212153124c15fa22d1cdc" checksum = "a0ba8f7aaa012f30d5b2861462f6708eccd49c3c39863fe083a308035f63d723"
[[package]] [[package]]
name = "cfg-expr" name = "cfg-expr"
@ -583,7 +589,7 @@ dependencies = [
"js-sys", "js-sys",
"num-traits", "num-traits",
"wasm-bindgen", "wasm-bindgen",
"windows-targets 0.52.3", "windows-targets 0.52.4",
] ]
[[package]] [[package]]
@ -617,7 +623,7 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "013b56b25f5e10cae0fac4564fd64aa54766a860b896fc2d582f97616be6e92c" checksum = "013b56b25f5e10cae0fac4564fd64aa54766a860b896fc2d582f97616be6e92c"
dependencies = [ dependencies = [
"base64", "base64 0.21.7",
"chrono", "chrono",
"log", "log",
"reqwest", "reqwest",
@ -709,9 +715,9 @@ dependencies = [
[[package]] [[package]]
name = "crossbeam-channel" name = "crossbeam-channel"
version = "0.5.11" version = "0.5.12"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b" checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
dependencies = [ dependencies = [
"crossbeam-utils", "crossbeam-utils",
] ]
@ -836,7 +842,7 @@ dependencies = [
"diesel_table_macro_syntax", "diesel_table_macro_syntax",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -856,7 +862,7 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc5557efc453706fed5e4fa85006fe9817c224c3f480a34c7e5959fd700921c5" checksum = "fc5557efc453706fed5e4fa85006fe9817c224c3f480a34c7e5959fd700921c5"
dependencies = [ dependencies = [
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -956,7 +962,7 @@ dependencies = [
"heck", "heck",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -977,7 +983,7 @@ checksum = "5c785274071b1b420972453b306eeca06acf4633829db4223b58a2a8c5953bc4"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -1033,9 +1039,9 @@ dependencies = [
[[package]] [[package]]
name = "event-listener" name = "event-listener"
version = "5.1.0" version = "5.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b7ad6fd685ce13acd6d9541a30f6db6567a7a24c9ffd4ba2955d29e3f22c8b27" checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91"
dependencies = [ dependencies = [
"concurrent-queue", "concurrent-queue",
"parking", "parking",
@ -1058,7 +1064,7 @@ version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291" checksum = "feedafcaa9b749175d5ac357452a9d41ea2911da598fde46ce1fe02c37751291"
dependencies = [ dependencies = [
"event-listener 5.1.0", "event-listener 5.2.0",
"pin-project-lite", "pin-project-lite",
] ]
@ -1308,7 +1314,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -1518,7 +1524,7 @@ dependencies = [
"proc-macro-crate", "proc-macro-crate",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -1740,9 +1746,9 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
[[package]] [[package]]
name = "hermit-abi" name = "hermit-abi"
version = "0.3.8" version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "379dada1584ad501b383485dd706b8afb7a70fcbc7f4da7d780638a5a6124a60" checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
[[package]] [[package]]
name = "hex" name = "hex"
@ -1793,9 +1799,9 @@ dependencies = [
[[package]] [[package]]
name = "http" name = "http"
version = "0.2.11" version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
dependencies = [ dependencies = [
"bytes", "bytes",
"fnv", "fnv",
@ -1947,9 +1953,9 @@ checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
[[package]] [[package]]
name = "indexmap" name = "indexmap"
version = "2.2.3" version = "2.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "233cf39063f058ea2caae4091bf4a3ef70a653afbc026f5c4a4135d114e3c177" checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4"
dependencies = [ dependencies = [
"equivalent", "equivalent",
"hashbrown", "hashbrown",
@ -2046,9 +2052,9 @@ dependencies = [
[[package]] [[package]]
name = "js-sys" name = "js-sys"
version = "0.3.68" version = "0.3.69"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee" checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d"
dependencies = [ dependencies = [
"wasm-bindgen", "wasm-bindgen",
] ]
@ -2187,9 +2193,9 @@ dependencies = [
[[package]] [[package]]
name = "log" name = "log"
version = "0.4.20" version = "0.4.21"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
dependencies = [ dependencies = [
"serde", "serde",
] ]
@ -2250,7 +2256,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c42f95f9d296f2dcb50665f507ed5a68a171453142663ce44d77a4eb217b053" checksum = "6c42f95f9d296f2dcb50665f507ed5a68a171453142663ce44d77a4eb217b053"
dependencies = [ dependencies = [
"aes", "aes",
"base64", "base64 0.21.7",
"block-modes", "block-modes",
"crc-any", "crc-any",
"des", "des",
@ -2382,7 +2388,7 @@ version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "babaa4cdaadf81050c03f93f16375cf305a29b2d6f099d66ff40aae93afcfee2" checksum = "babaa4cdaadf81050c03f93f16375cf305a29b2d6f099d66ff40aae93afcfee2"
dependencies = [ dependencies = [
"base64", "base64 0.21.7",
"log", "log",
"reqwest", "reqwest",
"serde", "serde",
@ -2404,9 +2410,9 @@ dependencies = [
[[package]] [[package]]
name = "mio" name = "mio"
version = "0.8.10" version = "0.8.11"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
dependencies = [ dependencies = [
"libc", "libc",
"wasi", "wasi",
@ -2474,7 +2480,7 @@ source = "git+https://gitlab.com/news_flash/news_flash.git#46cf25eff46655e314ae3
dependencies = [ dependencies = [
"article_scraper", "article_scraper",
"async-trait", "async-trait",
"base64", "base64 0.21.7",
"bitflags 2.4.2", "bitflags 2.4.2",
"bytes", "bytes",
"chrono", "chrono",
@ -2522,7 +2528,7 @@ name = "news_flash_gtk"
version = "0.0.0" version = "0.0.0"
dependencies = [ dependencies = [
"ashpd", "ashpd",
"base64", "base64 0.22.0",
"bytesize", "bytesize",
"chrono", "chrono",
"color-backtrace", "color-backtrace",
@ -2580,7 +2586,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "488e5fb51484deb6bc5bc22f0b0db4902ae7e391d075f8d1a1b9a9674ea326d3" checksum = "488e5fb51484deb6bc5bc22f0b0db4902ae7e391d075f8d1a1b9a9674ea326d3"
dependencies = [ dependencies = [
"base64", "base64 0.21.7",
"log", "log",
"reqwest", "reqwest",
"serde", "serde",
@ -2701,9 +2707,9 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
[[package]] [[package]]
name = "opaque-debug" name = "opaque-debug"
version = "0.3.0" version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
[[package]] [[package]]
name = "openssl" name = "openssl"
@ -2728,7 +2734,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -3193,9 +3199,9 @@ dependencies = [
[[package]] [[package]]
name = "regex-automata" name = "regex-automata"
version = "0.4.5" version = "0.4.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd" checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
dependencies = [ dependencies = [
"aho-corasick", "aho-corasick",
"memchr", "memchr",
@ -3215,7 +3221,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251" checksum = "c6920094eb85afde5e4a138be3f2de8bbdf28000f0029e72c45025a56b042251"
dependencies = [ dependencies = [
"async-compression", "async-compression",
"base64", "base64 0.21.7",
"bytes", "bytes",
"cookie", "cookie",
"cookie_store", "cookie_store",
@ -3287,7 +3293,7 @@ dependencies = [
"quote", "quote",
"rust-embed-utils", "rust-embed-utils",
"shellexpand", "shellexpand",
"syn 2.0.51", "syn 2.0.52",
"walkdir", "walkdir",
] ]
@ -3335,7 +3341,7 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
dependencies = [ dependencies = [
"base64", "base64 0.21.7",
] ]
[[package]] [[package]]
@ -3446,7 +3452,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -3468,7 +3474,7 @@ checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -3696,9 +3702,9 @@ dependencies = [
[[package]] [[package]]
name = "syn" name = "syn"
version = "2.0.51" version = "2.0.52"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ab617d94515e94ae53b8406c628598680aa0c9587474ecbe58188f7b345d66c" checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -3812,7 +3818,7 @@ checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -3918,7 +3924,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -4024,7 +4030,7 @@ dependencies = [
"serde", "serde",
"serde_spanned", "serde_spanned",
"toml_datetime", "toml_datetime",
"winnow 0.6.2", "winnow 0.6.5",
] ]
[[package]] [[package]]
@ -4052,7 +4058,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
] ]
[[package]] [[package]]
@ -4240,9 +4246,9 @@ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
[[package]] [[package]]
name = "walkdir" name = "walkdir"
version = "2.4.0" version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
dependencies = [ dependencies = [
"same-file", "same-file",
"winapi-util", "winapi-util",
@ -4265,9 +4271,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]] [[package]]
name = "wasm-bindgen" name = "wasm-bindgen"
version = "0.2.91" version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f" checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"wasm-bindgen-macro", "wasm-bindgen-macro",
@ -4275,24 +4281,24 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-backend" name = "wasm-bindgen-backend"
version = "0.2.91" version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b" checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da"
dependencies = [ dependencies = [
"bumpalo", "bumpalo",
"log", "log",
"once_cell", "once_cell",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
"wasm-bindgen-shared", "wasm-bindgen-shared",
] ]
[[package]] [[package]]
name = "wasm-bindgen-futures" name = "wasm-bindgen-futures"
version = "0.4.41" version = "0.4.42"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "877b9c3f61ceea0e56331985743b13f3d25c406a7098d45180fb5f09bc19ed97" checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"js-sys", "js-sys",
@ -4302,9 +4308,9 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-macro" name = "wasm-bindgen-macro"
version = "0.2.91" version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed" checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726"
dependencies = [ dependencies = [
"quote", "quote",
"wasm-bindgen-macro-support", "wasm-bindgen-macro-support",
@ -4312,22 +4318,22 @@ dependencies = [
[[package]] [[package]]
name = "wasm-bindgen-macro-support" name = "wasm-bindgen-macro-support"
version = "0.2.91" version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.51", "syn 2.0.52",
"wasm-bindgen-backend", "wasm-bindgen-backend",
"wasm-bindgen-shared", "wasm-bindgen-shared",
] ]
[[package]] [[package]]
name = "wasm-bindgen-shared" name = "wasm-bindgen-shared"
version = "0.2.91" version = "0.2.92"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838" checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96"
[[package]] [[package]]
name = "wasm-streams" name = "wasm-streams"
@ -4344,9 +4350,9 @@ dependencies = [
[[package]] [[package]]
name = "web-sys" name = "web-sys"
version = "0.3.68" version = "0.3.69"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "96565907687f7aceb35bc5fc03770a8a0471d82e479f25832f54a0e3f4b28446" checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef"
dependencies = [ dependencies = [
"js-sys", "js-sys",
"wasm-bindgen", "wasm-bindgen",
@ -4434,7 +4440,7 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
dependencies = [ dependencies = [
"windows-targets 0.52.3", "windows-targets 0.52.4",
] ]
[[package]] [[package]]
@ -4452,7 +4458,7 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
dependencies = [ dependencies = [
"windows-targets 0.52.3", "windows-targets 0.52.4",
] ]
[[package]] [[package]]
@ -4472,17 +4478,17 @@ dependencies = [
[[package]] [[package]]
name = "windows-targets" name = "windows-targets"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d380ba1dc7187569a8a9e91ed34b8ccfc33123bbacb8c0aed2d1ad7f3ef2dc5f" checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b"
dependencies = [ dependencies = [
"windows_aarch64_gnullvm 0.52.3", "windows_aarch64_gnullvm 0.52.4",
"windows_aarch64_msvc 0.52.3", "windows_aarch64_msvc 0.52.4",
"windows_i686_gnu 0.52.3", "windows_i686_gnu 0.52.4",
"windows_i686_msvc 0.52.3", "windows_i686_msvc 0.52.4",
"windows_x86_64_gnu 0.52.3", "windows_x86_64_gnu 0.52.4",
"windows_x86_64_gnullvm 0.52.3", "windows_x86_64_gnullvm 0.52.4",
"windows_x86_64_msvc 0.52.3", "windows_x86_64_msvc 0.52.4",
] ]
[[package]] [[package]]
@ -4493,9 +4499,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
[[package]] [[package]]
name = "windows_aarch64_gnullvm" name = "windows_aarch64_gnullvm"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "68e5dcfb9413f53afd9c8f86e56a7b4d86d9a2fa26090ea2dc9e40fba56c6ec6" checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9"
[[package]] [[package]]
name = "windows_aarch64_msvc" name = "windows_aarch64_msvc"
@ -4505,9 +4511,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
[[package]] [[package]]
name = "windows_aarch64_msvc" name = "windows_aarch64_msvc"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8dab469ebbc45798319e69eebf92308e541ce46760b49b18c6b3fe5e8965b30f" checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675"
[[package]] [[package]]
name = "windows_i686_gnu" name = "windows_i686_gnu"
@ -4517,9 +4523,9 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
[[package]] [[package]]
name = "windows_i686_gnu" name = "windows_i686_gnu"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a4e9b6a7cac734a8b4138a4e1044eac3404d8326b6c0f939276560687a033fb" checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3"
[[package]] [[package]]
name = "windows_i686_msvc" name = "windows_i686_msvc"
@ -4529,9 +4535,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
[[package]] [[package]]
name = "windows_i686_msvc" name = "windows_i686_msvc"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "28b0ec9c422ca95ff34a78755cfa6ad4a51371da2a5ace67500cf7ca5f232c58" checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02"
[[package]] [[package]]
name = "windows_x86_64_gnu" name = "windows_x86_64_gnu"
@ -4541,9 +4547,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
[[package]] [[package]]
name = "windows_x86_64_gnu" name = "windows_x86_64_gnu"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "704131571ba93e89d7cd43482277d6632589b18ecf4468f591fbae0a8b101614" checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03"
[[package]] [[package]]
name = "windows_x86_64_gnullvm" name = "windows_x86_64_gnullvm"
@ -4553,9 +4559,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
[[package]] [[package]]
name = "windows_x86_64_gnullvm" name = "windows_x86_64_gnullvm"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42079295511643151e98d61c38c0acc444e52dd42ab456f7ccfd5152e8ecf21c" checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177"
[[package]] [[package]]
name = "windows_x86_64_msvc" name = "windows_x86_64_msvc"
@ -4565,9 +4571,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
[[package]] [[package]]
name = "windows_x86_64_msvc" name = "windows_x86_64_msvc"
version = "0.52.3" version = "0.52.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0770833d60a970638e989b3fa9fd2bb1aaadcf88963d1659fd7d9990196ed2d6" checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8"
[[package]] [[package]]
name = "winnow" name = "winnow"
@ -4580,9 +4586,9 @@ dependencies = [
[[package]] [[package]]
name = "winnow" name = "winnow"
version = "0.6.2" version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a4191c47f15cc3ec71fcb4913cb83d58def65dd3787610213c649283b5ce178" checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
dependencies = [ dependencies = [
"memchr", "memchr",
] ]
@ -4657,7 +4663,7 @@ dependencies = [
"blocking", "blocking",
"derivative", "derivative",
"enumflags2", "enumflags2",
"event-listener 5.1.0", "event-listener 5.2.0",
"futures-core", "futures-core",
"futures-sink", "futures-sink",
"futures-util", "futures-util",

View File

@ -25,13 +25,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "newsflash"; pname = "newsflash";
version = "3.1.5"; version = "3.1.6";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "news-flash"; owner = "news-flash";
repo = "news_flash_gtk"; repo = "news_flash_gtk";
rev = "refs/tags/v.${finalAttrs.version}"; rev = "refs/tags/v.${finalAttrs.version}";
hash = "sha256-6RkZdRQ/pNq6VkL9E2BaAWbKKGbCpEC+skGHPe3TwH8="; hash = "sha256-zEf61aKtiuTCmhzkfVkTLtIRCb4DVXVtI+9Az9dU9HE=";
}; };
cargoDeps = rustPlatform.importCargoLock { cargoDeps = rustPlatform.importCargoLock {

View File

@ -22,11 +22,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "filezilla"; pname = "filezilla";
version = "3.66.4"; version = "3.66.5";
src = fetchurl { src = fetchurl {
url = "https://download.filezilla-project.org/client/FileZilla_${version}_src.tar.xz"; url = "https://download.filezilla-project.org/client/FileZilla_${version}_src.tar.xz";
hash = "sha256-pA8E4C76rntQ0VFe4cNsSw5EWBhWbEUORAv9bHDpsgM="; hash = "sha256-khIoGbrmNBBwuktuy0V+ZzC0bn3ImUKZCQPymJA9Gzs=";
}; };
configureFlags = [ configureFlags = [

View File

@ -64,14 +64,14 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "telegram-desktop"; pname = "telegram-desktop";
version = "4.14.15"; version = "4.15.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "telegramdesktop"; owner = "telegramdesktop";
repo = "tdesktop"; repo = "tdesktop";
rev = "v${version}"; rev = "v${version}";
fetchSubmodules = true; fetchSubmodules = true;
hash = "sha256-706FAtXS541D7H/Qc86eC1FLUWu1/tZuCq3GgJ0L/Ds="; hash = "sha256-UM2+yPIu/mzPUeH71mjTaeaRvtCKPrYUKXSOht51juY=";
}; };
patches = [ patches = [

View File

@ -54,7 +54,19 @@ diff --git a/Telegram/lib_webview/webview/platform/mac/webview_mac.mm b/Telegram
index 738e574..80ff5f0 100644 index 738e574..80ff5f0 100644
--- a/Telegram/lib_webview/webview/platform/mac/webview_mac.mm --- a/Telegram/lib_webview/webview/platform/mac/webview_mac.mm
+++ b/Telegram/lib_webview/webview/platform/mac/webview_mac.mm +++ b/Telegram/lib_webview/webview/platform/mac/webview_mac.mm
@@ -254,10 +254,12 @@ void *Instance::winId() { @@ -314,9 +314,11 @@ Instance::Instance(Config config) {
_dataRequestHandler = std::move(config.dataRequestHandler);
[configuration setURLSchemeHandler:_handler forURLScheme:stdToNS(kDataUrlScheme)];
_webview = [[WKWebView alloc] initWithFrame:NSZeroRect configuration:configuration];
+#if 0
if (@available(macOS 13.3, *)) {
_webview.inspectable = config.debug ? YES : NO;
}
+#endif
[_manager addScriptMessageHandler:_handler name:@"external"];
[_webview setNavigationDelegate:_handler];
[_webview setUIDelegate:_handler];
@@ -658,10 +660,12 @@ void *Instance::winId() {
} }
void Instance::setOpaqueBg(QColor opaqueBg) { void Instance::setOpaqueBg(QColor opaqueBg) {

View File

@ -1,4 +1,12 @@
{ lib, buildPythonApplication, fetchFromGitHub, pythonOlder, python-telegram }: { lib
, buildPythonApplication
, fetchFromGitHub
, pythonOlder
, fetchpatch
, stdenv
, libnotify
, python-telegram
}:
buildPythonApplication rec { buildPythonApplication rec {
pname = "tg"; pname = "tg";
@ -12,6 +20,20 @@ buildPythonApplication rec {
hash = "sha256-apHd26XnOz5nak+Kz8PJPsonQfTWDyPz7Mi/tWf7zwM="; hash = "sha256-apHd26XnOz5nak+Kz8PJPsonQfTWDyPz7Mi/tWf7zwM=";
}; };
patches = [
# Fix sending messages
# https://github.com/paul-nameless/tg/pull/306
(fetchpatch {
url = "https://github.com/mindtheegab/tg/commit/13e2b266989d2d757a394b0fb8cb7fd6ccc2b70c.patch";
hash = "sha256-Wja6xBOlPuACzhbT8Yl3F8qSh3Kd9G1lnr9VarbPrfM=";
})
];
# Fix notifications on platforms other than darwin by providing notify-send
postPatch = lib.optionalString (!stdenv.isDarwin) ''
sed -i 's|^NOTIFY_CMD = .*|NOTIFY_CMD = "${libnotify}/bin/notify-send {title} {message} -i {icon_path}"|' tg/config.py
'';
propagatedBuildInputs = [ python-telegram ]; propagatedBuildInputs = [ python-telegram ];
doCheck = false; # No tests doCheck = false; # No tests

View File

@ -23,12 +23,12 @@ assert gpgmeSupport -> sslSupport;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "mutt"; pname = "mutt";
version = "2.2.12"; version = "2.2.13";
outputs = [ "out" "doc" "info" ]; outputs = [ "out" "doc" "info" ];
src = fetchurl { src = fetchurl {
url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz"; url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
hash = "sha256-BDrzEvZLjlb3/Qv3f4SiBdTEmAML2VhkV2ZcR7sYzjg="; hash = "sha256-6yP63cHMl9hnaT86Sp8wlJrZN2WtW2/a4nl6QAHFjvs=";
}; };
patches = [ patches = [

View File

@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
expect expect
which which
coreutils coreutils
pinentry.tty pinentry
git git
gnutar gnutar
procps procps

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "obs-move-transition"; pname = "obs-move-transition";
version = "2.10.0"; version = "2.10.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "exeldro"; owner = "exeldro";
repo = "obs-move-transition"; repo = "obs-move-transition";
rev = version; rev = version;
sha256 = "sha256-HMhIGOslAtk5npunRZkOcFQZDSIB7c8qcFW3l9kgkzo="; sha256 = "sha256-gQAeQ3PdnCtnLUgt6utWKfFBfQlJj5/mjAxtlmaGQFw=";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View File

@ -8,13 +8,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "obs-shaderfilter"; pname = "obs-shaderfilter";
version = "2.3.0"; version = "2.3.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "exeldro"; owner = "exeldro";
repo = "obs-shaderfilter"; repo = "obs-shaderfilter";
rev = version; rev = version;
sha256 = "sha256-3xMCMsjnEF5aNKBNMhSMAgKuaDnNP+3+uN1u76+Te+8="; sha256 = "sha256-J7tCEIB9zQ0zZFl1eSuEARd+KqpNClHfYx3wcLawFeM=";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View File

@ -5,14 +5,14 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "audiness"; pname = "audiness";
version = "0.3.0"; version = "0.3.1";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "audiusGmbH"; owner = "audiusGmbH";
repo = "audiness"; repo = "audiness";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-PkzYsfEhwrMoB+a2eJMmt/PRCbjASQRm38reA8PP4aI="; hash = "sha256-r+xWwXRKuTp5ifUUlF1K6BIVWh67hNLMBKBB7wnLLAM=";
}; };
nativeBuildInputs = with python3.pkgs; [ nativeBuildInputs = with python3.pkgs; [

View File

@ -13,13 +13,13 @@
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "flatter"; pname = "flatter";
version = "0-unstable-2023-08-10"; version = "0-unstable-2024-03-04";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "keeganryan"; owner = "keeganryan";
repo = "flatter"; repo = "flatter";
rev = "500e31df6b7308e8101b2a4a9cc816bf8f483417"; rev = "c2ed0ee94b6d281df7bcbce31ca275197ef9a562";
hash = "sha256-STYx7cXvkcF+KqrG32pN16HWfEScc0zxkmOmfv43zIw="; hash = "sha256-1Pjn0lANXaMOqlwwdOx6X/7jtAvfa2ZWa0nDfS3T5XU=";
}; };
strictDeps = true; strictDeps = true;

View File

@ -1,14 +1,10 @@
{ lib { lib
, fmt
, stdenv
, fetchFromGitHub
, cmake , cmake
, doxygen
, ninja
, gitpython
, boost
, coin3d , coin3d
, doxygen
, eigen , eigen
, fetchFromGitHub
, fmt
, freecad # for passthru.tests , freecad # for passthru.tests
, gfortran , gfortran
, gts , gts
@ -17,38 +13,48 @@
, libXmu , libXmu
, libf2c , libf2c
, libredwg , libredwg
, libsForQt5
, libspnav , libspnav
, matplotlib
, medfile , medfile
, mpi , mpi
, ninja
, ode , ode
, opencascade-occt , opencascade-occt
, pivy
, pkg-config , pkg-config
, ply , python3Packages
, pycollada
, pyside2
, pyside2-tools
, python
, pyyaml
, qtbase
, qttools
, qtwebengine
, qtx11extras
, qtxmlpatterns
, runCommand # for passthru.tests , runCommand # for passthru.tests
, scipy
, shiboken2
, soqt
, spaceNavSupport ? stdenv.isLinux , spaceNavSupport ? stdenv.isLinux
, stdenv
, swig , swig
, vtk , vtk
, wrapQtAppsHook
, wrapGAppsHook , wrapGAppsHook
, xercesc , xercesc
, zlib , zlib
}: }:
let
boost = python3Packages.boost;
inherit (libsForQt5)
qtbase
qttools
qtwebengine
qtx11extras
qtxmlpatterns
soqt
wrapQtAppsHook;
inherit (python3Packages)
gitpython
matplotlib
pivy
ply
pycollada
pyside2
pyside2-tools
python
pyyaml
scipy
shiboken2;
in
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "freecad"; pname = "freecad";
version = "0.21.2"; version = "0.21.2";

View File

@ -1,10 +1,9 @@
{ lib { lib
, stdenv
, fetchzip
, cimg , cimg
, cmake , cmake
, coreutils , coreutils
, curl , curl
, fetchzip
, fftw , fftw
, gimp , gimp
, gimpPlugins , gimpPlugins
@ -14,14 +13,13 @@
, graphicsmagick , graphicsmagick
, libjpeg , libjpeg
, libpng , libpng
, libsForQt5
, libtiff , libtiff
, ninja , ninja
, nix-update , nix-update
, openexr , openexr
, pkg-config , pkg-config
, qtbase , stdenv
, qttools
, wrapQtAppsHook
, writeShellScript , writeShellScript
, zlib , zlib
, variant ? "standalone" , variant ? "standalone"
@ -38,6 +36,7 @@ let
}; };
standalone = { standalone = {
extraDeps = []; # Just to keep uniformity and avoid test-for-null
description = "Versatile front-end to the image processing framework G'MIC"; description = "Versatile front-end to the image processing framework G'MIC";
}; };
}; };
@ -49,7 +48,7 @@ assert lib.assertMsg
"gmic-qt variant \"${variant}\" is not supported. Please use one of ${lib.concatStringsSep ", " (builtins.attrNames variants)}."; "gmic-qt variant \"${variant}\" is not supported. Please use one of ${lib.concatStringsSep ", " (builtins.attrNames variants)}.";
assert lib.assertMsg assert lib.assertMsg
(builtins.all (d: d != null) variants.${variant}.extraDeps or []) (builtins.all (d: d != null) variants.${variant}.extraDeps)
"gmic-qt variant \"${variant}\" is missing one of its dependencies."; "gmic-qt variant \"${variant}\" is missing one of its dependencies.";
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
@ -61,30 +60,29 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-/Hh5yzH//i01kyeoqETokvsKUOcY2iZsiYJBEmgw1rU="; hash = "sha256-/Hh5yzH//i01kyeoqETokvsKUOcY2iZsiYJBEmgw1rU=";
}; };
sourceRoot = "${finalAttrs.src.name}/gmic-qt";
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
pkg-config libsForQt5.wrapQtAppsHook
ninja ninja
wrapQtAppsHook pkg-config
]; ];
buildInputs = [ buildInputs = [
curl
fftw
gmic gmic
graphicsmagick
libjpeg
libpng
libtiff
openexr
zlib
] ++ (with libsForQt5; [
qtbase qtbase
qttools qttools
fftw ]) ++ variants.${variant}.extraDeps;
zlib
libjpeg
libtiff
libpng
openexr
graphicsmagick
curl
] ++ variants.${variant}.extraDeps or [];
preConfigure = ''
cd gmic-qt
'';
postPatch = '' postPatch = ''
patchShebangs \ patchShebangs \
@ -93,9 +91,9 @@ stdenv.mkDerivation (finalAttrs: {
''; '';
cmakeFlags = [ cmakeFlags = [
(lib.cmakeFeature "GMIC_QT_HOST" (if variant == "standalone" then "none" else variant))
(lib.cmakeBool "ENABLE_SYSTEM_GMIC" true)
(lib.cmakeBool "ENABLE_DYNAMIC_LINKING" true) (lib.cmakeBool "ENABLE_DYNAMIC_LINKING" true)
(lib.cmakeBool "ENABLE_SYSTEM_GMIC" true)
(lib.cmakeFeature "GMIC_QT_HOST" (if variant == "standalone" then "none" else variant))
]; ];
postFixup = lib.optionalString (variant == "gimp") '' postFixup = lib.optionalString (variant == "gimp") ''
@ -105,8 +103,8 @@ stdenv.mkDerivation (finalAttrs: {
passthru = { passthru = {
tests = { tests = {
# They need to be update in lockstep.
gimp-plugin = gimpPlugins.gmic; gimp-plugin = gimpPlugins.gmic;
# Needs to update them all in lockstep.
inherit cimg gmic; inherit cimg gmic;
}; };
@ -134,10 +132,7 @@ stdenv.mkDerivation (finalAttrs: {
inherit (variants.${variant}) description; inherit (variants.${variant}) description;
license = lib.licenses.gpl3Plus; license = lib.licenses.gpl3Plus;
mainProgram = "gmic_qt"; mainProgram = "gmic_qt";
maintainers = [ maintainers = with lib.maintainers; [ AndersonTorres lilyinstarlight ];
lib.maintainers.AndersonTorres
lib.maintainers.lilyinstarlight
];
platforms = lib.platforms.unix; platforms = lib.platforms.unix;
}; };
}) })

View File

@ -4,7 +4,7 @@
, makeBinaryWrapper , makeBinaryWrapper
, libfido2 , libfido2
, dbus , dbus
, pinentry , pinentry-gnome3
, nix-update-script , nix-update-script
}: }:
@ -29,7 +29,7 @@ buildGoModule rec {
postInstall = '' postInstall = ''
wrapProgram $out/bin/goldwarden \ wrapProgram $out/bin/goldwarden \
--suffix PATH : ${lib.makeBinPath [dbus pinentry]} --suffix PATH : ${lib.makeBinPath [dbus pinentry-gnome3]}
install -Dm644 $src/resources/com.quexten.goldwarden.policy -t $out/share/polkit-1/actions install -Dm644 $src/resources/com.quexten.goldwarden.policy -t $out/share/polkit-1/actions
''; '';

View File

@ -0,0 +1,114 @@
{ stdenv
, lib
, fetchurl
, dpkg
, autoPatchelfHook
, zlib
, libgcc
, fontconfig
, libX11
, lttng-ust
, icu
, libICE
, libSM
, libXcursor
, openssl
, imagemagick
}:
stdenv.mkDerivation (finalAttrs: {
pname = "lunacy";
version = "9.4.2.5022";
src = fetchurl {
url = "https://lcdn.icons8.com/setup/Lunacy_${finalAttrs.version}.deb";
hash = "sha256-69CO1SPdO+JhAH/G/DihyHDueQOLaaJCf32MjBc77j4=";
};
unpackCmd = ''
mkdir -p root
dpkg-deb -x $src root
'';
buildInputs = [
zlib
libgcc
stdenv.cc.cc
lttng-ust
fontconfig.lib
# Runtime deps
libICE
libSM
libX11
libXcursor
];
nativeBuildInputs = [
dpkg
autoPatchelfHook
];
# adds to the RPATHS of all shared objects (exe and libs)
appendRunpaths = map (pkg: (lib.getLib pkg) + "/lib") [
icu
openssl
stdenv.cc.libc
stdenv.cc.cc
] ++ [
# technically, this should be in runtimeDependencies but will not work as
# "lib" is appended to all elements in the array
"${placeholder "out"}/lib/lunacy"
];
# will add to the RPATH of executable only
runtimeDependencies = [
libICE
libSM
libX11
libXcursor
];
dontBuild = true;
dontStrip = true;
installPhase = ''
runHook preInstall
mkdir -p "$out/lib";
cp -R "opt/icons8/lunacy" "$out/lib"
cp -R "usr/share" "$out/share"
# Prepare the desktop icon, the upstream icon is 200x200 but the hicolor theme does not
# support this resolution. Nearest sizes are 192x192 and 256x256.
${imagemagick}/bin/convert "opt/icons8/lunacy/Assets/LunacyLogo.png" -resize 192x192 lunacy.png
install -D lunacy.png "$out/share/icons/hicolor/192x192/apps/${finalAttrs.pname}.png"
runHook postInstall
'';
postInstall = ''
substituteInPlace $out/share/applications/lunacy.desktop \
--replace "Exec=/opt/icons8/lunacy/Lunacy" "Exec=${finalAttrs.pname}" \
--replace "Icon=/opt/icons8/lunacy/Assets/LunacyLogo.png" "Icon=${finalAttrs.pname}"
'';
postFixup = ''
mkdir $out/bin
# Fixes runtime error regarding missing libSkiaSharp.so (which is in the same directory as the binary).
ln -s "$out/lib/lunacy/Lunacy" "$out/bin/${finalAttrs.pname}"
'';
meta = with lib; {
description = "Free design software that keeps your flow with AI tools and built-in graphics";
homepage = "https://icons8.com/lunacy";
changelog = "https://lunacy.docs.icons8.com/release-notes/";
license = licenses.unfree;
maintainers = [ maintainers.eliandoran ];
platforms = platforms.linux;
sourceProvenance = [ sourceTypes.binaryBytecode ];
mainProgram = "lunacy";
};
})

View File

@ -0,0 +1,78 @@
{ lib
, stdenv
, fetchFromGitLab
, meson
, ninja
, pkg-config
, rustPlatform
, rustc
, cargo
, wrapGAppsHook4
, desktop-file-utils
, libadwaita
, gst_all_1
, darwin
}:
stdenv.mkDerivation rec {
pname = "metronome";
version = "1.3.0";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "World";
repo = "metronome";
rev = version;
hash = "sha256-Sn2Ua/XxPnJjcQvWeOPkphl+BE7/BdOrUIpf+tLt20U=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "metronome-${version}";
hash = "sha256-HYO/IY5yGW8JLBxD/SZz16GFnwvv77kFl/x+QXhV+V0=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
rustPlatform.cargoSetupHook
rustc
cargo
wrapGAppsHook4
desktop-file-utils
];
buildInputs = [
libadwaita
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-bad
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Foundation
];
# Workaround for the gettext-sys issue
# https://github.com/Koka/gettext-rs/issues/114
env.NIX_CFLAGS_COMPILE = lib.optionalString
(
stdenv.cc.isClang &&
lib.versionAtLeast stdenv.cc.version "16"
)
"-Wno-error=incompatible-function-pointer-types";
meta = with lib; {
description = "Keep the tempo";
longDescription = ''
Metronome beats the rhythm for you, you simply
need to tell it the required time signature and
beats per minutes. You can also tap to let the
application guess the required beats per minute.
'';
homepage = "https://gitlab.gnome.org/World/metronome";
license = licenses.gpl3Plus;
mainProgram = "metronome";
maintainers = with maintainers; [ aleksana ];
platforms = platforms.unix;
};
}

File diff suppressed because it is too large Load Diff

View File

@ -20,19 +20,19 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "niri"; pname = "niri";
version = "0.1.2"; version = "0.1.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "YaLTeR"; owner = "YaLTeR";
repo = "niri"; repo = "niri";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-vO6ak5rT6ntBC20vYC36zcEcHv7Cki9y8A+c7ThfsUg="; hash = "sha256-VTtXEfxc3OCdtdYiEdtftOQ7gDJNb679Yw8v1Lu3lhY=";
}; };
cargoLock = { cargoLock = {
lockFile = ./Cargo.lock; lockFile = ./Cargo.lock;
outputHashes = { outputHashes = {
"smithay-0.3.0" = "sha256-ZEWamojE5ZRlhPVv/DK2Mj+QIz7zudw9+AxFD7Onr9Q="; "smithay-0.3.0" = "sha256-sXdixfPLAUIIVK+PhqRuMZ7XKNJIGkWNlH8nBzXlxCU=";
}; };
}; };
@ -66,25 +66,24 @@ rustPlatform.buildRustPackage rec {
passthru.providedSessions = ["niri"]; passthru.providedSessions = ["niri"];
postInstall = '' postPatch = ''
mkdir -p $out/share/{systemd/user,wayland-sessions,xdg-desktop-portal} patchShebangs ./resources/niri-session
substituteInPlace ./resources/niri.service \
cp ./resources/niri-session $out/bin/niri-session --replace-fail '/usr/bin' "$out/bin"
cp ./resources/niri.service $out/share/systemd/user/niri.service
cp ./resources/niri-shutdown.target $out/share/systemd/user/niri-shutdown.target
cp ./resources/niri.desktop $out/share/wayland-sessions/niri.desktop
cp ./resources/niri-portals.conf $out/share/xdg-desktop-portal/niri-portals.conf
''; '';
postFixup = '' postInstall = ''
sed -i "s#/usr#$out#" $out/share/systemd/user/niri.service install -Dm0755 ./resources/niri-session -t $out/bin
install -Dm0644 resources/niri.desktop -t $out/share/wayland-sessions
install -Dm0644 resources/niri-portals.conf -t $out/share/xdg-desktop-portal
install -Dm0644 resources/niri{-shutdown.target,.service} -t $out/share/systemd/user
''; '';
meta = with lib; { meta = with lib; {
description = "A scrollable-tiling Wayland compositor"; description = "A scrollable-tiling Wayland compositor";
homepage = "https://github.com/YaLTeR/niri"; homepage = "https://github.com/YaLTeR/niri";
license = licenses.gpl3Only; license = licenses.gpl3Only;
maintainers = with maintainers; [ iogamaster ]; maintainers = with maintainers; [ iogamaster foo-dogsquared ];
mainProgram = "niri"; mainProgram = "niri";
platforms = platforms.linux; platforms = platforms.linux;
}; };

View File

@ -94,11 +94,12 @@ buildDotnetModule rec {
pushd ${src}/distribution/linux pushd ${src}/distribution/linux
install -D ./Ryujinx.desktop $out/share/applications/Ryujinx.desktop install -D ./Ryujinx.desktop $out/share/applications/Ryujinx.desktop
install -D ./Ryujinx.sh $out/bin/Ryujinx.sh
install -D ./mime/Ryujinx.xml $out/share/mime/packages/Ryujinx.xml install -D ./mime/Ryujinx.xml $out/share/mime/packages/Ryujinx.xml
install -D ../misc/Logo.svg $out/share/icons/hicolor/scalable/apps/Ryujinx.svg install -D ../misc/Logo.svg $out/share/icons/hicolor/scalable/apps/Ryujinx.svg
substituteInPlace $out/share/applications/Ryujinx.desktop \ substituteInPlace $out/share/applications/Ryujinx.desktop \
--replace "Ryujinx %f" "$out/bin/Ryujinx %f" --replace "Ryujinx.sh %f" "$out/bin/Ryujinx.sh %f"
ln -s $out/bin/Ryujinx $out/bin/ryujinx ln -s $out/bin/Ryujinx $out/bin/ryujinx

View File

@ -0,0 +1,66 @@
{ lib
, buildGo122Module
, copyDesktopItems
, fetchFromGitHub
, pkg-config
, wrapGAppsHook4
, gobject-introspection
, gtk4
, gtksourceview5
, libadwaita
, libxml2
, vte-gtk4
}:
buildGo122Module rec {
pname = "seabird";
version = "0.2.2";
src = fetchFromGitHub {
owner = "getseabird";
repo = "seabird";
rev = "v${version}";
hash = "sha256-wrZLWDTgcUS8snCqc5rInqitAkrsStL8zmc8vjl4ApQ=";
};
vendorHash = "sha256-z9l6g5NkAErRQo8oiqwKG9ssm8K2S+eSZBD0w4kO3kc=";
nativeBuildInputs = [
copyDesktopItems
libxml2
pkg-config
wrapGAppsHook4
];
buildInputs = [
gobject-introspection
gtk4
gtksourceview5
libadwaita
vte-gtk4
];
ldflags = [ "-s" "-w" ];
postPatch = ''
substituteInPlace main.go --replace-fail 'version = "dev"' 'version = "${version}"'
'';
preBuild = ''
go generate internal/icon/icon.go
'';
postInstall = ''
install -Dm644 internal/icon/seabird.svg $out/share/pixmaps/dev.skynomads.Seabird.svg
'';
desktopItems = [ "dev.skynomads.Seabird.desktop" ];
meta = with lib; {
description = "Native Kubernetes desktop client";
homepage = "https://getseabird.github.io";
license = licenses.mpl20;
maintainers = with maintainers; [ nicolas-goudry ];
mainProgram = "seabird";
};
}

View File

@ -15,25 +15,25 @@ let
supported = { supported = {
x86_64-linux = { x86_64-linux = {
name = "x86_64"; name = "x86_64";
hash = "sha256-WGEDvB6TJ8Y2Xl1VUB1JWVMK54OevvPoVGris3I27t4="; hash = "sha256-CELUteYzy0oMxDonOot+DR5MgGjSRwLgRCbJRAaS/EY=";
}; };
i686-linux = { i686-linux = {
name = "i386"; name = "i386";
hash = "sha256-BOQ4yExDRGKuUvsPUUswElrps0SpXcDCHxy2tmGbV/I="; hash = "sha256-lw3gqgCjmASkelj5lPDnltRJ1Cb+318QjrbirQ6oRFI=";
}; };
aarch64-linux = { aarch64-linux = {
name = "arm64"; name = "arm64";
hash = "sha256-ZWzaWCUgV4x5Fbz+jphj771kIyLyeoRZKjgf8rmbFxQ="; hash = "sha256-yq/L9k+22OWhwnAROJlsyYd/AH5SHJD231y6xd83N6g=";
}; };
armv7l-linux = { armv7l-linux = {
name = "arm"; name = "arm";
hash = "sha256-Qjb5P1XH/CoiLP9iqWyEX0YHUjDIuSdw5ej1bE61T48="; hash = "sha256-FAnzZzz3tgSxgX5n3CUrCbD5lfub91cDkjdD/lVaf0g=";
}; };
}; };
platform = supported.${stdenv.system} or (throw "unsupported platform ${stdenv.system}"); platform = supported.${stdenv.system} or (throw "unsupported platform ${stdenv.system}");
version = "794a"; version = "794l";
url = "https://www.segger.com/downloads/jlink/JLink_Linux_V${version}_${platform.name}.tgz"; url = "https://www.segger.com/downloads/jlink/JLink_Linux_V${version}_${platform.name}.tgz";

View File

@ -5,12 +5,12 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "unrar"; pname = "unrar";
version = "6.2.12"; version = "7.0.7";
src = fetchzip { src = fetchzip {
url = "https://www.rarlab.com/rar/unrarsrc-${finalAttrs.version}.tar.gz"; url = "https://www.rarlab.com/rar/unrarsrc-${finalAttrs.version}.tar.gz";
stripRoot = false; stripRoot = false;
hash = "sha256-VAL3o9JGmkAcEssa/P/SL9nyxnigb7dX9YZBHrG9f0A="; hash = "sha256-S7BMywydetDh1GINcK3k3fN9ciDoKTCAe/1tkgykoAQ=";
}; };
sourceRoot = finalAttrs.src.name; sourceRoot = finalAttrs.src.name;

View File

@ -0,0 +1,15 @@
{ unrar
, fetchzip
}:
unrar.overrideAttrs (finalAttrs: _: {
version = "6.2.12";
src = fetchzip {
url = "https://www.rarlab.com/rar/unrarsrc-${finalAttrs.version}.tar.gz";
stripRoot = false;
hash = "sha256-VAL3o9JGmkAcEssa/P/SL9nyxnigb7dX9YZBHrG9f0A=";
};
sourceRoot = finalAttrs.src.name;
})

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "uxn"; pname = "uxn";
version = "1.0-unstable-2024-02-15"; version = "1.0-unstable-2024-03-08";
src = fetchFromSourcehut { src = fetchFromSourcehut {
owner = "~rabbits"; owner = "~rabbits";
repo = "uxn"; repo = "uxn";
rev = "c37d2cd75c855d0932a93cd8fdadd1db00b05e48"; rev = "b1549867e4a58e8ed0ac107bdf841bc879fa293f";
hash = "sha256-O8XN0+ixo2xMXtJkEoJAqrKZ1M4s4YoHSxKWGOUyl1k="; hash = "sha256-P2EekvFbRtLDwPXOhu40S9LL4ZOWerJs8z8Of2QM418=";
}; };
outputs = [ "out" "projects" ]; outputs = [ "out" "projects" ];

View File

@ -1,10 +1,10 @@
{ {
"darwin" : { "darwin": {
"hash" : "sha256-tFtoD8URMFfJ3HRkyKStuDStFkoRIV97y9kV4pbDPro=", "hash": "sha256-VHyEE0SziwDAzlv8VLt08tMXb20sqxTSj64hC+FyjUw=",
"version" : "0.2024.02.20.08.01.stable_01" "version": "0.2024.03.05.08.02.stable_01"
}, },
"linux" : { "linux": {
"hash" : "sha256-L8alnqSE4crrDozRfPaAAMkLc+5+8d9XBKd5ddsxmD0=", "hash": "sha256-CI1bzdFles9XNvqmkyNq9zJBf4P6HF8QIo1FsSDydjQ=",
"version" : "0.2024.02.20.08.01.stable_01" "version": "0.2024.03.05.08.02.stable_01"
} }
} }

View File

@ -1,4 +1,4 @@
{ lib, stdenvNoCC, fetchzip }: { lib, stdenvNoCC, fetchzip, texlive, callPackage }:
stdenvNoCC.mkDerivation rec { stdenvNoCC.mkDerivation rec {
pname = "junicode"; pname = "junicode";
@ -9,7 +9,17 @@ stdenvNoCC.mkDerivation rec {
hash = "sha256-oOKg85Yz5/2/pvwjVqeQXE8xE7X+QJvPYwYN+E18oEc="; hash = "sha256-oOKg85Yz5/2/pvwjVqeQXE8xE7X+QJvPYwYN+E18oEc=";
}; };
outputs = [ "out" "doc" ]; outputs = [ "out" "doc" "tex" ];
patches = [ ./tex-font-path.patch ];
postPatch = ''
substituteInPlace TeX/junicode.sty \
--replace '@@@opentype_path@@@' "$out/share/fonts/opentype/" \
--replace '@@@truetype_path@@@' "$out/share/fonts/truetype/"
substituteInPlace TeX/junicodevf.sty \
--replace '@@@truetype_path@@@' "$out/share/fonts/truetype/"
'';
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
@ -20,9 +30,18 @@ stdenvNoCC.mkDerivation rec {
install -Dm 444 -t $doc/share/doc/${pname}-${version} docs/*.pdf install -Dm 444 -t $doc/share/doc/${pname}-${version} docs/*.pdf
install -Dm 444 -t $tex/tex/latex/junicode TeX/junicode.sty
install -Dm 444 -t $tex/tex/latex/junicodevf TeX/junicodevf.{sty,lua}
runHook postInstall runHook postInstall
''; '';
passthru = {
tlDeps = with texlive; [ xkeyval fontspec ];
tests = callPackage ./tests.nix { };
};
meta = { meta = {
homepage = "https://github.com/psb1558/Junicode-font"; homepage = "https://github.com/psb1558/Junicode-font";
description = "A Unicode font for medievalists"; description = "A Unicode font for medievalists";

View File

@ -0,0 +1,46 @@
\documentclass{article}
\usepackage{junicodevf}
\begin{document}
\begin{enumerate}
\item {\jBold Bold}
\item {\jBoldItalic BoldItalic}
\item {\jCond Cond}
\item {\jCondItalic CondItalic}
\item {\jCondLight CondLight}
\item {\jCondLightItalic CondLightItalic}
\item {\jCondMedium CondMedium}
\item {\jCondMediumItalic CondMediumItalic}
\item {\jExp Exp}
\item {\jExpItalic ExpItalic}
\item {\jExpBold ExpBold}
\item {\jExpBoldItalic ExpBoldItalic}
\item {\jExpMedium ExpMedium}
\item {\jExpMediumItalic ExpMediumItalic}
\item {\jExpSmbold ExpSmbold}
\item {\jExpSmboldItalic ExpSmboldItalic}
\item {\jItalic Italic}
\item {\jLight Light}
\item {\jLightItalic LightItalic}
\item {\jMedium Medium}
\item {\jMediumItalic MediumItalic}
\item {\jRegular Regular}
\item {\jSmbold Smbold}
\item {\jSmboldItalic SmboldItalic}
\item {\jSmCond SmCond}
\item {\jSmCondItalic SmCondItalic}
\item {\jSmCondLight SmCondLight}
\item {\jSmCondLightItalic SmCondLightItalic}
\item {\jSmCondMedium SmCondMedium}
\item {\jSmCondMediumItalic SmCondMediumItalic}
\item {\jSmExp SmExp}
\item {\jSmExpItalic SmExpItalic}
\item {\jSmExpBold SmExpBold}
\item {\jSmExpBoldItalic SmExpBoldItalic}
\item {\jSmExpMedium SmExpMedium}
\item {\jSmExpMediumItalic SmExpMediumItalic}
\item {\jSmExpSmbold SmExpSmbold}
\item {\jSmExpSmboldItalic SmExpSmboldItalic}
\end{enumerate}
\end{document}

View File

@ -0,0 +1,46 @@
\documentclass{article}
\usepackage[fonttype=@fonttype@]{junicode}
\begin{document}
\begin{enumerate}
\item {\jBold Bold}
\item {\jBoldItalic BoldItalic}
\item {\jCond Cond}
\item {\jCondItalic CondItalic}
\item {\jCondLight CondLight}
\item {\jCondLightItalic CondLightItalic}
\item {\jCondMedium CondMedium}
\item {\jCondMediumItalic CondMediumItalic}
\item {\jExp Exp}
\item {\jExpItalic ExpItalic}
\item {\jExpBold ExpBold}
\item {\jExpBoldItalic ExpBoldItalic}
\item {\jExpMedium ExpMedium}
\item {\jExpMediumItalic ExpMediumItalic}
\item {\jExpSmBold ExpSmBold}
\item {\jExpSmBoldItalic ExpSmBoldItalic}
\item {\jItalic Italic}
\item {\jLight Light}
\item {\jLightItalic LightItalic}
\item {\jMedium Medium}
\item {\jMediumItalic MediumItalic}
\item {\jRegular Regular}
\item {\jSmBold SmBold}
\item {\jSmBoldItalic SmBoldItalic}
\item {\jSmCond SmCond}
\item {\jSmCondItalic SmCondItalic}
\item {\jSmCondLight SmCondLight}
\item {\jSmCondLightItalic SmCondLightItalic}
\item {\jSmCondMedium SmCondMedium}
\item {\jSmCondMediumItalic SmCondMediumItalic}
\item {\jSmExp SmExp}
\item {\jSmExpItalic SmExpItalic}
\item {\jSmExpBold SmExpBold}
\item {\jSmExpBoldItalic SmExpBoldItalic}
\item {\jSmExpMedium SmExpMedium}
\item {\jSmExpMediumItalic SmExpMediumItalic}
\item {\jSmExpSmBold SmExpSmBold}
\item {\jSmExpSmBoldItalic SmExpSmBoldItalic}
\end{enumerate}
\end{document}

View File

@ -0,0 +1,35 @@
{ lib, runCommand, junicode, texliveBasic }:
let
texliveWithJunicode = texliveBasic.withPackages (p: [ p.xetex junicode ]);
texTest = { package, tex, fonttype, file }:
lib.attrsets.nameValuePair "${package}-${tex}-${fonttype}" (
runCommand "${package}-test-${tex}-${fonttype}.pdf"
{
nativeBuildInputs = [ texliveWithJunicode ];
inherit tex fonttype file;
} ''
substituteAll $file test.tex
HOME=$PWD $tex test.tex
cp test.pdf $out
'');
in
builtins.listToAttrs (
map
texTest
(lib.attrsets.cartesianProductOfSets {
tex = [ "xelatex" "lualatex" ];
fonttype = [ "ttf" "otf" ];
package = [ "junicode" ];
file = [ ./test.tex ];
})
++
[
(texTest {
package = "junicodevf";
fonttype = "ttf";
tex = "lualatex";
file = ./test-vf.tex;
})
]
)

View File

@ -0,0 +1,166 @@
Upstream style file relies on font files being present on the system
globally. This is not quite how Nix usually does thing, so this patch
changes the style file to instead look fonts up in hardcoded
locations, which are later patched up to refer to the package outputs,
thus ensuring the style always uses the fonts packaged with it.
diff --git a/TeX/junicode.sty b/TeX/junicode.sty
index 83bd45d..8fe671c 100644
--- a/TeX/junicode.sty
+++ b/TeX/junicode.sty
@@ -208,7 +208,14 @@
\RequirePackage{fontspec}
\defaultfontfeatures{Ligatures=TeX, Extension=.\junicode@fonttype}
-\defaultfontfeatures{Ligatures=TeX}
+
+\def\junicode@fonttype@otf{otf}
+
+\ifx\junicode@fonttype\junicode@fonttype@otf
+ \def\junicode@fontpath{@@@opentype_path@@@}
+\else
+ \def\junicode@fontpath{@@@truetype_path@@@}
+\fi
\ifxetex
\typeout{\junicode@regstylename}
@@ -219,6 +226,7 @@
ItalicFont = *-\junicode@italstylename,
BoldFont = *-\junicode@boldstylename,
BoldItalicFont = *-\junicode@boldstylename Italic,
+ Path = \junicode@fontpath,
]{Junicode}
\fi
\ifluatex
@@ -230,6 +238,7 @@
ItalicFont = *-\junicode@italstylename,
BoldFont = *-\junicode@boldstylename,
BoldItalicFont = *-\junicode@boldstylename Italic,
+ Path = \junicode@fontpath,
]{Junicode}
\fi
@@ -242,6 +251,7 @@
#3
Numbers = {\junicode@figurealign,\junicode@figurestyle},
SmallCapsFeatures = {Letters=SmallCaps},
+ Path = \junicode@fontpath,
]
}
\fi
@@ -252,6 +262,7 @@
#3
Numbers = {\junicode@figurealign,\junicode@figurestyle},
SmallCapsFeatures = {Letters=SmallCaps},
+ Path = \junicode@fontpath,
]
}
\fi
diff --git a/TeX/junicodevf.lua b/TeX/junicodevf.lua
index 7148668..acebe82 100644
--- a/TeX/junicodevf.lua
+++ b/TeX/junicodevf.lua
@@ -148,7 +148,7 @@ function mkfontcommands()
romfontcmd = "jRegular"
italfontcmd = "jItalic"
end
- tex.print("\\junicodevf@newfont{\\" .. romfontcmd .. "}{JunicodeVF}{\\" .. defcmd .. "}{\\" .. defsizecmd .. "}")
+ tex.print("\\junicodevf@newfont{\\" .. romfontcmd .. "}{JunicodeVF-Roman}{\\" .. defcmd .. "}{\\" .. defsizecmd .. "}")
tex.print("\\junicodevf@newfont{\\" .. italfontcmd .. "}{JunicodeVF-Italic}{\\" .. defcmd .. "}{\\" .. defsizecmd .. "}")
end
end
diff --git a/TeX/junicodevf.sty b/TeX/junicodevf.sty
index c01ccaf..07a99ad 100644
--- a/TeX/junicodevf.sty
+++ b/TeX/junicodevf.sty
@@ -168,11 +168,13 @@ mkwidthcommands(wdindex, adjustment)}}
% DECLARE THE FONTS
-\setmainfont{Junicode VF}[
- ItalicFont = {*-Italic},
- BoldFont = {*},
- BoldItalicFont = {*-Italic},
+\setmainfont{JunicodeVF-Roman}[
+ ItalicFont = {JunicodeVF-Italic},
+ BoldFont = {JunicodeVF-Roman},
+ BoldItalicFont = {JunicodeVF-Italic},
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
Numbers = {\junicodevf@figurealign,\junicodevf@figurestyle},
\MainDef,
UprightFeatures = {\MainRegDef
@@ -188,6 +190,8 @@ mkwidthcommands(wdindex, adjustment)}}
\newcommand*{\junicodevf@newfont}[4]{
\setfontface#1{#2}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
Numbers = {\junicodevf@figurealign,\junicodevf@figurestyle},
SmallCapsFont = {*},
SmallCapsFeatures = {Letters=SmallCaps},
@@ -200,43 +204,59 @@ mkwidthcommands(wdindex, adjustment)}}
% ENLARGED FACES
-\setfontface\EnlargedOne{JunicodeVF}[
+\setfontface\EnlargedOne{JunicodeVF-Roman}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLAOneSizeDef
]
\setfontface\EnlargedOneItalic{JunicodeVF-Italic}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLAOneSizeDef
]
-\setfontface\EnlargedTwo{JunicodeVF}[
+\setfontface\EnlargedTwo{JunicodeVF-Roman}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLATwoSizeDef
]
\setfontface\EnlargedTwoItalic{JunicodeVF-Italic}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLATwoSizeDef
]
-\setfontface\EnlargedThree{JunicodeVF}[
+\setfontface\EnlargedThree{JunicodeVF-Roman}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLAThreeSizeDef
]
\setfontface\EnlargedThreeItalic{JunicodeVF-Italic}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLAThreeSizeDef
]
-\setfontface\EnlargedFour{JunicodeVF}[
+\setfontface\EnlargedFour{JunicodeVF-Roman}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLAFourSizeDef
]
\setfontface\EnlargedFourItalic{JunicodeVF-Italic}[
Renderer = HarfBuzz,
+ Extension = .ttf,
+ Path = @@@truetype_path@@@,
\ENLAFourSizeDef
]

View File

@ -1,24 +1,24 @@
let version = "3.3.0"; in let version = "3.3.1"; in
{ fetchurl }: { { fetchurl }: {
versionUsed = version; versionUsed = version;
"${version}-x86_64-darwin" = fetchurl { "${version}-x86_64-darwin" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-macos-x64-release.zip"; url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-macos-x64-release.zip";
sha256 = "1cwxvn7321444mkpcv1vix5bi2ianiadvrjib6z5irdj8pbwlkih"; sha256 = "1jihiryf8lm4mc5wrnhjwlyazpmhk3n40f8z7r25xnz7glafwvg5";
}; };
"${version}-aarch64-darwin" = fetchurl { "${version}-aarch64-darwin" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-macos-arm64-release.zip"; url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-macos-arm64-release.zip";
sha256 = "1clang815wwy6szwl1rkjzl9d6zard15d1c2p6i7xpvvk3rb6m5j"; sha256 = "1d6404r9vhp8q5r4nf3hlcgyvxlyxv63jzd4zlmdxghvm68kkv01";
}; };
"${version}-aarch64-linux" = fetchurl { "${version}-aarch64-linux" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-arm64-release.zip"; url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-arm64-release.zip";
sha256 = "00mjnzld4zbk37x7g7428by3dwpkc7nhja4p6dlhl1xj2lb4qs0r"; sha256 = "08amw2mw2zfpd7savydxsv8ncy8yk76ak1aixgb1csyh8pn4pagc";
}; };
"${version}-x86_64-linux" = fetchurl { "${version}-x86_64-linux" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-x64-release.zip"; url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-x64-release.zip";
sha256 = "1bdwdjjnfjrwcfg2iy76bh939kkgw25130if7fxl3jay0sj6pgry"; sha256 = "0mnplv2vzzfvg7a7xj8vrc75lvsj9xksbwzd3cc7s0xjxvyic40v";
}; };
"${version}-i686-linux" = fetchurl { "${version}-i686-linux" = fetchurl {
url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-ia32-release.zip"; url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-ia32-release.zip";
sha256 = "0r9ypqd5b0l31bklm9q3g1aw9i1qyfkxr9vdn5wwfkicvqjiffs2"; sha256 = "1ndj3nlw6qd94w3h4kw7jyihm71jlp3y0kc0ybgwh2r22dd2r2yd";
}; };
} }

View File

@ -13,13 +13,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "openfpgaloader"; pname = "openfpgaloader";
version = "0.11.0"; version = "0.12.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "trabucayre"; owner = "trabucayre";
repo = "openFPGALoader"; repo = "openFPGALoader";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-OiyuhDrK4w13lRmgfmMlZ+1gvRZCJxsOF6MzLy3CFpg="; hash = "sha256-fe0g8+q/4r7h++7/Bk7pbOJn1CsAc+2IzXN6lqtY2vY=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "joker"; pname = "joker";
version = "1.3.4"; version = "1.3.5";
src = fetchFromGitHub { src = fetchFromGitHub {
rev = "v${version}"; rev = "v${version}";
owner = "candid82"; owner = "candid82";
repo = "joker"; repo = "joker";
sha256 = "sha256-sueFfR5KVj6HXR+5XWowL0Zjbuu7K+p/+skcTaXlOMc="; sha256 = "sha256-aBZ0KlXWKAF70xFxc+WWXucLPnxyaCxu97IYkPuKcCA=";
}; };
vendorHash = "sha256-rxWYNGFbFUKjy232DOhVlh341GV2VKLngJKM+DEd27o="; vendorHash = "sha256-k17BthjOjZs0WB88AVVIM00HcSZl2S5u8n9eB2NFdrk=";
doCheck = false; doCheck = false;

View File

@ -34,7 +34,16 @@
}: }:
let let
common = { version, hash }: stdenv.mkDerivation { common = { version, hash, imguiVersion, imguiHash }:
let
imgui.src = fetchFromGitHub {
owner = "ocornut";
repo = "imgui";
rev = "v${imguiVersion}";
hash = imguiHash;
};
in
stdenv.mkDerivation {
pname = "ogre"; pname = "ogre";
inherit version; inherit version;
@ -45,6 +54,12 @@ let
inherit hash; inherit hash;
}; };
postPatch = ''
mkdir -p build
cp -R ${imgui.src} build/imgui-${imguiVersion}
chmod -R u+w build/imgui-${imguiVersion}
'';
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
pkg-config pkg-config
@ -80,11 +95,10 @@ let
]; ];
cmakeFlags = [ cmakeFlags = [
"-DOGRE_BUILD_COMPONENT_OVERLAY_IMGUI=FALSE" (lib.cmakeBool "OGRE_BUILD_DEPENDENCIES" false)
"-DOGRE_BUILD_DEPENDENCIES=OFF" (lib.cmakeBool "OGRE_BUILD_SAMPLES" withSamples)
"-DOGRE_BUILD_SAMPLES=${toString withSamples}"
] ++ lib.optionals stdenv.isDarwin [ ] ++ lib.optionals stdenv.isDarwin [
"-DOGRE_BUILD_LIBS_AS_FRAMEWORKS=FALSE" (lib.cmakeBool "OGRE_BUILD_LIBS_AS_FRAMEWORKS" false)
]; ];
meta = { meta = {
@ -100,10 +114,16 @@ in
ogre_14 = common { ogre_14 = common {
version = "14.1.2"; version = "14.1.2";
hash = "sha256-qPoC5VXA9IC1xiFLrvE7cqCZFkuiEM0OMowUXDlmhF4="; hash = "sha256-qPoC5VXA9IC1xiFLrvE7cqCZFkuiEM0OMowUXDlmhF4=";
# https://github.com/OGRECave/ogre/blob/v14.1.2/Components/Overlay/CMakeLists.txt
imguiVersion = "1.89.8";
imguiHash = "sha256-pkEm7+ZBYAYgAbMvXhmJyxm6DfyQWkECTXcTHTgfvuo=";
}; };
ogre_13 = common { ogre_13 = common {
version = "13.6.5"; version = "13.6.5";
hash = "sha256-8VQqePrvf/fleHijVIqWWfwOusGjVR40IIJ13o+HwaE="; hash = "sha256-8VQqePrvf/fleHijVIqWWfwOusGjVR40IIJ13o+HwaE=";
# https://github.com/OGRECave/ogre/blob/v13.6.5/Components/Overlay/CMakeLists.txt
imguiVersion = "1.87";
imguiHash = "sha256-H5rqXZFw+2PfVMsYvAK+K+pxxI8HnUC0GlPhooWgEYM=";
}; };
} }

View File

@ -263,6 +263,7 @@ stdenv.mkDerivation rec {
moveToOutput "mkspecs/modules" "$dev" moveToOutput "mkspecs/modules" "$dev"
fixQtModulePaths "$dev/mkspecs/modules" fixQtModulePaths "$dev/mkspecs/modules"
fixQtBuiltinPaths "$out" '*.pr?' fixQtBuiltinPaths "$out" '*.pr?'
'' + lib.optionalString stdenv.isLinux ''
# FIXME: not sure why this isn't added automatically? # FIXME: not sure why this isn't added automatically?
patchelf --add-rpath "${libmysqlclient}/lib/mariadb" $out/${qtPluginPrefix}/sqldrivers/libqsqlmysql.so patchelf --add-rpath "${libmysqlclient}/lib/mariadb" $out/${qtPluginPrefix}/sqldrivers/libqsqlmysql.so

View File

@ -6,8 +6,6 @@
, graphviz , graphviz
, gtest , gtest
, valgrind , valgrind
# One of "11" or "17"; default in source is CXX 11
, cxxStandard ? "11"
, buildDocs ? true , buildDocs ? true
, buildTests ? !stdenv.hostPlatform.isStatic && !stdenv.isDarwin , buildTests ? !stdenv.hostPlatform.isStatic && !stdenv.isDarwin
, buildExamples ? true , buildExamples ? true
@ -49,8 +47,9 @@ stdenv.mkDerivation (finalAttrs: {
(lib.cmakeBool "RAPIDJSON_BUILD_DOC" buildDocs) (lib.cmakeBool "RAPIDJSON_BUILD_DOC" buildDocs)
(lib.cmakeBool "RAPIDJSON_BUILD_TESTS" buildTests) (lib.cmakeBool "RAPIDJSON_BUILD_TESTS" buildTests)
(lib.cmakeBool "RAPIDJSON_BUILD_EXAMPLES" buildExamples) (lib.cmakeBool "RAPIDJSON_BUILD_EXAMPLES" buildExamples)
(lib.cmakeBool "RAPIDJSON_BUILD_CXX11" (cxxStandard == "11")) # gtest 1.13+ requires C++14 or later.
(lib.cmakeBool "RAPIDJSON_BUILD_CXX17" (cxxStandard == "17")) (lib.cmakeBool "RAPIDJSON_BUILD_CXX11" false)
(lib.cmakeBool "RAPIDJSON_BUILD_CXX17" true)
] ++ lib.optionals buildTests [ ] ++ lib.optionals buildTests [
(lib.cmakeFeature "GTEST_INCLUDE_DIR" "${lib.getDev gtest}") (lib.cmakeFeature "GTEST_INCLUDE_DIR" "${lib.getDev gtest}")
]; ];
@ -77,6 +76,5 @@ stdenv.mkDerivation (finalAttrs: {
license = licenses.mit; license = licenses.mit;
platforms = platforms.unix; platforms = platforms.unix;
maintainers = with maintainers; [ Madouura ]; maintainers = with maintainers; [ Madouura ];
broken = (cxxStandard != "11" && cxxStandard != "17");
}; };
}) })

View File

@ -1,31 +1,36 @@
{ lib { lib
, fetchPypi
, buildPythonPackage , buildPythonPackage
, python-crontab , case
, celery , celery
, cron-descriptor , cron-descriptor
, django-timezone-field , django-timezone-field
, tzdata
, ephem , ephem
, pytest-timeout , fetchPypi
, pytest-django , pytest-django
, case , pytest-timeout
, pytestCheckHook , pytestCheckHook
, python-crontab
, pythonOlder , pythonOlder
, setuptools
, tzdata
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "django-celery-beat"; pname = "django-celery-beat";
version = "2.5.0"; version = "2.6.0";
format = "setuptools"; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.8";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-zQpH9ZWEAvUawMcVvJQq4z17ULTkjLqRvD8nEr5QXfE="; hash = "sha256-91stEpcx8SFL6Dg+GPrmv+rNtV3/shFs6EkiLAEG+a0=";
}; };
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [ propagatedBuildInputs = [
cron-descriptor cron-descriptor
python-crontab python-crontab
@ -54,6 +59,7 @@ buildPythonPackage rec {
meta = with lib; { meta = with lib; {
description = "Celery Periodic Tasks backed by the Django ORM"; description = "Celery Periodic Tasks backed by the Django ORM";
homepage = "https://github.com/celery/django-celery-beat"; homepage = "https://github.com/celery/django-celery-beat";
changelog = "https://github.com/celery/django-celery-beat/releases/tag/v${version}";
license = licenses.bsd3; license = licenses.bsd3;
maintainers = with maintainers; [ onny ]; maintainers = with maintainers; [ onny ];
}; };

View File

@ -8,12 +8,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "grpcio-health-checking"; pname = "grpcio-health-checking";
version = "1.62.0"; version = "1.62.1";
format = "setuptools"; format = "setuptools";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-f8JjBFMP2KwGukvtvcGUpWPFXiGKv/QJy68d5xkUk3s="; hash = "sha256-nlYYCpQbHTKgd9dJHgYR0Eg8OWNYr9U0m/ABUmEuRYM=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -8,12 +8,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "grpcio-reflection"; pname = "grpcio-reflection";
version = "1.62.0"; version = "1.62.1";
format = "setuptools"; format = "setuptools";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-rxcHOZ7yghx5Xss3lVC/Wnb7ZAmxSeuzRjEM/QHaKYo="; hash = "sha256-q9RTABmRhxAxMV7y2Cr/6TCAwEM/o6AHvjS/Qn4oqIo=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -16,12 +16,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "mplhep"; pname = "mplhep";
version = "0.3.35"; version = "0.3.41";
format = "pyproject"; format = "pyproject";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-0l89Vh/vmi8kHeNer2ExGE1ehn1Kw3AbEUm8C55a92w="; hash = "sha256-1L9e2A2u+4+QEWJW2ikuENLD0x5Khjfr7I6p+Vt4nwE=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -1,20 +1,24 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchFromGitHub
, substituteAll , substituteAll
, pythonOlder , pythonOlder
, addOpenGLRunpath , addOpenGLRunpath
, setuptools
, pytestCheckHook
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "pynvml"; pname = "pynvml";
version = "11.5.0"; version = "11.5.0";
format = "setuptools"; pyproject = true;
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchFromGitHub {
inherit pname version; owner = "gpuopenanalytics";
hash = "sha256-0CeyG5WxCIufwngRf59ht8Z/jjOnh+n4P3NfD3GsMtA="; repo = "pynvml";
rev = "refs/tags/${version}";
hash = "sha256-K3ZENjgi+TVDxr55dRK1y8SwzfgVIzcnD4oEI+KHRa4=";
}; };
patches = [ patches = [
@ -24,12 +28,22 @@ buildPythonPackage rec {
}) })
]; ];
doCheck = false; # no tests in PyPi dist nativeBuildInputs = [
setuptools
];
pythonImportsCheck = [ "pynvml" "pynvml.smi" ]; pythonImportsCheck = [ "pynvml" "pynvml.smi" ];
nativeCheckInputs = [
pytestCheckHook
];
# OSError: /run/opengl-driver/lib/libnvidia-ml.so.1: cannot open shared object file: No such file or directory
doCheck = false;
meta = with lib; { meta = with lib; {
description = "Python bindings for the NVIDIA Management Library"; description = "Python bindings for the NVIDIA Management Library";
homepage = "https://www.nvidia.com"; homepage = "https://github.com/gpuopenanalytics/pynvml";
license = licenses.bsd3; license = licenses.bsd3;
maintainers = [ maintainers.bcdarwin ]; maintainers = [ maintainers.bcdarwin ];
}; };

View File

@ -531,7 +531,9 @@ let
packagesWithBuildInputs = { packagesWithBuildInputs = {
# sort -t '=' -k 2 # sort -t '=' -k 2
asciicast = with pkgs; [ xz.dev bzip2.dev zlib.dev icu.dev ]; asciicast = with pkgs; [ xz.dev bzip2.dev zlib.dev icu.dev ];
island = [ pkgs.gsl.dev ];
svKomodo = [ pkgs.which ]; svKomodo = [ pkgs.which ];
ulid = [ pkgs.zlib.dev ];
nat = [ pkgs.which ]; nat = [ pkgs.which ];
nat_templatebrains = [ pkgs.which ]; nat_templatebrains = [ pkgs.which ];
pbdZMQ = [ pkgs.zeromq ] ++ lib.optionals stdenv.isDarwin [ pkgs.darwin.binutils ]; pbdZMQ = [ pkgs.zeromq ] ++ lib.optionals stdenv.isDarwin [ pkgs.darwin.binutils ];
@ -889,6 +891,7 @@ let
"scholar" "scholar"
"stepR" "stepR"
"styler" "styler"
"teal_code"
"TreeTools" "TreeTools"
"TreeSearch" "TreeSearch"
"ACNE" "ACNE"

View File

@ -0,0 +1,30 @@
From 93acbc13cf271faf6025e96991eb3ab65062f90f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
Date: Sat, 9 Mar 2024 09:35:24 +0100
Subject: [PATCH] fix compilation with clang
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Jörg Thalheim <joerg@thalheim.io>
---
librz/analysis/p/analysis_xtensa.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/librz/analysis/p/analysis_xtensa.c b/librz/analysis/p/analysis_xtensa.c
index 4a32d2037c..f7331ae376 100644
--- a/librz/analysis/p/analysis_xtensa.c
+++ b/librz/analysis/p/analysis_xtensa.c
@@ -21,7 +21,8 @@ typedef struct {
static bool xtensa_init(void **user) {
XtensaContext *ctx = RZ_NEW0(XtensaContext);
rz_return_val_if_fail(ctx, false);
- memcpy(ctx->length_table, (int[16]){ 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 8, 8 }, sizeof(ctx->length_table));
+ int temp_length_table[16] = { 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 8, 8 };
+ memcpy(ctx->length_table, temp_length_table, sizeof(ctx->length_table));
ctx->insn_buffer = NULL;
ctx->slot_buffer = NULL;
*user = ctx;
--
2.43.1

View File

@ -1,6 +1,5 @@
{ lib { lib
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, stdenv , stdenv
# for passthru.plugins # for passthru.plugins
, pkgs , pkgs
@ -23,25 +22,16 @@
let cutter = stdenv.mkDerivation rec { let cutter = stdenv.mkDerivation rec {
pname = "cutter"; pname = "cutter";
version = "2.3.2"; version = "2.3.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rizinorg"; owner = "rizinorg";
repo = "cutter"; repo = "cutter";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-88yIqFYIv7o6aC2YSJwWJ46fZJBnOmifv+SirsfS4tw="; hash = "sha256-TSEi1mXVvvaGo4koo3EnN/veXPUHF747g+gifnl4IDQ=";
fetchSubmodules = true; fetchSubmodules = true;
}; };
patches = [
# tracking: https://github.com/rizinorg/cutter/pull/3268
(fetchpatch {
name = "cutter-simplify-python-binding-include-handling.patch";
url = "https://github.com/rizinorg/cutter/compare/7256fbb00e92ab12a24d14a92364db482ed295cb..ca5949d9d7c907185cf3d062d9fa71c34c5960d4.diff";
hash = "sha256-bqV2FTA8lMNpHBDXdenNx+1cLYa7MH47XKo1YatmLV4=";
})
];
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
pkg-config pkg-config

View File

@ -1,13 +1,13 @@
{ lib { lib
, pkgs # for passthru.plugins , pkgs # for passthru.plugins
, stdenv , stdenv
, fetchpatch
, fetchurl , fetchurl
, pkg-config , pkg-config
, libusb-compat-0_1 , libusb-compat-0_1
, readline , readline
, libewf , libewf
, perl , perl
, pcre2
, zlib , zlib
, openssl , openssl
, file , file
@ -22,15 +22,16 @@
, ninja , ninja
, capstone , capstone
, tree-sitter , tree-sitter
, zstd
}: }:
let rizin = stdenv.mkDerivation rec { let rizin = stdenv.mkDerivation rec {
pname = "rizin"; pname = "rizin";
version = "0.6.3"; version = "0.7.2";
src = fetchurl { src = fetchurl {
url = "https://github.com/rizinorg/rizin/releases/download/v${version}/rizin-src-v${version}.tar.xz"; url = "https://github.com/rizinorg/rizin/releases/download/v${version}/rizin-src-v${version}.tar.xz";
hash = "sha256-lfZMarnm2qnp+lY0OY649s206/LoFNouTLlp0x9FCcI="; hash = "sha256-/P8/tFrit14/YEvHoIB24yLm4U3veQmBhjeAZcyzWCo=";
}; };
mesonFlags = [ mesonFlags = [
@ -39,11 +40,13 @@ let rizin = stdenv.mkDerivation rec {
"-Duse_sys_libzip=enabled" "-Duse_sys_libzip=enabled"
"-Duse_sys_zlib=enabled" "-Duse_sys_zlib=enabled"
"-Duse_sys_lz4=enabled" "-Duse_sys_lz4=enabled"
"-Duse_sys_libzstd=enabled"
"-Duse_sys_lzma=enabled" "-Duse_sys_lzma=enabled"
"-Duse_sys_xxhash=enabled" "-Duse_sys_xxhash=enabled"
"-Duse_sys_openssl=enabled" "-Duse_sys_openssl=enabled"
"-Duse_sys_libmspack=enabled" "-Duse_sys_libmspack=enabled"
"-Duse_sys_tree_sitter=enabled" "-Duse_sys_tree_sitter=enabled"
"-Duse_sys_pcre2=enabled"
# this is needed for wrapping (adding plugins) to work # this is needed for wrapping (adding plugins) to work
"-Dportable=true" "-Dportable=true"
]; ];
@ -55,12 +58,8 @@ let rizin = stdenv.mkDerivation rec {
# caching it. This patch replaces the entire logic to only look at # caching it. This patch replaces the entire logic to only look at
# the env var NIX_RZ_PREFIX # the env var NIX_RZ_PREFIX
./librz-wrapper-support.patch ./librz-wrapper-support.patch
# Fix tree-sitter 0.20.9 build failure: https://github.com/rizinorg/rizin/pull/4165
(fetchpatch { ./0001-fix-compilation-with-clang.patch
name = "tree-sitter-0.20.9.patch";
url = "https://github.com/rizinorg/rizin/commit/1bb08712dbc9e062bb439a65dcebeb4221ded699.patch";
hash = "sha256-mE0eQAFhyxX5bwrz+S1IVl6HNV9ITQ+tRRvGLLif5VI=";
})
]; ];
@ -96,6 +95,7 @@ let rizin = stdenv.mkDerivation rec {
readline readline
libusb-compat-0_1 libusb-compat-0_1
libewf libewf
pcre2
perl perl
zlib zlib
lz4 lz4
@ -104,6 +104,7 @@ let rizin = stdenv.mkDerivation rec {
tree-sitter tree-sitter
xxHash xxHash
xz xz
zstd
]; ];
postPatch = '' postPatch = ''

View File

@ -8,28 +8,41 @@
, openssl , openssl
}: }:
stdenv.mkDerivation rec { let
libquickjs = fetchFromGitHub {
owner = "frida";
repo = "quickjs";
rev = "c81f05c9859cea5f83a80057416a0c7affe9b876";
hash = "sha256-nAws0ae9kAwvCFcw/yR7XRMwU8EbHoq7kp7iBFpZEZc=";
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "jsdec"; pname = "jsdec";
version = "0.6.0"; version = "0.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rizinorg"; owner = "rizinorg";
repo = "jsdec"; repo = "jsdec";
rev = "v${version}"; rev = "v${finalAttrs.version}";
hash = "sha256-iVaxxPBIJRhZrmejAOL/Fb4k66mGsZOBs7UikgMj5WA="; hash = "sha256-UuFA0YKH+0n4Ec3CTiSUFlKXMY4k+tooaEFJYrj6Law=";
}; };
nativeBuildInputs = [ meson ninja pkg-config ]; postUnpack = ''
preConfigure = '' cp -r --no-preserve=mode ${libquickjs} $sourceRoot/subprojects/libquickjs
cd p
''; '';
mesonFlags = [ "-Djsc_folder=.." ];
postPatch = ''
cp subprojects/packagefiles/libquickjs/* subprojects/libquickjs
'';
nativeBuildInputs = [ meson ninja pkg-config ];
buildInputs = [ openssl rizin ]; buildInputs = [ openssl rizin ];
meta = with lib; { meta = with lib; {
description = "Simple decompiler for Rizin"; description = "Simple decompiler for Rizin";
homepage = src.meta.homepage; homepage = finalAttrs.src.meta.homepage;
changelog = "${finalAttrs.src.meta.homepage}/releases/tag/${finalAttrs.src.rev}";
license = with licenses; [ asl20 bsd3 mit ]; license = with licenses; [ asl20 bsd3 mit ];
maintainers = with maintainers; [ chayleaf ]; maintainers = with maintainers; [ chayleaf ];
}; };
} })

View File

@ -1,7 +1,6 @@
{ lib { lib
, stdenv , stdenv
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, cmake , cmake
# buildInputs # buildInputs
, rizin , rizin
@ -15,25 +14,18 @@
, qtsvg , qtsvg
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: {
pname = "rz-ghidra"; pname = "rz-ghidra";
version = "0.6.0"; version = "0.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rizinorg"; owner = "rizinorg";
repo = "rz-ghidra"; repo = "rz-ghidra";
rev = "v${version}"; rev = "v${finalAttrs.version}";
hash = "sha256-tQAurouRr6fP1tbIkfd0a9UfeYcwiU1BpjOTcooXkT0="; hash = "sha256-W9VcKrDAh7GNRbE4eyWbtHlsYLmrjBBgVvWNyMUhlDk=";
fetchSubmodules = true; fetchSubmodules = true;
}; };
patches = [
(fetchpatch {
url = "https://github.com/rizinorg/rz-ghidra/pull/327/commits/eba20e2c743ed3dfc5d1be090a5018f7267baa49.patch";
hash = "sha256-aoXFClXZBcOnHl+6lLYrnui7sRb3cRJQhQfNDLxHtcs=";
})
];
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
buildInputs = [ buildInputs = [
openssl openssl
@ -59,9 +51,10 @@ stdenv.mkDerivation rec {
# errors out with undefined symbols from Cutter # errors out with undefined symbols from Cutter
broken = enableCutterPlugin && stdenv.isDarwin; broken = enableCutterPlugin && stdenv.isDarwin;
description = "Deep ghidra decompiler and sleigh disassembler integration for rizin"; description = "Deep ghidra decompiler and sleigh disassembler integration for rizin";
homepage = src.meta.homepage; homepage = finalAttrs.src.meta.homepage;
changelog = "${finalAttrs.src.meta.homepage}/releases/tag/${finalAttrs.src.rev}";
license = licenses.lgpl3; license = licenses.lgpl3;
maintainers = with maintainers; [ chayleaf ]; maintainers = with maintainers; [ chayleaf ];
inherit (rizin.meta) platforms; inherit (rizin.meta) platforms;
}; };
} })

View File

@ -5,15 +5,15 @@
stdenvNoCC.mkDerivation rec { stdenvNoCC.mkDerivation rec {
pname = "rizin-sigdb"; pname = "rizin-sigdb";
version = "unstable-2023-02-13"; version = "unstable-2023-08-23";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rizinorg"; owner = "rizinorg";
# sigdb-source: source files (.pat and etc), around 2.5gb total # sigdb-source: source files (.pat and etc), around 2.5gb total
# sigdb: built and deflated .sig files, around 50mb total # sigdb: built and deflated .sig files, around 50mb total
repo = "sigdb"; repo = "sigdb";
rev = "829baf835e3515923266898fd597f7f75046ebd2"; rev = "4addbed50cd3b50eeef5a41d72533d079ebbfbf8";
hash = "sha256-zvGna2CEsDctc9P7hWTaz7kdtxAtPsXHNWOrRQ9ocdc="; hash = "sha256-Fy92MTuLswEgQ/XEUExqdU1Z4a5MP2Ahzi/gGxd5BtA=";
}; };
buildPhase = '' buildPhase = ''

View File

@ -6,13 +6,13 @@
buildGoModule rec { buildGoModule rec {
pname = "melange"; pname = "melange";
version = "0.6.5"; version = "0.6.9";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "chainguard-dev"; owner = "chainguard-dev";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-Itb1FMdn/k5HBeJ4RGjsH0f5VVL8xeNiGo9tjkeec3Q="; hash = "sha256-txyfoGl0MPMHQFOhdCQPVSLveYBVFIiDxJct1W6xYKM=";
# populate values that require us to use git. By doing this in postFetch we # populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src. # can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true; leaveDotGit = true;
@ -25,7 +25,7 @@ buildGoModule rec {
''; '';
}; };
vendorHash = "sha256-qI7BAd0H5k6AjVZIjm5gd6+TF4YUXufskKinfj8y+So="; vendorHash = "sha256-uMdphe78cEwypVZOyIvFgUJQuVQ3scd6SQc8y5Sqjdo=";
subPackages = [ "." ]; subPackages = [ "." ];

View File

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "reindeer"; pname = "reindeer";
version = "unstable-2024-02-20"; version = "unstable-2024-03-06";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "facebookincubator"; owner = "facebookincubator";
repo = pname; repo = pname;
rev = "40e0e40eac95c859a36b4a0fe8ad8f1363620fb0"; rev = "3ec771e9608a01c90d6aac92aa77145551786c64";
sha256 = "sha256-bxRxFxoBt1nOXKBaYQcDYV2KB4OAnhJCaQ8iWvve8sw="; sha256 = "sha256-cClbSJuEs4yIjx+13GSIevZO2PWEEHVDaMEmf729keA=";
}; };
cargoSha256 = "sha256-sQk8HXPb0tnafOdVQrtpZmn0QaoNNxBj63QW7P6tZkU="; cargoSha256 = "sha256-plkn+snWUaOH6ZxaPUbCvnNOky+eL6oY4ZHwv+qyNiE=";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
buildInputs = buildInputs =

View File

@ -2,14 +2,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "cargo-tally"; pname = "cargo-tally";
version = "1.0.39"; version = "1.0.40";
src = fetchCrate { src = fetchCrate {
inherit pname version; inherit pname version;
hash = "sha256-7YUS+MaUmZ9dopeailASZQdmJiyVLwdXV0agA1upXsE="; hash = "sha256-X+Tbse4svpGCQuspmfMv3iMJRCbX4LVB+rfYrFlOy98=";
}; };
cargoHash = "sha256-eEfuFYl949Ps9cstO61j4GTdMHk2SjpRpWxK4onTgfw="; cargoHash = "sha256-+/6Cwonu/W17ZhAqp902hUeonPZ4DOuC+Z4Ix16pNkY=";
buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [ buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk_11_0.frameworks; [
DiskArbitration DiskArbitration

View File

@ -1,16 +1,16 @@
{ lib { lib
, stdenv , stdenv
, fetchurl , fetchFromGitLab
, makeWrapper , makeWrapper
, pkg-config , pkg-config
, nasm , nasm
, makeDesktopItem , makeDesktopItem
, copyDesktopItems
, alsa-lib , alsa-lib
, flac , flac
, gtk2 , gtk2
, libvorbis , libvorbis
, libvpx , libvpx
, libGLU
, libGL , libGL
, SDL2 , SDL2
, SDL2_mixer , SDL2_mixer
@ -18,29 +18,23 @@
, Cocoa , Cocoa
, GLUT , GLUT
, OpenGL , OpenGL
, graphicsmagick
}: }:
let let
desktopItem = makeDesktopItem {
name = "eduke32";
exec = "@out@/bin/${wrapper}";
comment = "Duke Nukem 3D port";
desktopName = "Enhanced Duke Nukem 3D";
genericName = "Duke Nukem 3D port";
categories = [ "Game" ];
};
wrapper = "eduke32-wrapper"; wrapper = "eduke32-wrapper";
swWrapper = "voidsw-wrapper";
in stdenv.mkDerivation rec { in stdenv.mkDerivation (finalAttrs: {
pname = "eduke32"; pname = "eduke32";
version = "20230926"; version = "0-unstable-2024-02-17";
rev = "10459";
revExtra = "8feaf6c25";
src = fetchurl { src = fetchFromGitLab {
url = "https://dukeworld.com/eduke32/synthesis/${version}-${rev}-${revExtra}/eduke32_src_${version}-${rev}-${revExtra}.tar.xz"; domain = "voidpoint.io";
hash = "sha256-GQOpDQm2FeaOMyYu9L5zhrM6XFvZAHMAwn1tSK7RCB8="; owner = "terminx";
repo = "eduke32";
rev = "8afa42e388e0434b38979fdddc763363717a2727";
hash = "sha256-dyZ4JtDBxsTDe9uQDWxJe7M74X7m+5wpEHm+i+s9hwo=";
}; };
buildInputs = [ buildInputs = [
@ -53,7 +47,6 @@ in stdenv.mkDerivation rec {
alsa-lib alsa-lib
gtk2 gtk2
libGL libGL
libGLU
] ++ lib.optionals stdenv.isDarwin [ ] ++ lib.optionals stdenv.isDarwin [
AGL AGL
Cocoa Cocoa
@ -61,21 +54,24 @@ in stdenv.mkDerivation rec {
OpenGL OpenGL
]; ];
nativeBuildInputs = [ makeWrapper pkg-config ] nativeBuildInputs = [
++ lib.optional (stdenv.hostPlatform.system == "i686-linux") nasm; makeWrapper
pkg-config
copyDesktopItems
graphicsmagick
] ++ lib.optionals (stdenv.hostPlatform.system == "i686-linux") [
nasm
];
postPatch = '' postPatch = ''
substituteInPlace source/imgui/src/imgui_impl_sdl2.cpp \ substituteInPlace source/imgui/src/imgui_impl_sdl2.cpp \
--replace '#include <SDL.h>' '#include <SDL2/SDL.h>' \ --replace-fail '#include <SDL.h>' '#include <SDL2/SDL.h>' \
--replace '#include <SDL_syswm.h>' '#include <SDL2/SDL_syswm.h>' \ --replace-fail '#include <SDL_syswm.h>' '#include <SDL2/SDL_syswm.h>' \
--replace '#include <SDL_vulkan.h>' '#include <SDL2/SDL_vulkan.h>' --replace-fail '#include <SDL_vulkan.h>' '#include <SDL2/SDL_vulkan.h>'
'' + lib.optionalString stdenv.isLinux '' '' + lib.optionalString stdenv.isLinux ''
substituteInPlace source/build/src/glbuild.cpp \
--replace libGLU.so ${libGLU}/lib/libGLU.so
for f in glad.c glad_wgl.c ; do for f in glad.c glad_wgl.c ; do
substituteInPlace source/glad/src/$f \ substituteInPlace source/glad/src/$f \
--replace libGL.so ${libGL}/lib/libGL.so --replace-fail libGL.so ${libGL}/lib/libGL.so
done done
''; '';
@ -86,38 +82,72 @@ in stdenv.mkDerivation rec {
"LTO=0" "LTO=0"
]; ];
buildFlags = [
"duke3d"
"sw"
];
desktopItems = [
(makeDesktopItem {
name = "eduke32";
icon = "eduke32";
exec = "${wrapper}";
comment = "Duke Nukem 3D port";
desktopName = "Enhanced Duke Nukem 3D";
genericName = "Duke Nukem 3D port";
categories = [ "Game" ];
})
(makeDesktopItem {
name = "voidsw";
icon = "voidsw";
exec = "${swWrapper}";
comment = "Shadow Warrior eduke32 source port";
desktopName = "VoidSW";
genericName = "Shadow Warrior source port";
categories = [ "Game" ];
})
];
enableParallelBuilding = true; enableParallelBuilding = true;
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
install -Dm755 -t $out/bin eduke32 mapster32 install -Dm755 -t $out/bin eduke32 mapster32 voidsw wangulator
'' + lib.optionalString stdenv.isLinux '' '' + lib.optionalString stdenv.isLinux ''
makeWrapper $out/bin/eduke32 $out/bin/${wrapper} \ makeWrapper $out/bin/eduke32 $out/bin/${wrapper} \
--set-default EDUKE32_DATA_DIR /var/lib/games/eduke32 \ --set-default EDUKE32_DATA_DIR /var/lib/games/eduke32 \
--add-flags '-g "$EDUKE32_DATA_DIR/DUKE3D.GRP"' --add-flags '-g "$EDUKE32_DATA_DIR/DUKE3D.GRP"'
makeWrapper $out/bin/voidsw $out/bin/${swWrapper} \
cp -rv ${desktopItem}/share $out --set-default EDUKE32_DATA_DIR /var/lib/games/eduke32 \
substituteInPlace $out/share/applications/eduke32.desktop \ --add-flags '-g"$EDUKE32_DATA_DIR/SW.GRP"'
--subst-var out mkdir -p $out/share/icons/hicolor/scalable/apps
gm convert "./source/duke3d/rsrc/game_icon.ico[10]" $out/share/icons/hicolor/scalable/apps/eduke32.png
install -Dm644 ./source/sw/rsrc/game_icon.svg $out/share/icons/hicolor/scalable/apps/voidsw.svg
'' + lib.optionalString stdenv.isDarwin '' '' + lib.optionalString stdenv.isDarwin ''
mkdir -p $out/Applications/EDuke32.app/Contents/MacOS mkdir -p $out/Applications/EDuke32.app/Contents/MacOS
mkdir -p $out/Applications/Mapster32.app/Contents/MacOS mkdir -p $out/Applications/Mapster32.app/Contents/MacOS
mkdir -p $out/Applications/VoidSW.app/Contents/MacOS
mkdir -p $out/Applications/Wangulator.app/Contents/MacOS
cp -r platform/Apple/bundles/EDuke32.app/* $out/Applications/EDuke32.app/ cp -r platform/Apple/bundles/EDuke32.app/* $out/Applications/EDuke32.app/
cp -r platform/Apple/bundles/Mapster32.app/* $out/Applications/Mapster32.app/ cp -r platform/Apple/bundles/Mapster32.app/* $out/Applications/Mapster32.app/
cp -r platform/Apple/bundles/VoidSW.app/* $out/Applications/VoidSW.app/
cp -r platform/Apple/bundles/Wangulator.app/* $out/Applications/Wangulator.app/
ln -sf $out/bin/eduke32 $out/Applications/EDuke32.app/Contents/MacOS/eduke32 ln -sf $out/bin/eduke32 $out/Applications/EDuke32.app/Contents/MacOS/eduke32
ln -sf $out/bin/mapster32 $out/Applications/Mapster32.app/Contents/MacOS/mapster32 ln -sf $out/bin/mapster32 $out/Applications/Mapster32.app/Contents/MacOS/mapster32
ln -sf $out/bin/voidsw $out/Applications/VoidSW.app/Contents/MacOS/voidsw
ln -sf $out/bin/wangulator $out/Applications/Wangulator.app/Contents/MacOS/wangulator
'' + '' '' + ''
runHook postInstall runHook postInstall
''; '';
meta = with lib; { meta = {
description = "Enhanched port of Duke Nukem 3D for various platforms"; description = "Enhanched port of Duke Nukem 3D for various platforms";
homepage = "http://eduke32.com"; homepage = "http://eduke32.com";
license = licenses.gpl2Plus; license = with lib.licenses; [ gpl2Plus ];
maintainers = with maintainers; [ mikroskeem sander ]; maintainers = with lib.maintainers; [ mikroskeem sander ];
platforms = platforms.all; platforms = lib.platforms.all;
}; };
} })

View File

@ -27,5 +27,6 @@ rustPlatform.buildRustPackage rec {
homepage = "https://github.com/MindFlavor/prometheus_wireguard_exporter"; homepage = "https://github.com/MindFlavor/prometheus_wireguard_exporter";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ ma27 globin ]; maintainers = with maintainers; [ ma27 globin ];
mainProgram = "prometheus_wireguard_exporter";
}; };
} }

View File

@ -10,13 +10,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "amazon-ec2-utils"; pname = "amazon-ec2-utils";
version = "2.1.0"; version = "2.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "amazonlinux"; owner = "amazonlinux";
repo = "amazon-ec2-utils"; repo = "amazon-ec2-utils";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-Yr6pVwyvyVGV4xrjL7VFSkRH8d1w8VLPMTVjXfneJUM="; hash = "sha256-plTBh2LAXkYVSxN0IZJQuPr7QxD7+OAqHl/Zl8JPCmg=";
}; };
outputs = [ "out" "man" ]; outputs = [ "out" "man" ];

View File

@ -3,7 +3,7 @@
, fetchFromGitHub , fetchFromGitHub
, autoreconfHook , autoreconfHook
, fuse , fuse
, unrar , unrar_6
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -23,10 +23,10 @@ stdenv.mkDerivation rec {
''; '';
nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ fuse unrar ]; buildInputs = [ fuse unrar_6 ];
configureFlags = [ configureFlags = [
"--with-unrar=${unrar.src}/unrar" "--with-unrar=${unrar_6.src}/unrar"
"--disable-static-unrar" "--disable-static-unrar"
]; ];

View File

@ -5,21 +5,21 @@
buildGoModule rec { buildGoModule rec {
pname = "ntfy-sh"; pname = "ntfy-sh";
version = "2.8.0"; version = "2.9.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "binwiederhier"; owner = "binwiederhier";
repo = "ntfy"; repo = "ntfy";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-YO6nf1tY+tEgPlvq7JDgeG0ywE8+HEpZH7ToFzvYfvY="; hash = "sha256-nCW7D2iQEv9NeIvVn1+REacspchzJ7SJgl0glEWkAoE=";
}; };
vendorHash = "sha256-Gvk/EI5b6AIYBCKYqSFKva0SfiWI/oNCeq7cTyVRpwY="; vendorHash = "sha256-nnAw3BIiPMNa/7WSH8vurt8GUFM7Bf80CmtH4WjfC6Q=";
ui = buildNpmPackage { ui = buildNpmPackage {
inherit src version; inherit src version;
pname = "ntfy-sh-ui"; pname = "ntfy-sh-ui";
npmDepsHash = "sha256-G2yEIiKc/gxcUPS+97B68C/HukabGZAX2XY1gstGBvg="; npmDepsHash = "sha256-+4VL+bY3Nz5LT5ZyW9aJlrl3NsfOGv6CaiwLqpC5ywo=";
prePatch = '' prePatch = ''
cd web/ cd web/

View File

@ -9,14 +9,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "star-history"; pname = "star-history";
version = "1.0.18"; version = "1.0.19";
src = fetchCrate { src = fetchCrate {
inherit pname version; inherit pname version;
sha256 = "sha256-PKQyGDSLFRf5eEUICdtDAkbzfljdj0HN40c7+V21wHI="; sha256 = "sha256-sjVxYo5Sx6fmlLflg3y754jnFbnA5x/X5NINM3omPVY=";
}; };
cargoHash = "sha256-LriRO5XdcTqp+7quV11RwjNQgfzQsc5EV8GNwkuwz8s="; cargoHash = "sha256-aeRAXUdpv94WW1E/bWvJnwHOxYn9bALXvTb5RVjcozQ=";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];

View File

@ -6,13 +6,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "exploitdb"; pname = "exploitdb";
version = "2024-03-07"; version = "2024-03-09";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "exploit-database"; owner = "exploit-database";
repo = pname; repo = pname;
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-f+xg4uR//1ffssH2PAN9ta/osCrY7+s6SI1Kfvfq8cQ="; hash = "sha256-IkCswvoCEqlTckXILYToXpIJpHM7MIcVK1MySAJK63A=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -6,6 +6,7 @@
, wheel , wheel
, nss , nss
, nix-update-script , nix-update-script
, stdenv
}: }:
buildPythonApplication rec { buildPythonApplication rec {
@ -26,7 +27,12 @@ buildPythonApplication rec {
wheel wheel
]; ];
makeWrapperArgs = [ "--prefix" "LD_LIBRARY_PATH" ":" (lib.makeLibraryPath [ nss ]) ]; makeWrapperArgs = [
"--prefix"
(if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH")
":"
(lib.makeLibraryPath [ nss ])
];
passthru.updateScript = nix-update-script { }; passthru.updateScript = nix-update-script { };

View File

@ -1,100 +1,120 @@
{ fetchurl, mkDerivation, fetchpatch, stdenv, lib, pkg-config, autoreconfHook, wrapGAppsHook { stdenv
, libgpg-error, libassuan, qtbase, wrapQtAppsHook , lib
, ncurses, gtk2, gcr , fetchurl
, withLibsecret ? true, libsecret , fetchpatch
, enabledFlavors ? [ "curses" "tty" "gtk2" "emacs" ] , pkg-config
++ lib.optionals stdenv.isLinux [ "gnome3" ] , autoreconfHook
++ lib.optionals (!stdenv.isDarwin) [ "qt" ] , wrapGAppsHook
, libgpg-error
, libassuan
, libsForQt5
, ncurses
, gtk2
, gcr
, withLibsecret ? true
, libsecret
}: }:
assert lib.isList enabledFlavors && enabledFlavors != [];
let let
pinentryMkDerivation =
if (builtins.elem "qt" enabledFlavors)
then mkDerivation
else stdenv.mkDerivation;
enableFeaturePinentry = f:
let
flag = flavorInfo.${f}.flag or null;
in
lib.optionalString (flag != null)
(lib.enableFeature (lib.elem f enabledFlavors) ("pinentry-" + flag));
flavorInfo = { flavorInfo = {
curses = { bin = "curses"; flag = "curses"; buildInputs = [ ncurses ]; }; tty = { flag = "tty"; };
tty = { bin = "tty"; flag = "tty"; }; curses = {
gtk2 = { bin = "gtk-2"; flag = "gtk2"; buildInputs = [ gtk2 ]; }; flag = "curses";
gnome3 = { bin = "gnome3"; flag = "gnome3"; buildInputs = [ gcr ]; nativeBuildInputs = [ wrapGAppsHook ]; }; buildInputs = [ ncurses ];
qt = { bin = "qt"; flag = "qt"; buildInputs = [ qtbase ]; nativeBuildInputs = [ wrapQtAppsHook ]; }; };
emacs = { bin = "emacs"; flag = "emacs"; buildInputs = []; }; gtk2 = {
flag = "gtk2";
buildInputs = [ gtk2 ];
};
gnome3 = {
flag = "gnome3";
buildInputs = [ gcr ];
nativeBuildInputs = [ wrapGAppsHook ];
};
qt = {
flag = "qt";
buildInputs = [ libsForQt5.qtbase ];
nativeBuildInputs = [ libsForQt5.wrapQtAppsHook ];
};
emacs = { flag = "emacs"; };
}; };
buildPinentry = pinentryExtraPname: buildFlavors:
let
enableFeaturePinentry = f:
lib.enableFeature (lib.elem f buildFlavors) ("pinentry-" + flavorInfo.${f}.flag);
pinentryMkDerivation =
if (lib.elem "qt" buildFlavors)
then libsForQt5.mkDerivation
else stdenv.mkDerivation;
in
pinentryMkDerivation rec {
pname = "pinentry-${pinentryExtraPname}";
version = "1.2.1";
src = fetchurl {
url = "mirror://gnupg/pinentry/pinentry-${version}.tar.bz2";
hash = "sha256-RXoYXlqFI4+5RalV3GNSq5YtyLSHILYvyfpIx1QKQGc=";
};
nativeBuildInputs = [ pkg-config autoreconfHook ]
++ lib.concatMap (f: flavorInfo.${f}.nativeBuildInputs or [ ]) buildFlavors;
buildInputs = [ libgpg-error libassuan ]
++ lib.optional withLibsecret libsecret
++ lib.concatMap (f: flavorInfo.${f}.buildInputs or [ ]) buildFlavors;
dontWrapGApps = true;
dontWrapQtApps = true;
patches = [
./autoconf-ar.patch
] ++ lib.optionals (lib.elem "gtk2" buildFlavors) [
(fetchpatch {
url = "https://salsa.debian.org/debian/pinentry/raw/debian/1.1.0-1/debian/patches/0007-gtk2-When-X11-input-grabbing-fails-try-again-over-0..patch";
sha256 = "15r1axby3fdlzz9wg5zx7miv7gqx2jy4immaw4xmmw5skiifnhfd";
})
];
configureFlags = [
"--with-libgpg-error-prefix=${libgpg-error.dev}"
"--with-libassuan-prefix=${libassuan.dev}"
(lib.enableFeature withLibsecret "libsecret")
] ++ (map enableFeaturePinentry (lib.attrNames flavorInfo));
postInstall =
lib.optionalString (lib.elem "gnome3" buildFlavors) ''
wrapGApp $out/bin/pinentry-gnome3
'' + lib.optionalString (lib.elem "qt" buildFlavors) ''
wrapQtApp $out/bin/pinentry-qt
'';
passthru = { flavors = buildFlavors; };
meta = with lib; {
homepage = "https://gnupg.org/software/pinentry/index.html";
description = "GnuPGs interface to passphrase input";
license = licenses.gpl2Plus;
platforms =
if elem "gnome3" buildFlavors then platforms.linux else
if elem "qt" buildFlavors then (remove "aarch64-darwin" platforms.all) else
platforms.all;
longDescription = ''
Pinentry provides a console and (optional) GTK and Qt GUIs allowing users
to enter a passphrase when `gpg' or `gpg2' is run and needs it.
'';
maintainers = with maintainers; [ fpletz ];
mainProgram = "pinentry";
};
};
in in
{
pinentryMkDerivation rec { pinentry-curses = buildPinentry "curses" [ "curses" "tty" ];
pname = "pinentry"; pinentry-gtk2 = buildPinentry "gtk2" [ "gtk2" "curses" "tty" ];
version = "1.2.1"; pinentry-gnome3 = buildPinentry "gnome3" [ "gnome3" "curses" "tty" ];
pinentry-qt = buildPinentry "qt" [ "qt" "curses" "tty" ];
src = fetchurl { pinentry-emacs = buildPinentry "emacs" [ "emacs" "curses" "tty" ];
url = "mirror://gnupg/pinentry/${pname}-${version}.tar.bz2"; pinentry-all = buildPinentry "all" [ "curses" "tty" "gtk2" "gnome3" "qt" "emacs" ];
sha256 = "sha256-RXoYXlqFI4+5RalV3GNSq5YtyLSHILYvyfpIx1QKQGc=";
};
nativeBuildInputs = [ pkg-config autoreconfHook ]
++ lib.concatMap(f: flavorInfo.${f}.nativeBuildInputs or []) enabledFlavors;
buildInputs = [ libgpg-error libassuan ]
++ lib.optional withLibsecret libsecret
++ lib.concatMap(f: flavorInfo.${f}.buildInputs or []) enabledFlavors;
dontWrapGApps = true;
dontWrapQtApps = true;
patches = [
./autoconf-ar.patch
] ++ lib.optionals (lib.elem "gtk2" enabledFlavors) [
(fetchpatch {
url = "https://salsa.debian.org/debian/pinentry/raw/debian/1.1.0-1/debian/patches/0007-gtk2-When-X11-input-grabbing-fails-try-again-over-0..patch";
sha256 = "15r1axby3fdlzz9wg5zx7miv7gqx2jy4immaw4xmmw5skiifnhfd";
})
];
configureFlags = [
"--with-libgpg-error-prefix=${libgpg-error.dev}"
"--with-libassuan-prefix=${libassuan.dev}"
(lib.enableFeature withLibsecret "libsecret")
] ++ (map enableFeaturePinentry (lib.attrNames flavorInfo));
postInstall =
lib.concatStrings (lib.flip map enabledFlavors (f:
let
binary = "pinentry-" + flavorInfo.${f}.bin;
in ''
moveToOutput bin/${binary} ${placeholder f}
ln -sf ${placeholder f}/bin/${binary} ${placeholder f}/bin/pinentry
'' + lib.optionalString (f == "gnome3") ''
wrapGApp ${placeholder f}/bin/${binary}
'' + lib.optionalString (f == "qt") ''
wrapQtApp ${placeholder f}/bin/${binary}
'')) + ''
ln -sf ${placeholder (lib.head enabledFlavors)}/bin/pinentry-${flavorInfo.${lib.head enabledFlavors}.bin} $out/bin/pinentry
'';
outputs = [ "out" ] ++ enabledFlavors;
passthru = { flavors = enabledFlavors; };
meta = with lib; {
homepage = "http://gnupg.org/aegypten2/";
description = "GnuPGs interface to passphrase input";
license = licenses.gpl2Plus;
platforms = platforms.all;
longDescription = ''
Pinentry provides a console and (optional) GTK and Qt GUIs allowing users
to enter a passphrase when `gpg' or `gpg2' is run and needs it.
'';
maintainers = with maintainers; [ ttuegel fpletz ];
};
} }

View File

@ -5,14 +5,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "hayagriva"; pname = "hayagriva";
version = "0.5.1"; version = "0.5.2";
src = fetchCrate { src = fetchCrate {
inherit pname version; inherit pname version;
hash = "sha256-nXfoPAUU8pDUj8MdpiYbN9ToJbWk4CsUTGehgGDvykg="; hash = "sha256-hE0Oi+0vDQGDEOYtHiPit1RrrkrlLZs20nEHOm/bp5M=";
}; };
cargoHash = "sha256-xKCnHqQn4mNvZ9LBgDnD4VDlUBgRO1SYLmvqq11GFsc="; cargoHash = "sha256-WZbbjLDHYJTiuM0Lh9YfVvLTvK/jfO8fRbLqZ8XOLGg=";
buildFeatures = [ "cli" ]; buildFeatures = [ "cli" ];

View File

@ -902,12 +902,23 @@ mapAliases ({
timescaledb = postgresqlPackages.timescaledb; timescaledb = postgresqlPackages.timescaledb;
tsearch_extras = postgresqlPackages.tsearch_extras; tsearch_extras = postgresqlPackages.tsearch_extras;
# pinentry was using multiple outputs, this emulates the old interface for i.e. home-manager
# soon: throw "'pinentry' has been removed. Pick an appropriate variant like 'pinentry-curses' or 'pinentry-gnome3'";
pinentry = pinentry-all // {
curses = pinentry-curses;
gtk2 = pinentry-gtk2;
gnome2 = pinentry-gnome3;
qt = pinentry-qt;
emacs = pinentry-emacs;
flavors = [ "curses" "gtk2" "gnome2" "qt" "emacs" ];
}; # added 2024-01-15
pinentry_curses = throw "'pinentry_curses' has been renamed to/replaced by 'pinentry-curses'"; # Converted to throw 2023-09-10 pinentry_curses = throw "'pinentry_curses' has been renamed to/replaced by 'pinentry-curses'"; # Converted to throw 2023-09-10
pinentry_emacs = throw "'pinentry_emacs' has been renamed to/replaced by 'pinentry-emacs'"; # Converted to throw 2023-09-10 pinentry_emacs = throw "'pinentry_emacs' has been renamed to/replaced by 'pinentry-emacs'"; # Converted to throw 2023-09-10
pinentry_gnome = throw "'pinentry_gnome' has been renamed to/replaced by 'pinentry-gnome'"; # Converted to throw 2023-09-10 pinentry_gnome = throw "'pinentry_gnome' has been renamed to/replaced by 'pinentry-gnome'"; # Converted to throw 2023-09-10
pinentry_gtk2 = throw "'pinentry_gtk2' has been renamed to/replaced by 'pinentry-gtk2'"; # Converted to throw 2023-09-10 pinentry_gtk2 = throw "'pinentry_gtk2' has been renamed to/replaced by 'pinentry-gtk2'"; # Converted to throw 2023-09-10
pinentry_qt = throw "'pinentry_qt' has been renamed to/replaced by 'pinentry-qt'"; # Converted to throw 2023-09-10 pinentry_qt = throw "'pinentry_qt' has been renamed to/replaced by 'pinentry-qt'"; # Converted to throw 2023-09-10
pinentry_qt5 = pinentry-qt; # Added 2020-02-11 pinentry_qt5 = pinentry-qt; # Added 2020-02-11
PlistCpp = plistcpp; # Added 2024-01-05 PlistCpp = plistcpp; # Added 2024-01-05
pocket-updater-utility = pupdate; # Added 2024-01-25 pocket-updater-utility = pupdate; # Added 2024-01-25
poetry2nix = throw "poetry2nix is now maintained out-of-tree. Please use https://github.com/nix-community/poetry2nix/"; # Added 2023-10-26 poetry2nix = throw "poetry2nix is now maintained out-of-tree. Please use https://github.com/nix-community/poetry2nix/"; # Added 2023-10-26

View File

@ -5528,8 +5528,6 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) Cocoa; inherit (darwin.apple_sdk.frameworks) Cocoa;
}; };
gmic-qt = libsForQt5.callPackage ../tools/graphics/gmic-qt { };
gpg-tui = callPackage ../tools/security/gpg-tui { gpg-tui = callPackage ../tools/security/gpg-tui {
inherit (darwin.apple_sdk.frameworks) AppKit Foundation; inherit (darwin.apple_sdk.frameworks) AppKit Foundation;
inherit (darwin) libobjc libresolv; inherit (darwin) libobjc libresolv;
@ -11995,13 +11993,13 @@ with pkgs;
piknik = callPackage ../tools/networking/piknik { }; piknik = callPackage ../tools/networking/piknik { };
pinentry = libsForQt5.callPackage ../tools/security/pinentry { }; inherit (callPackages ../tools/security/pinentry { })
pinentry-curses
pinentry-curses = (lib.getOutput "curses" pinentry); pinentry-emacs
pinentry-emacs = (lib.getOutput "emacs" pinentry); pinentry-gtk2
pinentry-gtk2 = (lib.getOutput "gtk2" pinentry); pinentry-gnome3
pinentry-qt = (lib.getOutput "qt" pinentry); pinentry-qt
pinentry-gnome = (lib.getOutput "gnome3" pinentry); pinentry-all;
pinentry_mac = callPackage ../tools/security/pinentry/mac.nix { pinentry_mac = callPackage ../tools/security/pinentry/mac.nix {
inherit (darwin.apple_sdk.frameworks) Cocoa; inherit (darwin.apple_sdk.frameworks) Cocoa;
@ -14667,8 +14665,6 @@ with pkgs;
unnaturalscrollwheels = callPackage ../tools/inputmethods/unnaturalscrollwheels { }; unnaturalscrollwheels = callPackage ../tools/inputmethods/unnaturalscrollwheels { };
unrar = callPackage ../tools/archivers/unrar { };
unrar-wrapper = python3Packages.callPackage ../tools/archivers/unrar-wrapper { }; unrar-wrapper = python3Packages.callPackage ../tools/archivers/unrar-wrapper { };
uptime-kuma = callPackage ../servers/monitoring/uptime-kuma { }; uptime-kuma = callPackage ../servers/monitoring/uptime-kuma { };
@ -28085,7 +28081,9 @@ with pkgs;
goverview = callPackage ../tools/security/goverview { }; goverview = callPackage ../tools/security/goverview { };
go-tools = callPackage ../development/tools/go-tools { }; go-tools = callPackage ../development/tools/go-tools {
buildGoModule = buildGo122Module;
};
gotest = callPackage ../development/tools/gotest { }; gotest = callPackage ../development/tools/gotest { };
@ -30337,7 +30335,9 @@ with pkgs;
bgpq4 = callPackage ../tools/networking/bgpq4 { }; bgpq4 = callPackage ../tools/networking/bgpq4 { };
blackbox = callPackage ../applications/version-management/blackbox { }; blackbox = callPackage ../applications/version-management/blackbox {
pinentry = pinentry-curses;
};
bleachbit = callPackage ../applications/misc/bleachbit { }; bleachbit = callPackage ../applications/misc/bleachbit { };
@ -31635,22 +31635,6 @@ with pkgs;
fragments = callPackage ../applications/networking/p2p/fragments { }; fragments = callPackage ../applications/networking/p2p/fragments { };
freecad = libsForQt5.callPackage ../applications/graphics/freecad {
boost = python3Packages.boost;
inherit (python3Packages)
gitpython
matplotlib
pivy
ply
pycollada
pyside2
pyside2-tools
python
pyyaml
scipy
shiboken2;
};
freedv = callPackage ../applications/radio/freedv { freedv = callPackage ../applications/radio/freedv {
inherit (darwin.apple_sdk.frameworks) AppKit AVFoundation Cocoa CoreMedia; inherit (darwin.apple_sdk.frameworks) AppKit AVFoundation Cocoa CoreMedia;
codec2 = codec2.override { codec2 = codec2.override {
@ -41254,7 +41238,9 @@ with pkgs;
linkchecker = callPackage ../tools/networking/linkchecker { }; linkchecker = callPackage ../tools/networking/linkchecker { };
tomb = callPackage ../os-specific/linux/tomb { }; tomb = callPackage ../os-specific/linux/tomb {
pinentry = pinentry-curses;
};
sccache = callPackage ../development/tools/misc/sccache { }; sccache = callPackage ../development/tools/misc/sccache { };

View File

@ -14972,7 +14972,9 @@ self: super: with self; {
treq = callPackage ../development/python-modules/treq { }; treq = callPackage ../development/python-modules/treq { };
trezor-agent = callPackage ../development/python-modules/trezor-agent { }; trezor-agent = callPackage ../development/python-modules/trezor-agent {
pinentry = pkgs.pinentry-curses;
};
trezor = callPackage ../development/python-modules/trezor { }; trezor = callPackage ../development/python-modules/trezor { };