Merge remote-tracking branch 'origin/master' into staging-next
This commit is contained in:
@@ -106,6 +106,11 @@ in
|
||||
# useful for inspection (debugging / exploration)
|
||||
passthru.config = config;
|
||||
|
||||
/**
|
||||
For discoverTests only. Deprecated. Will be removed when discoverTests can be removed from NixOS all-tests.nix.
|
||||
*/
|
||||
passthru.test = config.test;
|
||||
|
||||
# Docs: nixos/doc/manual/development/writing-nixos-tests.section.md
|
||||
/**
|
||||
See https://nixos.org/manual/nixos/unstable#sec-override-nixos-test
|
||||
|
||||
@@ -7,6 +7,9 @@
|
||||
|
||||
let
|
||||
cfg = config.services.desktopManager.lomiri;
|
||||
nixos-gsettings-overrides = pkgs.lomiri.lomiri-gsettings-overrides.override {
|
||||
inherit (cfg) extraGSettingsOverrides extraGSettingsOverridePackages;
|
||||
};
|
||||
in
|
||||
{
|
||||
options.services.desktopManager.lomiri = {
|
||||
@@ -22,6 +25,18 @@ in
|
||||
type = lib.types.bool;
|
||||
default = config.services.xserver.displayManager.lightdm.greeters.lomiri.enable || cfg.enable;
|
||||
};
|
||||
|
||||
extraGSettingsOverrides = lib.mkOption {
|
||||
description = "Additional GSettings overrides.";
|
||||
type = lib.types.lines;
|
||||
default = "";
|
||||
};
|
||||
|
||||
extraGSettingsOverridePackages = lib.mkOption {
|
||||
description = "List of packages for which GSettings are overridden.";
|
||||
type = lib.types.listOf lib.types.path;
|
||||
default = [ ];
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkMerge [
|
||||
@@ -43,10 +58,17 @@ in
|
||||
"/share/wallpapers"
|
||||
];
|
||||
|
||||
systemPackages = with pkgs.lomiri; [
|
||||
lomiri-wallpapers # default + additional wallpaper
|
||||
suru-icon-theme # basic indicator icons
|
||||
];
|
||||
# Override GSettings defaults
|
||||
sessionVariables.NIX_GSETTINGS_OVERRIDES_DIR = "${nixos-gsettings-overrides}/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas";
|
||||
|
||||
systemPackages =
|
||||
[
|
||||
nixos-gsettings-overrides # GSettings default overrides
|
||||
]
|
||||
++ (with pkgs.lomiri; [
|
||||
lomiri-wallpapers # default + additional wallpaper
|
||||
suru-icon-theme # basic indicator icons
|
||||
]);
|
||||
};
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
|
||||
@@ -20,6 +20,8 @@ let
|
||||
NPM_CONFIG_CACHE = "/var/cache/peertube/.npm";
|
||||
NPM_CONFIG_PREFIX = cfg.package;
|
||||
HOME = cfg.package;
|
||||
# Used for auto video transcription
|
||||
HF_HOME = "/var/cache/peertube/huggingface";
|
||||
};
|
||||
|
||||
systemCallsList = [
|
||||
@@ -36,7 +38,6 @@ let
|
||||
|
||||
cfgService = {
|
||||
# Proc filesystem
|
||||
ProcSubset = "pid";
|
||||
ProtectProc = "invisible";
|
||||
# Access write directories
|
||||
UMask = "0027";
|
||||
@@ -420,6 +421,10 @@ in
|
||||
};
|
||||
};
|
||||
};
|
||||
video_transcription = {
|
||||
engine = lib.mkDefault "whisper-ctranslate2";
|
||||
engine_path = lib.mkDefault (lib.getExe pkgs.whisper-ctranslate2);
|
||||
};
|
||||
}
|
||||
(lib.mkIf cfg.redis.enableUnixSocket {
|
||||
redis = {
|
||||
|
||||
@@ -79,7 +79,7 @@ let
|
||||
links = mkIf i.wakeOnLan.enable {
|
||||
"40-${i.name}" = {
|
||||
matchConfig.name = i.name;
|
||||
linkConfig.WakeOnLan = i.wakeOnLan.policy;
|
||||
linkConfig.WakeOnLan = concatStringsSep " " i.wakeOnLan.policy;
|
||||
};
|
||||
};
|
||||
netdevs = mkIf i.virtual {
|
||||
|
||||
@@ -34,7 +34,7 @@ with lib;
|
||||
${optionalString (config.networking.hostName == "") ''
|
||||
echo "setting host name..."
|
||||
if [ -s /etc/ec2-metadata/hostname ]; then
|
||||
${lib.getExe hostname-debian} -F /etc/ec2-metadata/hostname
|
||||
${lib.getExe pkgs.hostname-debian} -F /etc/ec2-metadata/hostname
|
||||
fi
|
||||
''}
|
||||
|
||||
|
||||
@@ -18,10 +18,12 @@
|
||||
with pkgs.lib;
|
||||
|
||||
let
|
||||
# TODO: remove when handleTest is gone (make sure nixosTests and nixos/release.nix#tests are unaffected)
|
||||
# TODO: when removing, also deprecate `test` attribute in ../lib/testing/run.nix
|
||||
discoverTests =
|
||||
val:
|
||||
if isAttrs val then
|
||||
if hasAttr "test" val then
|
||||
if (val ? test) then
|
||||
callTest val
|
||||
else
|
||||
mapAttrs (n: s: if n == "passthru" then s else discoverTests s) val
|
||||
|
||||
@@ -139,12 +139,8 @@ let
|
||||
Move the mouse to a screen location and hit left-click.
|
||||
"""
|
||||
|
||||
# Need to reset to top-left, --absolute doesn't work?
|
||||
machine.execute("ydotool mousemove -- -10000 -10000")
|
||||
machine.sleep(2)
|
||||
|
||||
# Move
|
||||
machine.execute(f"ydotool mousemove -- {xpos} {ypos}")
|
||||
machine.execute(f"ydotool mousemove --absolute -- {xpos} {ypos}")
|
||||
machine.sleep(2)
|
||||
|
||||
# Click (C0 - left button: down & up)
|
||||
@@ -157,7 +153,7 @@ let
|
||||
"""
|
||||
|
||||
# Using the keybind has a chance of instantly closing the menu again? Just click the button
|
||||
mouse_click(20, 30)
|
||||
mouse_click(15, 15)
|
||||
|
||||
'';
|
||||
|
||||
@@ -653,7 +649,7 @@ in
|
||||
machine.screenshot("settings_lomiri-content-hub_peers")
|
||||
|
||||
# Select Morph as content source
|
||||
mouse_click(370, 100)
|
||||
mouse_click(340, 80)
|
||||
|
||||
# Expect Morph to be brought into the foreground, with its Downloads page open
|
||||
wait_for_text("No downloads")
|
||||
@@ -853,8 +849,8 @@ in
|
||||
ocr = [ "Log Out" ];
|
||||
extraCheck = ''
|
||||
# We should be able to log out and return to the greeter
|
||||
mouse_click(720, 280) # "Log Out"
|
||||
mouse_click(400, 240) # confirm logout
|
||||
mouse_click(600, 280) # "Log Out"
|
||||
mouse_click(340, 220) # confirm logout
|
||||
machine.wait_until_fails("pgrep -u ${user} -f 'lomiri --mode=full-shell'")
|
||||
'';
|
||||
})
|
||||
|
||||
@@ -24,8 +24,8 @@ let
|
||||
sha256Hash = "sha256-upx+qcrd+E4XVV94iaqZPN8w1RpcD8KfV37397nkznU=";
|
||||
};
|
||||
latestVersion = {
|
||||
version = "2025.1.2.7"; # "Android Studio Narwhal Feature Drop | 2025.1.2 Canary 7"
|
||||
sha256Hash = "sha256-wNBBvdofV6kL/C+JQNPz90YXzRqWYjkYaJGB4HHH6L4=";
|
||||
version = "2025.1.2.8"; # "Android Studio Narwhal Feature Drop | 2025.1.2 Canary 8"
|
||||
sha256Hash = "sha256-p7sIraR5MbFqr2svD1GKR71I0U1UDMkmAW4PAHjWyD4=";
|
||||
};
|
||||
in
|
||||
{
|
||||
|
||||
@@ -13,13 +13,13 @@
|
||||
}:
|
||||
mkLibretroCore {
|
||||
core = "ppsspp";
|
||||
version = "0-unstable-2025-06-28";
|
||||
version = "0-unstable-2025-07-06";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hrydgard";
|
||||
repo = "ppsspp";
|
||||
rev = "1f2b4de6c148cfd4514f415dbf40cd684840be70";
|
||||
hash = "sha256-QWy3PKnPj5ol52KOV/SMpNuiERnmmBHs+087qKCvM3M=";
|
||||
rev = "32e05485c5cf48bbe393ca5ce2b356db4a73ddbf";
|
||||
hash = "sha256-sU2bmCYpXl5VPpu2qZtXGgJJ523fPQsoQSWYhTwAkOs=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
pythonPackages,
|
||||
installShellFiles,
|
||||
}:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
@@ -21,6 +22,10 @@ pythonPackages.buildPythonApplication rec {
|
||||
"man"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
urwid
|
||||
beautifulsoup4
|
||||
@@ -28,9 +33,7 @@ pythonPackages.buildPythonApplication rec {
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $man/share/man/man{1,5}
|
||||
cp wikicurses.1 $man/share/man/man1/
|
||||
cp wikicurses.conf.5 $man/share/man/man5/
|
||||
installManPage wikicurses.1 wikicurses.conf.5
|
||||
'';
|
||||
|
||||
doCheck = false;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -77,6 +77,7 @@ let
|
||||
"8.20.0".sha256 = "sha256-WFpZlA6CzFVAruPhWcHQI7VOBVhrGLdFzWrHW0DTSl0=";
|
||||
"8.20.1".sha256 = "sha256-nRaLODPG4E3gUDzGrCK40vhl4+VhPyd+/fXFK/HC3Ig=";
|
||||
"9.0.0".sha256 = "sha256-GRwYSvrJGiPD+I82gLOgotb+8Ra5xHZUJGcNwxWqZkU=";
|
||||
"9.1+rc1".sha256 = "sha256-GShKHQ9EdvyNe9WlkzF6KLYybc5dPeVrh4bpkVy6pY4=";
|
||||
};
|
||||
releaseRev = v: "V${v}";
|
||||
fetched =
|
||||
|
||||
@@ -23,6 +23,7 @@ let
|
||||
|
||||
release = {
|
||||
"9.0.0".sha256 = "sha256-GRwYSvrJGiPD+I82gLOgotb+8Ra5xHZUJGcNwxWqZkU=";
|
||||
"9.1+rc1".sha256 = "sha256-GShKHQ9EdvyNe9WlkzF6KLYybc5dPeVrh4bpkVy6pY4=";
|
||||
};
|
||||
releaseRev = v: "V${v}";
|
||||
fetched =
|
||||
|
||||
@@ -22,17 +22,17 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "aaaaxy";
|
||||
version = "1.6.241";
|
||||
version = "1.6.252";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "divVerent";
|
||||
repo = "aaaaxy";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-pfvz5qaGLhFw+UD4OL6R88Qw6Ml3Pn66ZMQI3f923JA=";
|
||||
hash = "sha256-Y8uZOW5Eh3sf9+7yj3XXmokItb/BqA8bsaQMfC2PoYE=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ojgI4HgNp2pbFAWeucdU8n3qW7ittAvp+ptDndCQlEI=";
|
||||
vendorHash = "sha256-iP/7WQZ+BNqtoigRADKlYGEAEZpzSKttY4lVq7v8gR8=";
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
|
||||
@@ -78,7 +78,6 @@ rustPlatform.buildRustPackage rec {
|
||||
mainProgram = "amber";
|
||||
maintainers = with maintainers; [
|
||||
cafkafk
|
||||
uncenter
|
||||
aleksana
|
||||
];
|
||||
platforms = platforms.unix;
|
||||
|
||||
@@ -1,41 +1,44 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchFromGitLab,
|
||||
glib,
|
||||
gmime3,
|
||||
gnutls,
|
||||
gobject-introspection,
|
||||
gpgme,
|
||||
gtk3,
|
||||
gtksourceview4,
|
||||
gtkspell3,
|
||||
intltool,
|
||||
libcanberra-gtk3,
|
||||
libesmtp,
|
||||
libical,
|
||||
libnotify,
|
||||
libsecret,
|
||||
openssl,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
sqlite,
|
||||
webkitgtk_4_0,
|
||||
wrapGAppsHook3,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "balsa";
|
||||
version = "2.6.4";
|
||||
version = "2.6.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pawsa.fedorapeople.org/balsa/${pname}-${version}.tar.xz";
|
||||
sha256 = "1hcgmjka2x2igdrmvzlfs12mv892kv4vzv5iy90kvcqxa625kymy";
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.gnome.org";
|
||||
owner = "GNOME";
|
||||
repo = "balsa";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-KvgDIFbXmVkTqOibKF+8UhupEDgdhje600aSbmeKZqo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
intltool
|
||||
gobject-introspection
|
||||
wrapGAppsHook3
|
||||
];
|
||||
|
||||
@@ -57,6 +60,10 @@ stdenv.mkDerivation rec {
|
||||
webkitgtk_4_0
|
||||
];
|
||||
|
||||
mesonFlags = [
|
||||
(lib.mesonOption "sysconfdir" "etc")
|
||||
];
|
||||
|
||||
configureFlags = [
|
||||
"--with-canberra"
|
||||
"--with-gtksourceview"
|
||||
@@ -70,11 +77,13 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://pawsa.fedorapeople.org/balsa/";
|
||||
meta = {
|
||||
description = "E-mail client for GNOME";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.romildo ];
|
||||
homepage = "https://gitlab.gnome.org/GNOME/balsa";
|
||||
changelog = "https://gitlab.gnome.org/GNOME/balsa/-/blob/master/ChangeLog";
|
||||
mainProgram = "balsa";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ timon ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -34,6 +34,6 @@ rustPlatform.buildRustPackage {
|
||||
homepage = "https://github.com/Boshen/cargo-shear";
|
||||
changelog = "https://github.com/Boshen/cargo-shear/blob/v${version}/CHANGELOG.md";
|
||||
license = [ lib.licenses.mit ];
|
||||
maintainers = with lib.maintainers; [ uncenter ];
|
||||
maintainers = with lib.maintainers; [ ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,18 +6,18 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "datafusion-cli";
|
||||
version = "48.0.0";
|
||||
version = "48.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
name = "datafusion-cli-source";
|
||||
owner = "apache";
|
||||
repo = "arrow-datafusion";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-DkMJKZI5rOH/PGXiAXY/GtYwYvhZ2b3zKeGeD9o2AvE=";
|
||||
hash = "sha256-hYRv+7cqiPEpUHMbvmG+z7S1S6xdaMHEORXu6V0X+/0=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-9uMmxP/MvFXfylKCCcZS1YEp8snF5Tds9Eh0hL6U0oE=";
|
||||
cargoHash = "sha256-vGVpkfNgyY3d+SL03jNgNNInH0jvDgpkPmHI04l2G7c=";
|
||||
|
||||
buildAndTestSubdir = "datafusion-cli";
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ assert withFlint -> flint != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "eclib";
|
||||
version = "20250616"; # upgrade might break the sage interface
|
||||
version = "20250627"; # upgrade might break the sage interface
|
||||
# sage tests to run:
|
||||
# src/sage/interfaces/mwrank.py
|
||||
# src/sage/libs/eclib
|
||||
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||
# see https://github.com/JohnCremona/eclib/issues/64#issuecomment-789788561
|
||||
# for upstream's explanation of the above
|
||||
url = "https://github.com/JohnCremona/eclib/releases/download/${version}/eclib-${version}.tar.bz2";
|
||||
hash = "sha256-WrPkrAlBhsnK/NqSFNTZNkgsL2EJzvmLASha0rI4U5s=";
|
||||
hash = "sha256-uI1LUmEuSRxUFZRtnjXyBiyhAV7n+74LYfFY+nTLS8k=";
|
||||
};
|
||||
buildInputs =
|
||||
[
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
callPackage,
|
||||
python3Packages,
|
||||
fetchFromGitHub,
|
||||
@@ -8,7 +9,7 @@
|
||||
esptool,
|
||||
git,
|
||||
inetutils,
|
||||
stdenv,
|
||||
versionCheckHook,
|
||||
nixosTests,
|
||||
}:
|
||||
|
||||
@@ -43,9 +44,8 @@ python.pkgs.buildPythonApplication rec {
|
||||
hash = "sha256-3Xcxn12QKQg0jxdOPP7y01YaikvxmPPX9JL2JBvdsUM=";
|
||||
};
|
||||
|
||||
build-systems = with python.pkgs; [
|
||||
build-system = with python.pkgs; [
|
||||
setuptools
|
||||
argcomplete
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -123,14 +123,17 @@ python.pkgs.buildPythonApplication rec {
|
||||
# Needed for tests
|
||||
__darwinAllowLocalNetworking = true;
|
||||
|
||||
nativeCheckInputs = with python3Packages; [
|
||||
hypothesis
|
||||
mock
|
||||
pytest-asyncio
|
||||
pytest-cov-stub
|
||||
pytest-mock
|
||||
pytestCheckHook
|
||||
];
|
||||
nativeCheckInputs =
|
||||
with python3Packages;
|
||||
[
|
||||
hypothesis
|
||||
mock
|
||||
pytest-asyncio
|
||||
pytest-cov-stub
|
||||
pytest-mock
|
||||
pytestCheckHook
|
||||
]
|
||||
++ [ versionCheckHook ];
|
||||
|
||||
disabledTests = [
|
||||
# race condition, also visible in upstream tests
|
||||
@@ -157,10 +160,6 @@ python.pkgs.buildPythonApplication rec {
|
||||
export PATH=$PATH:$out/bin
|
||||
'';
|
||||
|
||||
postCheck = ''
|
||||
$out/bin/esphome --help > /dev/null
|
||||
'';
|
||||
|
||||
postInstall =
|
||||
let
|
||||
argcomplete = lib.getExe' python3Packages.argcomplete "register-python-argcomplete";
|
||||
@@ -172,6 +171,10 @@ python.pkgs.buildPythonApplication rec {
|
||||
--fish <(${argcomplete} --shell fish esphome)
|
||||
'';
|
||||
|
||||
doInstallCheck = true;
|
||||
|
||||
versionCheckProgramArg = "--version";
|
||||
|
||||
passthru = {
|
||||
dashboard = python.pkgs.esphome-dashboard;
|
||||
updateScript = callPackage ./update.nix { };
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fcitx5-mcbopomofo";
|
||||
version = "2.9.1";
|
||||
version = "2.9.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openvanilla";
|
||||
repo = "fcitx5-mcbopomofo";
|
||||
rev = version;
|
||||
hash = "sha256-fHDNhZhSVgVuZLfRA3eJErm1gwhUZJw+emCXfeO5HVo=";
|
||||
hash = "sha256-2TWJsEScC5rMz5dowJOQHA2Mjzsq+d9n2lKXdEWiELU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "frida-tools";
|
||||
version = "14.1.2";
|
||||
version = "14.4.0";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-ORNgNpzZWoW/Ex6DOUk/mgRPySTv/cWybcHnEMdKeIU=";
|
||||
hash = "sha256-ACiznCkOZvnPUSB+Xcs4IZfbPGyknr193gLok0FrzqA=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
let
|
||||
pname = "gate";
|
||||
version = "0.49.2";
|
||||
version = "0.50.0";
|
||||
in
|
||||
buildGoModule {
|
||||
inherit pname version;
|
||||
@@ -15,10 +15,10 @@ buildGoModule {
|
||||
owner = "minekube";
|
||||
repo = "gate";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-u90cQh6mYUrlnWUkwIAhkJJZ6GB0AkNIJVJVkq4cYEM=";
|
||||
hash = "sha256-clWQeFKOLzA99yNqgNPdPdvyaVoRvYjYg7PrGvnuk7o=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-4LJwb4ZXs+CUcxhvRveJy+xu7/UEjxIEwLV5Z5gBbT4=";
|
||||
vendorHash = "sha256-d/D1l+/viJ5OFSpUDpC+4pnDwPJDBuYDjS7niao5D9U=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "go-errorlint";
|
||||
version = "1.5.1";
|
||||
version = "1.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "polyfloyd";
|
||||
repo = "go-errorlint";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-xO9AC1z3JNTRVEpM/FF8x+AMfmspU64kUywvpMb2yxM=";
|
||||
hash = "sha256-jczsgZAC90f2Kkrwpb9oeoK1HtlFDLOjqlexn9v5ojk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-pSajd2wyefHgxMvhDKs+qwre4BMRBv97v/tZOjiT3LE=";
|
||||
vendorHash = "sha256-smOu92BigepCH02qm2Im3T65nUoR/IYhWTjhnjRPppA=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
||||
@@ -102,7 +102,9 @@ buildNpmPackage rec {
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
passthru.updateScript = unstableGitUpdater {
|
||||
tagPrefix = "v";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ipxe";
|
||||
version = "1.21.1-unstable-2025-06-26";
|
||||
version = "1.21.1-unstable-2025-07-04";
|
||||
|
||||
nativeBuildInputs = [
|
||||
mtools
|
||||
@@ -65,8 +65,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
src = fetchFromGitHub {
|
||||
owner = "ipxe";
|
||||
repo = "ipxe";
|
||||
rev = "4262328c13a3ec085eac7c6c58fbed27d2466a0d";
|
||||
hash = "sha256-FvYGM+NApTloA7vV1KPpsAzIT7oZ2GK6rKw+3mosvTA=";
|
||||
rev = "c21443f0b9a4dee56ab0f47b096540d6443cda9f";
|
||||
hash = "sha256-rCMTtzNZM3KElNYwnpQOINU4CsMhIgla8JQT5Fgx2tQ=";
|
||||
};
|
||||
|
||||
# Calling syslinux on a FAT image isn't going to work on Aarch64.
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
versioneer,
|
||||
shapely,
|
||||
setuptools,
|
||||
nix-update-script,
|
||||
}:
|
||||
let
|
||||
solidpython = callPackage ./solidpython { };
|
||||
@@ -95,14 +96,17 @@ buildPythonApplication rec {
|
||||
cd test/units
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Automation for KiCAD boards";
|
||||
homepage = "https://github.com/yaqwsx/KiKit/";
|
||||
changelog = "https://github.com/yaqwsx/KiKit/releases/tag/${src.tag}";
|
||||
maintainers = with maintainers; [
|
||||
maintainers = with lib.maintainers; [
|
||||
jfly
|
||||
matusf
|
||||
];
|
||||
license = licenses.mit;
|
||||
teams = with lib.teams; [ ngi ];
|
||||
license = lib.licenses.mit;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kyverno";
|
||||
version = "1.14.3";
|
||||
version = "1.14.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kyverno";
|
||||
repo = "kyverno";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-WKVzx88k9D6unZWNfJesy/Ucmm5u5hJUpEETuOLiF18=";
|
||||
hash = "sha256-hOYNHJfK3EMe6oC3ucymcK8uyu07asRZjYJxm4fN6x8=";
|
||||
};
|
||||
|
||||
ldflags = [
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libfabric";
|
||||
version = "2.1.0";
|
||||
version = "2.2.0";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "ofiwg";
|
||||
repo = "libfabric";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-TK45SCPyFIMhliBYBEMPSKX/UtHGPj075SlTNB92O0Y=";
|
||||
sha256 = "sha256-BY3a7CxtMJl5/+7t4BzJRTbMnDs1oL3UhDOPRB+D3+U=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libserdes";
|
||||
version = "7.9.1";
|
||||
version = "7.9.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "confluentinc";
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
}:
|
||||
beamPackages.mixRelease rec {
|
||||
pname = "livebook";
|
||||
version = "0.16.2";
|
||||
version = "0.16.4";
|
||||
|
||||
inherit elixir;
|
||||
|
||||
@@ -23,13 +23,13 @@ beamPackages.mixRelease rec {
|
||||
owner = "livebook-dev";
|
||||
repo = "livebook";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-x4h5vT2p1SL/8p04DRpKbIbwL7XzctH27f4ZAwj0QOg=";
|
||||
hash = "sha256-Cwzcoslqjaf7z9x2Sgnzrrl4zUcH2f7DEWaFPBIi3ms=";
|
||||
};
|
||||
|
||||
mixFodDeps = beamPackages.fetchMixDeps {
|
||||
pname = "mix-deps-${pname}";
|
||||
inherit src version;
|
||||
hash = "sha256-0gmUCVLrNfcRCPhaXuOfrYW05TDbDN5Zt9IA8OBU8Gc=";
|
||||
hash = "sha256-OEYkWh0hAl7ZXP2Cq+TgVGF4tnWlpF6W5uRSdyrswlA=";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -38,7 +38,6 @@ rustPlatform.buildRustPackage {
|
||||
changelog = "https://github.com/becheran/mlc/blob/v${version}/CHANGELOG.md";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
uncenter
|
||||
anas
|
||||
];
|
||||
mainProgram = "mlc";
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "miller";
|
||||
version = "6.13.0";
|
||||
version = "6.14.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "johnkerl";
|
||||
repo = "miller";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-eHiYIw/sQMXLow2Vy4zFTGeON28LmG0pK2Uca4ooInU=";
|
||||
sha256 = "sha256-tpM+Y65zYvnTd9VNJPDTWyj0RC+VmdmVCNzXyVGs/EI=";
|
||||
};
|
||||
|
||||
outputs = [
|
||||
@@ -20,7 +20,7 @@ buildGoModule rec {
|
||||
"man"
|
||||
];
|
||||
|
||||
vendorHash = "sha256-oc6Lp4rQ+MLmQDVcuNJ3CqYH277Vuuwu4zSSO2ICXsw=";
|
||||
vendorHash = "sha256-KgQZg8+6Vo4t0yx7AwuOyRWIMT7vwUO5nfDgBSVceIA=";
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $man/share/man/man1
|
||||
|
||||
@@ -2,7 +2,10 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
installShellFiles,
|
||||
versionCheckHook,
|
||||
zlib,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -18,24 +21,37 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [ zlib ];
|
||||
|
||||
makeFlags = lib.optionals stdenv.hostPlatform.isAarch64 [
|
||||
"arm_neon=1"
|
||||
"aarch64=1"
|
||||
];
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
makeFlags =
|
||||
lib.optionals stdenv.hostPlatform.isAarch [ "arm_neon=1" ]
|
||||
++ lib.optionals stdenv.hostPlatform.isAarch64 [ "aarch64=1" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp minimap2 $out/bin
|
||||
mkdir -p $out/share/man/man1
|
||||
cp minimap2.1 $out/share/man/man1
|
||||
runHook preInstall
|
||||
install -m755 -Dt $out/bin minimap2
|
||||
installManPage minimap2.1
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "Versatile pairwise aligner for genomic and spliced nucleotide sequences";
|
||||
longDescription = ''
|
||||
Minimap2 is a versatile sequence alignment program that aligns
|
||||
DNA or mRNA sequences against a large reference database. It is
|
||||
particularly efficient for long reads and can handle various
|
||||
sequencing technologies including PacBio and Oxford Nanopore.
|
||||
'';
|
||||
mainProgram = "minimap2";
|
||||
homepage = "https://lh3.github.io/minimap2";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.all;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.arcadio ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,8 +2,31 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchYarnDeps,
|
||||
writableTmpDirAsHomeHook,
|
||||
writeText,
|
||||
|
||||
fixup-yarn-lock,
|
||||
nodejs,
|
||||
yarn,
|
||||
|
||||
# Custom application configuration placed to theme/config.theme.js file
|
||||
# For the list of available configuration options see
|
||||
# https://github.com/osm-search/nominatim-ui/blob/master/dist/config.defaults.js
|
||||
customConfig ? null,
|
||||
}:
|
||||
|
||||
let
|
||||
configFile =
|
||||
if customConfig != null then
|
||||
writeText "config.theme.js" customConfig
|
||||
else
|
||||
writeText "config.theme.js" ''
|
||||
// Default configuration
|
||||
Nominatim_Config.Nominatim_API_Endpoint='https://127.0.0.1/';
|
||||
'';
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "nominatim-ui";
|
||||
version = "3.7.1";
|
||||
@@ -15,6 +38,43 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-TliTWDKdIp7Z0uYw5P65i06NQAUNwNymUsSYrihVZFE=";
|
||||
};
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||||
hash = "sha256-IqwsXEd9RSJhkA4BONTJT4xYMTyG9+zddIpD47v6AFc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
writableTmpDirAsHomeHook
|
||||
|
||||
fixup-yarn-lock
|
||||
nodejs
|
||||
yarn
|
||||
];
|
||||
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
||||
yarn config --offline set yarn-offline-mirror $offlineCache
|
||||
fixup-yarn-lock yarn.lock
|
||||
|
||||
yarn install --offline --frozen-lockfile --frozen-engines --ignore-scripts
|
||||
patchShebangs node_modules
|
||||
|
||||
runHook postConfigure
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
yarn --offline build
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
ln --symbolic ${configFile} dist/theme/config.theme.js
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
|
||||
@@ -26,13 +26,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "polymake";
|
||||
version = "4.13";
|
||||
version = "4.14";
|
||||
|
||||
src = fetchurl {
|
||||
# "The minimal version is a packager friendly version which omits
|
||||
# the bundled sources of cdd, lrs, libnormaliz, nauty and jReality."
|
||||
url = "https://polymake.org/lib/exe/fetch.php/download/polymake-${version}-minimal.tar.bz2";
|
||||
sha256 = "sha256-862s0GO56mDV6cN8YYP127dFiwyzSR66Pvw48gxWXOs=";
|
||||
sha256 = "sha256-4nZncZpZECwbJ/X5j6g807QUf2MpKUBZLyFxUd79v40=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -23,23 +23,28 @@
|
||||
|
||||
let
|
||||
# Copied from the `prismlauncher` package
|
||||
runtimeLibs = [
|
||||
libX11
|
||||
libXext
|
||||
libXcursor
|
||||
libXrandr
|
||||
libXxf86vm
|
||||
runtimeLibs =
|
||||
[
|
||||
# lwjgl
|
||||
libGL
|
||||
glfw
|
||||
openal
|
||||
(lib.getLib stdenv.cc.cc)
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
libX11
|
||||
libXext
|
||||
libXcursor
|
||||
libXrandr
|
||||
libXxf86vm
|
||||
|
||||
# lwjgl
|
||||
libpulseaudio
|
||||
libGL
|
||||
glfw
|
||||
openal
|
||||
(lib.getLib stdenv.cc.cc)
|
||||
# lwjgl
|
||||
libpulseaudio
|
||||
|
||||
# oshi
|
||||
udev
|
||||
] ++ lib.optional textToSpeechSupport flite;
|
||||
# oshi
|
||||
udev
|
||||
]
|
||||
++ lib.optional textToSpeechSupport flite;
|
||||
in
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "portablemc";
|
||||
|
||||
@@ -6,9 +6,10 @@
|
||||
file,
|
||||
libnsl,
|
||||
writableTmpDirAsHomeHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttr: {
|
||||
stdenv.mkDerivation {
|
||||
pname = "re-Isearch";
|
||||
version = "2.20220925.4.0a-unstable-2025-03-16";
|
||||
|
||||
@@ -16,7 +17,7 @@ stdenv.mkDerivation (finalAttr: {
|
||||
owner = "re-Isearch";
|
||||
repo = "re-Isearch";
|
||||
rev = "56e0dfbe7468881b3958ca8e630f41a5354e9873";
|
||||
sha256 = "sha256-tI75D02/sFEkHDQX/BpDlu24WNP6Qh9G0MIfEvs8npM=";
|
||||
hash = "sha256-tI75D02/sFEkHDQX/BpDlu24WNP6Qh9G0MIfEvs8npM=";
|
||||
};
|
||||
|
||||
# Upstream issue: https://github.com/re-Isearch/re-Isearch/issues/11
|
||||
@@ -56,10 +57,6 @@ stdenv.mkDerivation (finalAttr: {
|
||||
)
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $out/{bin,lib}
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -71,6 +68,10 @@ stdenv.mkDerivation (finalAttr: {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
extraArgs = [ "--version=branch" ];
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Novel multimodal search and retrieval engine";
|
||||
homepage = "https://nlnet.nl/project/Re-iSearch/";
|
||||
@@ -79,4 +80,4 @@ stdenv.mkDerivation (finalAttr: {
|
||||
maintainers = [ lib.maintainers.astro ];
|
||||
teams = [ lib.teams.ngi ];
|
||||
};
|
||||
})
|
||||
}
|
||||
|
||||
@@ -7,22 +7,29 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "reaction";
|
||||
version = "2.0.1";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "framagit.org";
|
||||
owner = "ppom";
|
||||
repo = "reaction";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-HpnLh0JfGZsHcvDQSiKfW62QcCe/QDsVP/nGBo9x494=";
|
||||
hash = "sha256-3FJv1n1+cpV4yrBR6PKTAhSkjas/4uTZqn4nW948jAk=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-i8KZygESxgty8RR3C+JMuE1aAsBxoLuGsL4jqjdGr0E=";
|
||||
cargoHash = "sha256-Is8Mkl7Qfbe2CwYB+Da99NDQZd9+qR4NnT8iU/JMPJ0=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
checkFlags = [
|
||||
# Those time-based tests behave poorly in low-resource environments (CI...)
|
||||
"--skip=daemon::filter::tests"
|
||||
"--skip=treedb::raw::tests::write_then_read_1000"
|
||||
"--skip=simple"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
installBin $releaseDir/ip46tables $releaseDir/nft46
|
||||
installManPage $releaseDir/reaction*.1
|
||||
@@ -41,6 +48,6 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
license = lib.licenses.agpl3Plus;
|
||||
mainProgram = "reaction";
|
||||
maintainers = with lib.maintainers; [ ppom ];
|
||||
platforms = lib.platforms.linux;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
||||
|
||||
@@ -26,13 +26,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "redis";
|
||||
version = "8.0.2";
|
||||
version = "8.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "redis";
|
||||
repo = "redis";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-BZJEBp3M7Gw/6/fZjfaMfU777dFmMzAS4bDI06ErkSc=";
|
||||
hash = "sha256-e6pPsPz0huZyn14XO3uFUmJhBpMxhWLfyD0VBQXsJ1s=";
|
||||
};
|
||||
|
||||
patches = lib.optional useSystemJemalloc (fetchpatch2 {
|
||||
|
||||
@@ -9,17 +9,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "reindeer";
|
||||
version = "2025.06.23.00";
|
||||
version = "2025.06.30.00";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "facebookincubator";
|
||||
repo = "reindeer";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-4g5CbKFsZaZWSNCw04G1zMR873VeW3fdtvIM9HrrVJc=";
|
||||
hash = "sha256-9TvYewY74ntI8iTo5UOTQ+OA6eJHmA/fUPRW0maZn00=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-sL15ziVSW70m4XhqpQoCeZBvmp7bB6tKPUCvwUFqvRg=";
|
||||
cargoHash = "sha256-yxxh/ikFioEAHpuS/AAIpQClWvQxL/5/UkiSbbKRnBA=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
|
||||
@@ -7,25 +7,66 @@
|
||||
makeDesktopItem,
|
||||
nix-update-script,
|
||||
npm-lockfile-fix,
|
||||
prefetch-npm-deps,
|
||||
rsync,
|
||||
stdenv,
|
||||
}:
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "super-productivity";
|
||||
version = "13.0.10";
|
||||
version = "14.0.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "johannesjo";
|
||||
repo = "super-productivity";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-2K/6T4f9tLlrKimT/DPSdoz8LHij5nsaF6BWSQf6u7U=";
|
||||
hash = "sha256-VoE86uBl6DM6aXz7MLYekEzfixVSLjLL3yYgc2vBhp0=";
|
||||
|
||||
postFetch = ''
|
||||
${lib.getExe npm-lockfile-fix} -r $out/package-lock.json
|
||||
find $out -name package-lock.json -exec ${lib.getExe npm-lockfile-fix} -r {} \;
|
||||
'';
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-l9P11ZvLYiTu/cVPQIw391ZTJ0K+cNPUzoVMsdze2uo=";
|
||||
# Use custom fetcher for deps because super-productivity uses multiple
|
||||
# package-lock.json files to manage plugins. It checks all lock
|
||||
# files and produces a merged output. This should still be compatible
|
||||
# with nix-update.
|
||||
npmDeps = stdenv.mkDerivation (
|
||||
lib.fetchers.normalizeHash { } {
|
||||
pname = "super-productivity-deps";
|
||||
inherit version src;
|
||||
|
||||
nativeBuildInputs = [
|
||||
prefetch-npm-deps
|
||||
rsync
|
||||
];
|
||||
|
||||
# Some lockfiles do not include any dependencies to install so
|
||||
# prefertch-npm-deps produces an error. Those can be ignored with
|
||||
# this flag.
|
||||
env.FORCE_EMPTY_CACHE = true;
|
||||
|
||||
buildPhase = ''
|
||||
mkdir -p $out
|
||||
find -name package-lock.json | while read -r lockfile; do
|
||||
prefetch-npm-deps $lockfile /tmp/cache
|
||||
# Merge output
|
||||
rsync -a /tmp/cache/ $out
|
||||
rm -rf /tmp/cache
|
||||
done
|
||||
# Ensure that the root package-lock.json is placed in the output.
|
||||
# This means only the root lockfile is checked for consistancy,
|
||||
# but that should not be an issue.
|
||||
cp package-lock.json $out
|
||||
'';
|
||||
|
||||
dontInstall = true;
|
||||
|
||||
outputHashMode = "recursive";
|
||||
hash = "sha256-Jj7ulTjC19Q9PmOeVui/FAyfpsSviGLHiiz8gwsLXAg=";
|
||||
}
|
||||
);
|
||||
|
||||
makeCacheWritable = true;
|
||||
|
||||
env = {
|
||||
@@ -64,13 +105,13 @@ buildNpmPackage rec {
|
||||
if stdenv.hostPlatform.isDarwin then
|
||||
''
|
||||
mkdir -p $out/Applications
|
||||
cp -r "app-builds/mac"*"/Super Productivity.app" "$out/Applications"
|
||||
cp -r ".tmp/app-builds/mac"*"/Super Productivity.app" "$out/Applications"
|
||||
makeWrapper "$out/Applications/Super Productivity.app/Contents/MacOS/Super Productivity" "$out/bin/super-productivity"
|
||||
''
|
||||
else
|
||||
''
|
||||
mkdir -p $out/share/{super-productivity,icons/hicolor/scalable/apps}
|
||||
cp -r app-builds/*-unpacked/resources/app.asar $out/share/super-productivity
|
||||
cp -r .tmp/app-builds/*-unpacked/resources/app.asar $out/share/super-productivity
|
||||
cp electron/assets/icons/ico-circled.svg $out/share/icons/hicolor/scalable/apps/super-productivity.svg
|
||||
|
||||
makeWrapper '${lib.getExe electron}' "$out/bin/super-productivity" \
|
||||
|
||||
@@ -38,7 +38,7 @@ in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = if tde2eOnly then "tde2e" else "tdlib";
|
||||
version = "1.8.49";
|
||||
version = "1.8.51";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tdlib";
|
||||
@@ -47,8 +47,8 @@ stdenv.mkDerivation {
|
||||
# The tdlib authors do not set tags for minor versions, but
|
||||
# external programs depending on tdlib constrain the minor
|
||||
# version, hence we set a specific commit with a known version.
|
||||
rev = "51743dfd01dff6179e2d8f7095729caa4e2222e9";
|
||||
hash = "sha256-duD8a/fppkmaKrvkHnbSxRnCLS60aNVcgaYyCoHzKgE=";
|
||||
rev = "bb474a201baa798784d696d2d9d762a9d2807f96";
|
||||
hash = "sha256-Jd2ojDDwO/7W54QjnKLlc1ecqTfJEFPRtT50rNlukKA=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
lib,
|
||||
fetchFromGitea,
|
||||
cmake,
|
||||
ninja,
|
||||
wxGTK32,
|
||||
gtk3,
|
||||
pkg-config,
|
||||
@@ -47,7 +48,7 @@
|
||||
util-linux,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tenacity";
|
||||
version = "1.3.4";
|
||||
|
||||
@@ -56,20 +57,46 @@ stdenv.mkDerivation rec {
|
||||
owner = "tenacityteam";
|
||||
repo = "tenacity";
|
||||
fetchSubmodules = true;
|
||||
rev = "v${version}";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-2gndOwgEJK2zDSbjcZigbhEpGv301/ygrf+EQhKp8PI=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
mkdir -p build/src/private
|
||||
touch build/src/private/RevisionIdent.h
|
||||
postPatch =
|
||||
''
|
||||
# GIT_DESCRIBE is used for the version string and can't be passed in
|
||||
# as an option, so we substitute it instead.
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace-fail 'set( GIT_DESCRIBE "unknown" )' 'set( GIT_DESCRIBE "${finalAttrs.version}" )'
|
||||
''
|
||||
+ lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
substituteInPlace libraries/lib-files/FileNames.cpp \
|
||||
--replace-fail /usr/include/linux/magic.h ${linuxHeaders}/include/linux/magic.h
|
||||
''
|
||||
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
# Tenacity has special handling for ffmpeg library search on darwin,
|
||||
# looking only in a few specific directories.
|
||||
# Make sure it searches for our version of ffmpeg in the nix store.
|
||||
substituteInPlace libraries/lib-ffmpeg-support/FFmpegFunctions.cpp \
|
||||
--replace-fail /usr/local/lib/tenacity ${lib.getLib ffmpeg}/lib
|
||||
'';
|
||||
|
||||
substituteInPlace libraries/lib-files/FileNames.cpp \
|
||||
--replace /usr/include/linux/magic.h \
|
||||
${linuxHeaders}/include/linux/magic.h
|
||||
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
mkdir $out/{bin,Applications}
|
||||
mv $out/{,Applications/}Tenacity.app
|
||||
|
||||
# Symlinking the binary is insufficient as it would be unable to
|
||||
# find the bundle resources
|
||||
cat << EOF > "$out/bin/tenacity"
|
||||
#!${stdenv.shell}
|
||||
open -na "$out/Applications/Tenacity.app" --args "\$@"
|
||||
EOF
|
||||
chmod +x "$out/bin/tenacity"
|
||||
|
||||
# Only contains a static library that is already linked into the tenacity binary
|
||||
rm -r $out/lib
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
wrapProgram "$out/bin/tenacity" \
|
||||
--suffix AUDACITY_PATH : "$out/share/tenacity" \
|
||||
--suffix AUDACITY_MODULES_PATH : "$out/lib/tenacity/modules" \
|
||||
@@ -77,10 +104,9 @@ stdenv.mkDerivation rec {
|
||||
--prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
|
||||
'';
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-D GIT_DESCRIBE=\"\"";
|
||||
|
||||
# tenacity only looks for ffmpeg at runtime, so we need to link it in manually
|
||||
NIX_LDFLAGS = toString [
|
||||
# Tenacity only looks for ffmpeg at runtime, so we need to link it in manually.
|
||||
# On darwin, these are ignored by the ffmpeg search even when linked.
|
||||
NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isLinux (toString [
|
||||
"-lavcodec"
|
||||
"-lavdevice"
|
||||
"-lavfilter"
|
||||
@@ -89,23 +115,23 @@ stdenv.mkDerivation rec {
|
||||
"-lpostproc"
|
||||
"-lswresample"
|
||||
"-lswscale"
|
||||
];
|
||||
]);
|
||||
|
||||
nativeBuildInputs =
|
||||
[
|
||||
cmake
|
||||
ninja
|
||||
gettext
|
||||
makeWrapper
|
||||
pkg-config
|
||||
python3
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
makeWrapper
|
||||
linuxHeaders
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[
|
||||
alsa-lib
|
||||
expat
|
||||
ffmpeg
|
||||
file
|
||||
@@ -134,6 +160,7 @@ stdenv.mkDerivation rec {
|
||||
gtk3
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
alsa-lib
|
||||
at-spi2-core
|
||||
dbus
|
||||
libepoxy
|
||||
@@ -149,14 +176,20 @@ stdenv.mkDerivation rec {
|
||||
cmakeFlags = [
|
||||
# RPATH of binary /nix/store/.../bin/... contains a forbidden reference to /build/
|
||||
"-DCMAKE_SKIP_BUILD_RPATH=ON"
|
||||
# Disabled by default on Linux but enabled on Darwin, so we disable it explicitly for all platforms,
|
||||
# as we provide dependencies from nixpkgs regardless of the target platform.
|
||||
"-DVCPKG=OFF"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Sound editor with graphical UI";
|
||||
mainProgram = "tenacity";
|
||||
homepage = "https://tenacityaudio.org/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ irenes ];
|
||||
platforms = platforms.linux;
|
||||
license = lib.licenses.gpl2Plus;
|
||||
maintainers = with lib.maintainers; [
|
||||
irenes
|
||||
niklaskorz
|
||||
];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
pkgsBuildBuild,
|
||||
pkg-config,
|
||||
cmake,
|
||||
@@ -65,7 +64,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "triton-llvm";
|
||||
version = "19.1.0-rc1"; # One of the tags at https://github.com/llvm/llvm-project/commit/10dc3a8e916d73291269e5e2b82dd22681489aa1
|
||||
version = "21.0.0-git"; # See https://github.com/llvm/llvm-project/blob/main/cmake/Modules/LLVMVersion.cmake
|
||||
|
||||
outputs =
|
||||
[
|
||||
@@ -78,23 +77,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"man"
|
||||
];
|
||||
|
||||
# See https://github.com/triton-lang/triton/blob/main/python/setup.py
|
||||
# and https://github.com/ptillet/triton-llvm-releases/releases
|
||||
# See https://github.com/triton-lang/triton/blob/main/cmake/llvm-hash.txt
|
||||
src = fetchFromGitHub {
|
||||
owner = "llvm";
|
||||
repo = "llvm-project";
|
||||
rev = "10dc3a8e916d73291269e5e2b82dd22681489aa1";
|
||||
hash = "sha256-9DPvcFmhzw6MipQeCQnr35LktW0uxtEL8axMMPXIfWw=";
|
||||
rev = "a66376b0dc3b2ea8a84fda26faca287980986f78";
|
||||
hash = "sha256-7xUPozRerxt38UeJxA8kYYxOQ4+WzDREndD2+K0BYkU=";
|
||||
};
|
||||
patches = [
|
||||
# glibc-2.40 support
|
||||
# [llvm-exegesis] Use correct rseq struct size #100804
|
||||
# https://github.com/llvm/llvm-project/issues/100791
|
||||
(fetchpatch {
|
||||
url = "https://github.com/llvm/llvm-project//commit/84837e3cc1cf17ed71580e3ea38299ed2bfaa5f6.patch";
|
||||
hash = "sha256-QKa+kyXjjGXwTQTEpmKZx5yYjOyBX8A8NQoIYUaGcIw=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs =
|
||||
[
|
||||
|
||||
@@ -21,7 +21,7 @@ python3Packages.buildPythonApplication rec {
|
||||
hash = "sha256-5suYJ+Z6ofVAysoCdHi5b5K0JTYaqeFZ32Cm76wC5LU=";
|
||||
};
|
||||
|
||||
build-systems = with python3Packages; [
|
||||
build-system = with python3Packages; [
|
||||
setuptools
|
||||
];
|
||||
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
xmrig.overrideAttrs (oldAttrs: rec {
|
||||
pname = "xmrig-mo";
|
||||
version = "6.23.0-mo1";
|
||||
version = "6.24.0-mo1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MoneroOcean";
|
||||
repo = "xmrig";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-9ne2qpN6F6FJyD/Havb7fhY1oB4AxFrB17gI7QtoE1E=";
|
||||
hash = "sha256-l3dN1lKn+Vt2JPmBm452kRe39UCnW3TIhUbHXkHXBrM=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
||||
@@ -61,37 +61,54 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "lomiri";
|
||||
version = "0.4.1";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "ubports";
|
||||
repo = "development/core/lomiri";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-5fwSLUTntVyV5FIVnPishrU/55tyTyx0Fzh6oitaWwo=";
|
||||
hash = "sha256-blXEfDauwtDH+0OdUx0vAR+8lnAGrREssqjsBNmvomk=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix greeter & related settings
|
||||
# These patches are seemingly not submitted upstream yet
|
||||
# Fix broken multimedia suspend due to missing media-hub
|
||||
(fetchpatch {
|
||||
name = "1000-lomiri-QT_IM_MODULE-maliit.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/ebbe0f3f568bd145bb58a2e47f7112442328a0a5/debian/patches/2003_maliit-not-maliitphablet-as-im-module-namespace.patch";
|
||||
hash = "sha256-5HEMl0x1S9Hb7spxPRgu8OBebmpaLa6zko2uVEYtBmY=";
|
||||
name = "2012-lomiri-dont-suspend-apps.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/1d6e83446f69299d1206927c2adbf78470ba27ec/debian/patches/2012_no-app-suspension-on-Debian+Ubuntu-proper.patch";
|
||||
hash = "sha256-9mvkILrkig18fAw5KyA2+5vXup6Le7X0blgY0PJ2Trc=";
|
||||
})
|
||||
|
||||
# Fix convergence on some tablets
|
||||
(fetchpatch {
|
||||
name = "1013-lomiri-fix-convergence-on-high-resolution-tablets.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/4d4904b728a3e66706c756f911ddc79b01f863a2/debian/patches/1013_fix-convergence-on-high-resolution-tablets.patch";
|
||||
hash = "sha256-pQYIa8U0gEFdwZBuWMp8nL5j2HPSivMrsuKUC9scKg0=";
|
||||
})
|
||||
|
||||
# Make greeter behave nicer & more Wayland-native
|
||||
(fetchpatch {
|
||||
name = "2014-lomiri-greeter-wrapper-on-wayland.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/e655e14c7d420021193e37debd3e7da620b45429/debian/patches/2014_lomiri-greeter-wrapper-on-wayland.patch";
|
||||
hash = "sha256-aEId3UDqH1iUi9gV5IpW/5S5rke93UyZVr0jWlNYnOU=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "1001-lomiri-QT_QPA_PLATFORM-wayland.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/ebbe0f3f568bd145bb58a2e47f7112442328a0a5/debian/patches/2004_qt-qpa-platform-is-wayland.patch";
|
||||
hash = "sha256-4C6X2TW+yjZhqYPIcQ3GJeTKbz785i7p/DpT+vX1DSQ=";
|
||||
name = "2015-lomiri-greeter-use-wayland.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/2f5acfa085c901359bf6f6cccbce36d7e2981555/debian/patches/2015_lomiri-greeter-use-wayland.patch";
|
||||
hash = "sha256-fnTEVQnOBQVd95ucs+iDMcQFOevfQ8dckQg0PrtL/A0=";
|
||||
})
|
||||
|
||||
# Reduce desyncing of cursor
|
||||
(fetchpatch {
|
||||
name = "1002-lomiri-Fix-Lomiri-greeter.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/5f9d28fe6f0ba9ab7eed149b4da7f6b3f4eae55a/debian/patches/1008_lomiri-greeter-wayland.patch";
|
||||
hash = "sha256-vuNTKWA50krtx/+XB2pMI271q57N+kqWlfq54gtf/HI=";
|
||||
name = "1005-lomiri-cursor-always-follow-cursor-position-from-mir.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/f3ba943006f5469a8a7aa24f232d6383afb3bc74/debian/patches/1005_cursor-always-follow-cursor-position-from-mir.patch";
|
||||
hash = "sha256-FYWRHt3//gm3jT9dr35tH4PlZssMMA/zBhjkszgqTYo=";
|
||||
})
|
||||
|
||||
# Undo start-here integration & uglier colours for launcher
|
||||
(fetchpatch {
|
||||
name = "1004-lomiri-Dont-reset-OSK-setting.patch";
|
||||
url = "https://salsa.debian.org/ubports-team/lomiri/-/raw/ebbe0f3f568bd145bb58a2e47f7112442328a0a5/debian/patches/2005_dont-reset-alwaysShowOsk-to-system-defaults-on-login.patch";
|
||||
hash = "sha256-guq/Ykcq4WcuXxNKO1eA4sJFyGSpZo0gtyFTdeK/GeE=";
|
||||
name = "0001-lomiri-LauncherPanel-Use-Lomiri-upstream-home-logo-and-home-background-color.patch";
|
||||
url = "https://gitlab.com/ubports/development/core/lomiri/-/commit/defaabfaf4818ee6b618c97b34acf5e0ed2ebb2e.patch";
|
||||
hash = "sha256-9YRWMV+1UT+EQd9Uq1+6enNzz+HDlSt3LTPM1BKJxiE=";
|
||||
})
|
||||
|
||||
./9901-lomiri-Disable-Wizard.patch
|
||||
@@ -119,15 +136,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
substituteInPlace tests/mocks/CMakeLists.txt \
|
||||
--replace-fail 'add_subdirectory(QtMir/Application)' ""
|
||||
|
||||
# This needs to launch the *lomiri* indicators, now that datetime is split into lomiri and non-lomiri variants
|
||||
# Seems like the Debian patch that added this didn't read the lightdm greeter entry properly, so everything gets passed twice
|
||||
substituteInPlace data/lomiri-greeter.desktop.in.in \
|
||||
--replace-fail 'lomiri-greeter-wrapper @CMAKE_INSTALL_FULL_BINDIR@/lomiri --mode=greeter' 'lomiri-greeter-wrapper'
|
||||
substituteInPlace data/lomiri-greeter-wrapper \
|
||||
--replace-fail 'ayatana-indicators.target' 'lomiri-indicators.target'
|
||||
|
||||
# NixOS-ify
|
||||
|
||||
# Use Nix flake instead of Canonical's Ubuntu logo
|
||||
rm qml/Launcher/graphics/home.svg
|
||||
ln -s ${nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake-white.svg qml/Launcher/graphics/home.svg
|
||||
--replace-fail 'LOMIRI_BINARY:-lomiri' "LOMIRI_BINARY:-$out/bin/lomiri"
|
||||
|
||||
# Look up default wallpaper in current system
|
||||
substituteInPlace plugins/Utils/constants.cpp \
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
runCommand,
|
||||
glib,
|
||||
lomiri-schemas,
|
||||
lomiri-wallpapers,
|
||||
nixos-icons,
|
||||
writeText,
|
||||
extraGSettingsOverrides ? "",
|
||||
extraGSettingsOverridePackages ? [ ],
|
||||
nixos-artwork,
|
||||
}:
|
||||
|
||||
let
|
||||
# Overriding the background picture should be possible, but breaks within the VM tests.
|
||||
# It results in either a grey background (prolly indicating an error somewhere)
|
||||
# or hangs the session (also happens when using LSS, which sets it via AccountsService).
|
||||
#
|
||||
# So we can only override the launcher button details.
|
||||
# Button colour: https://github.com/NixOS/nixos-artwork/blob/51a27e4a011e95cb559e37d32c44cf89b50f5154/logo/README.md#colours
|
||||
gsettingsOverrides = writeText "lomiri-gschema-overrides" ''
|
||||
[com.lomiri.Shell.Launcher]
|
||||
logo-picture-uri='file://${nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake-white.svg'
|
||||
home-button-background-color='#5277C3'
|
||||
|
||||
${extraGSettingsOverrides}
|
||||
'';
|
||||
|
||||
gsettingsOverridePackages = [
|
||||
lomiri-schemas
|
||||
] ++ extraGSettingsOverridePackages;
|
||||
in
|
||||
runCommand "lomiri-gsettings-overrides" { preferLocalBuild = true; } ''
|
||||
dataDir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
|
||||
schemaDir="$dataDir/glib-2.0/schemas"
|
||||
mkdir -p "$schemaDir"
|
||||
|
||||
${lib.strings.concatMapStringsSep "\n" (
|
||||
pkg:
|
||||
"cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schemaDir\""
|
||||
) gsettingsOverridePackages}
|
||||
|
||||
chmod -R a+w "$dataDir"
|
||||
cp --no-preserve=mode "${gsettingsOverrides}" "$schemaDir/zz-nixos-defaults.gschema.override"
|
||||
|
||||
${lib.getExe' glib.dev "glib-compile-schemas"} --strict "$schemaDir" | tee gcs.log
|
||||
|
||||
if grep 'No schema files found' gcs.log >/dev/null; then
|
||||
exit 1
|
||||
fi
|
||||
''
|
||||
@@ -31,6 +31,7 @@ let
|
||||
teleports = callPackage ./applications/teleports { };
|
||||
|
||||
#### Data
|
||||
lomiri-gsettings-overrides = callPackage ./data/lomiri-gsettings-overrides { };
|
||||
lomiri-schemas = callPackage ./data/lomiri-schemas { };
|
||||
lomiri-session = callPackage ./data/lomiri-session { };
|
||||
lomiri-sounds = callPackage ./data/lomiri-sounds { };
|
||||
|
||||
@@ -117,6 +117,7 @@ import ./default.nix
|
||||
aarch64-unknown-linux-musl = "9ccb8f16656d2d4e412553ebaf13489198b915519873752dcebb886de50063c6";
|
||||
x86_64-apple-darwin = "b36b0bfac17e0a1f6cc06b9fdc4e2131ad578b4122a67792236b58650ae4c5c8";
|
||||
aarch64-apple-darwin = "dee921b9a41b1c3fbb088ad31dcca3b232de2cb89c268db75f40912eeaa474db";
|
||||
powerpc64-unknown-linux-gnu = "b56e903c6e4d661b6025d45b2675c31d513db207dbd85929c1a25473129275e3";
|
||||
powerpc64le-unknown-linux-gnu = "e1f16b2885237695f3cce7fc2f0128a938fc07462b076cb61bd2f06e5f8baf38";
|
||||
riscv64gc-unknown-linux-gnu = "6a72741671555fad7ffaceeaa32510c877438087ae71901ccf4a2b03a76c8439";
|
||||
s390x-unknown-linux-gnu = "498ec8be66b2c6d8bc77dd06e226d3cc7448bc508ebb9f6d7650db79350d0cb7";
|
||||
|
||||
@@ -17,6 +17,7 @@ PLATFORMS=(
|
||||
aarch64-unknown-linux-musl
|
||||
x86_64-apple-darwin
|
||||
aarch64-apple-darwin
|
||||
powerpc64-unknown-linux-gnu
|
||||
powerpc64le-unknown-linux-gnu
|
||||
riscv64gc-unknown-linux-gnu
|
||||
s390x-unknown-linux-gnu
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
(mkCoqDerivation {
|
||||
pname = "bignums";
|
||||
owner = "coq";
|
||||
owner = "rocq-community";
|
||||
inherit version;
|
||||
defaultVersion =
|
||||
let
|
||||
@@ -17,11 +17,12 @@
|
||||
in
|
||||
with lib.versions;
|
||||
lib.switch coq.coq-version [
|
||||
(case (range "9.0" "9.0") "9.0.0+rocq${coq.coq-version}")
|
||||
(case (range "9.0" "9.1") "9.0.0+rocq${coq.coq-version}")
|
||||
(case (range "8.13" "8.20") "9.0.0+coq${coq.coq-version}")
|
||||
(case (range "8.6" "8.17") "${coq.coq-version}.0")
|
||||
] null;
|
||||
|
||||
release."9.0.0+rocq9.1".sha256 = "sha256-MSjlfJs3JOakuShOj+isNlus0bKlZ+rkvzRoKZQK5RQ=";
|
||||
release."9.0.0+rocq9.0".sha256 = "sha256-ctnwpyNVhryEUA5YEsAImrcJsNMhtBgDSOz+z5Z4R78=";
|
||||
release."9.0.0+coq8.20".sha256 = "sha256-pkvyDaMXRalc6Uu1eBTuiqTpRauRrzu946c6TavyTKY=";
|
||||
release."9.0.0+coq8.19".sha256 = "sha256-02uL+qWbUveHe67zKfc8w3U0iN3X2DKBsvP3pKpW8KQ=";
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
{
|
||||
lib,
|
||||
mkCoqDerivation,
|
||||
coq,
|
||||
mathcomp-algebra,
|
||||
stdlib,
|
||||
version ? null,
|
||||
}:
|
||||
|
||||
mkCoqDerivation {
|
||||
pname = "fcsl-pcm";
|
||||
owner = "imdea-software";
|
||||
inherit version;
|
||||
|
||||
defaultVersion =
|
||||
let
|
||||
case = coq: mc: out: {
|
||||
cases = [
|
||||
coq
|
||||
mc
|
||||
];
|
||||
inherit out;
|
||||
};
|
||||
in
|
||||
with lib.versions;
|
||||
lib.switch
|
||||
[ coq.coq-version mathcomp-algebra.version ]
|
||||
[
|
||||
(case (range "9.0" "9.0") (range "2.4.0" "2.4.0") "2.2.0")
|
||||
]
|
||||
null;
|
||||
release."2.2.0".sha256 = "sha256-VnfK+RHWiq27hxEJ9stpVp609/dMiPH6UHFhzaHdAnM=";
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
propagatedBuildInputs = [
|
||||
mathcomp-algebra
|
||||
stdlib
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Coq library of Partial Commutative Monoids";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.proux01 ];
|
||||
};
|
||||
}
|
||||
@@ -16,6 +16,7 @@ let
|
||||
repo = "analysis";
|
||||
owner = "math-comp";
|
||||
|
||||
release."1.12.0".sha256 = "sha256-PF10NlZ+aqP3PX7+UsZwgJT9PEaDwzvrS/ZGzjP64Wo=";
|
||||
release."1.11.0".sha256 = "sha256-1apbzBvaLNw/8ARLUhGGy89CyXW+/6O4ckdxKPraiVc=";
|
||||
release."1.9.0".sha256 = "sha256-zj7WSDUg8ISWxcipGpjEwvvnLp1g8nm23BZiib/15+g=";
|
||||
release."1.8.0".sha256 = "sha256-2ZafDmZAwGB7sxdUwNIE3xvwBRw1kFDk0m5Vz+onWZc=";
|
||||
@@ -57,7 +58,7 @@ let
|
||||
lib.switch
|
||||
[ coq.coq-version mathcomp.version ]
|
||||
[
|
||||
(case (range "8.20" "9.0") (range "2.1.0" "2.4.0") "1.11.0")
|
||||
(case (range "8.20" "9.0") (range "2.1.0" "2.4.0") "1.12.0")
|
||||
(case (range "8.19" "8.20") (range "2.1.0" "2.3.0") "1.9.0")
|
||||
(case (range "8.17" "8.20") (range "2.0.0" "2.2.0") "1.1.0")
|
||||
(case (range "8.17" "8.19") (range "1.17.0" "1.19.0") "0.7.0")
|
||||
|
||||
@@ -32,7 +32,8 @@
|
||||
lib.switch
|
||||
[ coq.coq-version mathcomp-analysis.version ]
|
||||
[
|
||||
(case (range "8.20" "8.20") (isGe "1.10") "0.9.3")
|
||||
(case (range "8.20" "8.20") (isGe "1.12") "0.9.4")
|
||||
(case (range "8.19" "8.20") (range "1.10" "1.11") "0.9.3")
|
||||
(case (range "8.19" "8.20") (isGe "1.9") "0.9.1")
|
||||
(case (range "8.19" "8.20") (isGe "1.7") "0.7.7")
|
||||
(case (range "8.19" "8.20") (isGe "1.7") "0.7.5")
|
||||
@@ -44,6 +45,7 @@
|
||||
(case (range "8.15" "8.16") (range "0.5.4" "0.6.5") "0.5.1")
|
||||
]
|
||||
null;
|
||||
release."0.9.4".sha256 = "sha256-btHOBNMdXvlG2jxC04+4qmIjeyuaqtyugm2Ruj3lQr8=";
|
||||
release."0.9.3".sha256 = "sha256-8+cnVKNAvZ3MVV3BpS8UmCIxJphsQRBv3swek1eEBjE=";
|
||||
release."0.9.1".sha256 = "sha256-WI20HxMHr1ZUwOGPIUl+nRI8TxVUa2+F1xcGjRDHO9g=";
|
||||
release."0.7.7".sha256 = "sha256-kEbpMl7U+I2kvqi1VrjhIVFkZFO6h0tTHEUZRbHYG7E=";
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
in
|
||||
with lib.versions;
|
||||
lib.switch coq.coq-version [
|
||||
(case (isLe "9.0") "9.0.0")
|
||||
(case (isLe "9.1") "9.0.0")
|
||||
# the < 9.0 above is artificial as stdlib was included in Coq before
|
||||
] null;
|
||||
releaseRev = v: "V${v}";
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
hatchling,
|
||||
matplotlib,
|
||||
numpy,
|
||||
numpydoc,
|
||||
pytest,
|
||||
scipy,
|
||||
pythonOlder,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "allantools";
|
||||
version = "2024.06";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aewallin";
|
||||
repo = "allantools";
|
||||
tag = version;
|
||||
hash = "sha256-dF19aSpIioOm0BnwrLkMe/DtfgWSKFnX4c/Xs1O2Quw=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
hatchling
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
matplotlib
|
||||
numpy
|
||||
numpydoc
|
||||
pytest
|
||||
scipy
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"allantools"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Allan deviation and related time & frequency statistics library in Python";
|
||||
homepage = "https://github.com/aewallin/allantools";
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
maintainers = with lib.maintainers; [ kiranshila ];
|
||||
};
|
||||
}
|
||||
@@ -12,6 +12,7 @@
|
||||
numpy,
|
||||
scipy,
|
||||
colorama,
|
||||
packaging,
|
||||
|
||||
# tests
|
||||
jupyter,
|
||||
@@ -23,14 +24,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bayesian-optimization";
|
||||
version = "2.0.4";
|
||||
version = "3.0.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bayesian-optimization";
|
||||
repo = "BayesianOptimization";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-F1+M5znfI7lHGJRRTgmQxrLTYZmLc90Q0TCvpRoSVTU=";
|
||||
hash = "sha256-ruMxuMTXVpS5oaZk994xIjgUnhpybrvhvy69nvU5feE=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
@@ -40,6 +41,7 @@ buildPythonPackage rec {
|
||||
numpy
|
||||
scipy
|
||||
colorama
|
||||
packaging
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "globus-sdk";
|
||||
version = "3.57.0";
|
||||
version = "3.59.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
owner = "globus";
|
||||
repo = "globus-sdk-python";
|
||||
tag = version;
|
||||
hash = "sha256-pwAr8Z8Qoc+LjRtF2NRu4lAN/7ha7jogw1RnDhuobZs=";
|
||||
hash = "sha256-95CcuKCGjFezFpz7UJaA/j9ubFNaNkDQsPnwrt1ZyvA=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -30,10 +30,10 @@ buildPythonPackage rec {
|
||||
patches = [
|
||||
# fixes support for numpy 2.x, the PR is not yet merged https://github.com/telegraphic/hickle/pull/186
|
||||
# FIXME: Remove this patch when the numpy 2.x support arrives
|
||||
(fetchpatch {
|
||||
url = "https://github.com/cjwatson/hickle/commit/246d8e82c805e2e49ea0abd39abc9b2d800bde59.patch";
|
||||
hash = "sha256-IEVw2K7S1nCkzgn9q0xghm4brfXcallNjzXpt2cRq1M=";
|
||||
})
|
||||
./numpy-2.x-support.patch
|
||||
# fixes test failing with numpy 2.3 as ndarray.tostring was deleted
|
||||
# FIXME: delete once https://github.com/telegraphic/hickle/pull/187 is merged
|
||||
./numpy-2.3-ndarray-tostring.patch
|
||||
];
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
From 7a0d0e625dd9e92159a145a26dd68ef3b61fde6e Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Volkov <taranarmo@gmail.com>
|
||||
Date: Sun, 29 Jun 2025 10:54:00 +0200
|
||||
Subject: [PATCH] replace `ndarray.tostring` with `ndarray.tobytes`
|
||||
|
||||
`ndarray.tostring` is deprecated since numpy 1.19 and removed in numpy 2.3
|
||||
https://numpy.org/doc/stable/release/2.3.0-notes.html
|
||||
---
|
||||
hickle/tests/test_06_load_astropy.py | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/hickle/tests/test_06_load_astropy.py b/hickle/tests/test_06_load_astropy.py
|
||||
index 628a4b3..b630bfd 100755
|
||||
--- a/hickle/tests/test_06_load_astropy.py
|
||||
+++ b/hickle/tests/test_06_load_astropy.py
|
||||
@@ -166,7 +166,7 @@ def test_astropy_time_array(h5_data,compression_kwargs):
|
||||
assert reloaded.format == t1.format
|
||||
assert reloaded.scale == t1.scale
|
||||
for index in range(len(t1)):
|
||||
- assert reloaded.value[index].tostring() == t1.value[index].tostring()
|
||||
+ assert reloaded.value[index].tobytes() == t1.value[index].tobytes()
|
||||
del h_dataset.attrs['np_dtype']
|
||||
|
||||
reloaded = load_astropy.load_astropy_time_dataset(h_dataset,b'astropy_time',t1.__class__)
|
||||
@@ -174,7 +174,7 @@ def test_astropy_time_array(h5_data,compression_kwargs):
|
||||
assert reloaded.format == t1.format
|
||||
assert reloaded.scale == t1.scale
|
||||
for index in range(len(t1)):
|
||||
- assert reloaded.value[index].tostring() == t1.value[index].tostring()
|
||||
+ assert reloaded.value[index].tobytes() == t1.value[index].tobytes()
|
||||
loop_counter += 1
|
||||
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
From 246d8e82c805e2e49ea0abd39abc9b2d800bde59 Mon Sep 17 00:00:00 2001
|
||||
From: Colin Watson <cjwatson@debian.org>
|
||||
Date: Mon, 3 Feb 2025 15:28:10 +0000
|
||||
Subject: [PATCH] Support numpy 2.0
|
||||
|
||||
See: https://numpy.org/devdocs/numpy_2_0_migration_guide.html#adapting-to-changes-in-the-copy-keyword
|
||||
---
|
||||
hickle/legacy_v3/loaders/load_numpy.py | 2 +-
|
||||
hickle/loaders/load_builtins.py | 4 ++--
|
||||
hickle/loaders/load_numpy.py | 2 +-
|
||||
hickle/tests/test_02_hickle_lookup.py | 6 +++---
|
||||
4 files changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/hickle/legacy_v3/loaders/load_numpy.py b/hickle/legacy_v3/loaders/load_numpy.py
|
||||
index 0fd6c0a4..d17044bc 100644
|
||||
--- a/hickle/legacy_v3/loaders/load_numpy.py
|
||||
+++ b/hickle/legacy_v3/loaders/load_numpy.py
|
||||
@@ -115,7 +115,7 @@ def load_np_scalar_dataset(h_node):
|
||||
|
||||
def load_ndarray_dataset(h_node):
|
||||
py_type, data = get_type_and_data(h_node)
|
||||
- return np.array(data, copy=False)
|
||||
+ return np.asarray(data)
|
||||
|
||||
def load_ndarray_masked_dataset(h_node):
|
||||
py_type, data = get_type_and_data(h_node)
|
||||
diff --git a/hickle/loaders/load_builtins.py b/hickle/loaders/load_builtins.py
|
||||
index 7cfbf281..53b74429 100644
|
||||
--- a/hickle/loaders/load_builtins.py
|
||||
+++ b/hickle/loaders/load_builtins.py
|
||||
@@ -170,7 +170,7 @@ def create_listlike_dataset(py_obj, h_group, name,list_len = -1,item_dtype = Non
|
||||
# strings and bytes are stored as array of bytes with strings encoded
|
||||
# using utf8 encoding
|
||||
string_data = bytearray(py_obj,"utf8") if isinstance(py_obj,str) else memoryview(py_obj)
|
||||
- string_data = np.array(string_data,copy=False)
|
||||
+ string_data = np.asarray(string_data)
|
||||
string_data.dtype = 'S1'
|
||||
dataset = h_group.create_dataset( name, data = string_data,shape = (1,string_data.size), **kwargs)
|
||||
dataset.attrs["str_type"] = py_obj.__class__.__name__.encode("ascii")
|
||||
@@ -385,7 +385,7 @@ def load_list_dataset(h_node,base_type,py_obj_type):
|
||||
if h_node.dtype.itemsize > 1 and 'bytes' in h_node.dtype.name:
|
||||
|
||||
# string dataset 4.0.x style convert it back to python string
|
||||
- content = np.array(content, copy=False, dtype=str).tolist()
|
||||
+ content = np.asarray(content, dtype=str).tolist()
|
||||
else:
|
||||
|
||||
# decode bytes representing python string before final conversion
|
||||
diff --git a/hickle/loaders/load_numpy.py b/hickle/loaders/load_numpy.py
|
||||
index a4c76e91..bff98187 100644
|
||||
--- a/hickle/loaders/load_numpy.py
|
||||
+++ b/hickle/loaders/load_numpy.py
|
||||
@@ -232,7 +232,7 @@ def load_ndarray_dataset(h_node,base_type,py_obj_type):
|
||||
# not converted to list of string but saved as ar consequently
|
||||
# itemsize of dtype is > 1
|
||||
string_data = bytes(string_data).decode("utf8")
|
||||
- return np.array(string_data,copy=False,dtype=dtype)
|
||||
+ return np.asarray(string_data,dtype=dtype)
|
||||
if issubclass(py_obj_type,np.matrix):
|
||||
return py_obj_type(data=h_node[()],dtype=dtype)
|
||||
# TODO how to restore other ndarray derived object_types
|
||||
diff --git a/hickle/tests/test_02_hickle_lookup.py b/hickle/tests/test_02_hickle_lookup.py
|
||||
index 628a2b12..dd91ffd1 100644
|
||||
--- a/hickle/tests/test_02_hickle_lookup.py
|
||||
+++ b/hickle/tests/test_02_hickle_lookup.py
|
||||
@@ -816,7 +816,7 @@ def test_ReferenceManager_get_root(h5_data):
|
||||
content = data_group.create_dataset('mydata',data=12)
|
||||
type_table = root_group.create_group('hickle_types_table')
|
||||
int_pickle_string = bytearray(pickle.dumps(int))
|
||||
- int_np_entry = np.array(int_pickle_string,copy=False)
|
||||
+ int_np_entry = np.asarray(int_pickle_string)
|
||||
int_np_entry.dtype = 'S1'
|
||||
int_entry = type_table.create_dataset(str(len(type_table)),data = int_np_entry,shape =(1,int_np_entry.size))
|
||||
int_base_type = b'int'
|
||||
@@ -878,7 +878,7 @@ def test_ReferenceManager(h5_data):
|
||||
with pytest.raises(lookup.ReferenceError):
|
||||
reference_manager = lookup.ReferenceManager(false_root)
|
||||
int_pickle_string = bytearray(pickle.dumps(int))
|
||||
- int_np_entry = np.array(int_pickle_string,copy=False)
|
||||
+ int_np_entry = np.asarray(int_pickle_string)
|
||||
int_np_entry.dtype = 'S1'
|
||||
int_entry = type_table.create_dataset(str(len(type_table)),data = int_np_entry,shape =(1,int_np_entry.size))
|
||||
int_base_type = b'int'
|
||||
@@ -1052,7 +1052,7 @@ def test_ReferenceManager_store_type(h5_data,compression_kwargs):
|
||||
@pytest.mark.no_compression
|
||||
def test_ReferenceManager_get_manager(h5_data):
|
||||
h_node = h5_data.create_group('some_list')
|
||||
- item_data = np.array(memoryview(b'hallo welt lore grueszet dich ipsum aus der lore von ipsum gelort in ipsum'),copy=False)
|
||||
+ item_data = np.asarray(memoryview(b'hallo welt lore grueszet dich ipsum aus der lore von ipsum gelort in ipsum'))
|
||||
item_data.dtype = 'S1'
|
||||
h_item = h_node.create_dataset('0',data=item_data,shape=(1,item_data.size))
|
||||
with lookup.ReferenceManager.create_manager(h5_data) as memo:
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "lizard";
|
||||
version = "1.17.30";
|
||||
version = "1.17.31";
|
||||
format = "setuptools";
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
@@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||
owner = "terryyin";
|
||||
repo = "lizard";
|
||||
rev = version;
|
||||
hash = "sha256-yXiRbC85IeeNR8rWSqLTQD9qy2CzAhlDD7YeTm5Vj9c=";
|
||||
hash = "sha256-8lu4EknyAI+gn7GOSo13RRHNogpZdgxJ9fTvy7NyIsM=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "millheater";
|
||||
version = "0.12.5";
|
||||
version = "012.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.10";
|
||||
@@ -19,7 +19,7 @@ buildPythonPackage rec {
|
||||
owner = "Danielhiversen";
|
||||
repo = "pymill";
|
||||
tag = version; # https://github.com/Danielhiversen/pymill/issues/87
|
||||
hash = "sha256-DGMG6LabfKGmQ6MDm/skqeQuOhSlr1ssZ2Z7fItzOt0=";
|
||||
hash = "sha256-tR6MZIgCazGcXRIaSXyDYIEp+kD6xyrpOXORbi8LV7E=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -9,12 +9,12 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pycollada";
|
||||
version = "0.9";
|
||||
version = "0.9.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-gk9ugJ5RDWSbWYSm6o5hTOXPJwyB6rb76q8K5x3mpq8=";
|
||||
hash = "sha256-fKEiZ74KK5PkldYDbmsnQCOpRX3tZBlU6wxHDv4VPW4=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
aiohttp,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyforked-daapd";
|
||||
version = "0.1.14";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-v1NOlwP8KtBsQiqwbx1y8p8lABEuEJdNhvR2kGzLxKs=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
aiohttp
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pyforked_daapd"
|
||||
];
|
||||
|
||||
# Tests require a running forked-daapd server
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python interface for forked-daapd";
|
||||
homepage = "https://github.com/uvjustin/pyforked-daapd";
|
||||
changelog = "https://github.com/uvjustin/pyforked-daapd/blob/v${version}/CHANGES.txt";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
||||
@@ -11,14 +11,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pynetdicom";
|
||||
version = "3.0.2";
|
||||
version = "3.0.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pydicom";
|
||||
repo = "pynetdicom";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-0ylx0EMPfvXxT7kQJYK+gsAFb/bkfRPDiC7Z7s/PvTk=";
|
||||
hash = "sha256-CiCP5H0RVbbeNQKO/GpP/hZ6nBE5Q9Wp+/b/wHehIpA=";
|
||||
};
|
||||
|
||||
build-system = [ flit-core ];
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-gitlab";
|
||||
version = "6.0.0";
|
||||
version = "6.1.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@@ -21,7 +21,7 @@ buildPythonPackage rec {
|
||||
src = fetchPypi {
|
||||
pname = "python_gitlab";
|
||||
inherit version;
|
||||
hash = "sha256-cEv1SMJY8c/i8JuOzprxzI+mroKKxv5qHL6VfJhDFBQ=";
|
||||
hash = "sha256-Bi1pQ2mbCbzkD3J/DQkGoLJUykVVk/gXRbsaNSU17nc=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
@@ -1,20 +1,11 @@
|
||||
From 2751c5de5c61c90b56e3e392a41847f4c47258fd Mon Sep 17 00:00:00 2001
|
||||
From: SomeoneSerge <else+aalto@someonex.net>
|
||||
Date: Sun, 13 Oct 2024 14:16:48 +0000
|
||||
Subject: [PATCH 1/3] _build: allow extra cc flags
|
||||
|
||||
---
|
||||
python/triton/runtime/build.py | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/python/triton/runtime/build.py b/python/triton/runtime/build.py
|
||||
index d7baeb286..d334dce77 100644
|
||||
index 1b76548d4..2756dccdb 100644
|
||||
--- a/python/triton/runtime/build.py
|
||||
+++ b/python/triton/runtime/build.py
|
||||
@@ -42,9 +42,17 @@ def _build(name, src, srcdir, library_dirs, include_dirs, libraries):
|
||||
py_include_dir = sysconfig.get_paths(scheme=scheme)["include"]
|
||||
include_dirs = include_dirs + [srcdir, py_include_dir]
|
||||
cc_cmd = [cc, src, "-O3", "-shared", "-fPIC", "-o", so]
|
||||
@@ -33,5 +33,13 @@ def _build(name, src, srcdir, library_dirs, include_dirs, libraries):
|
||||
cc_cmd += [f'-l{lib}' for lib in libraries]
|
||||
cc_cmd += [f"-L{dir}" for dir in library_dirs]
|
||||
cc_cmd += [f"-I{dir}" for dir in include_dirs if dir is not None]
|
||||
+
|
||||
+ # Nixpkgs support branch
|
||||
+ # Allows passing e.g. extra -Wl,-rpath
|
||||
@@ -23,13 +14,5 @@ index d7baeb286..d334dce77 100644
|
||||
+ import shlex
|
||||
+ cc_cmd.extend(shlex.split(cc_cmd_extra_flags))
|
||||
+
|
||||
cc_cmd += [f'-l{lib}' for lib in libraries]
|
||||
cc_cmd += [f"-L{dir}" for dir in library_dirs]
|
||||
- cc_cmd += [f"-I{dir}" for dir in include_dirs]
|
||||
+ cc_cmd += [f"-I{dir}" for dir in include_dirs if dir is not None]
|
||||
ret = subprocess.check_call(cc_cmd)
|
||||
if ret == 0:
|
||||
return so
|
||||
--
|
||||
2.46.0
|
||||
|
||||
subprocess.check_call(cc_cmd, stdout=subprocess.DEVNULL)
|
||||
return so
|
||||
|
||||
-64
@@ -1,64 +0,0 @@
|
||||
From 587d1f3428eca63544238802f19e0be670d03244 Mon Sep 17 00:00:00 2001
|
||||
From: SomeoneSerge <else@someonex.net>
|
||||
Date: Mon, 29 Jul 2024 14:31:11 +0000
|
||||
Subject: [PATCH] setup.py: introduce TRITON_OFFLINE_BUILD
|
||||
|
||||
To prevent any vendoring whatsoever
|
||||
---
|
||||
python/setup.py | 26 ++++++++++++++++++++++++--
|
||||
1 file changed, 24 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/python/setup.py b/python/setup.py
|
||||
index 73800ec40..4e5b04de4 100644
|
||||
--- a/python/setup.py
|
||||
+++ b/python/setup.py
|
||||
@@ -112,6 +112,20 @@ def get_env_with_keys(key: list):
|
||||
return os.environ[k]
|
||||
return ""
|
||||
|
||||
+def is_offline_build() -> bool:
|
||||
+ """
|
||||
+ Downstream projects and distributions which bootstrap their own dependencies from scratch
|
||||
+ and run builds in offline sandboxes
|
||||
+ may set `TRITON_OFFLINE_BUILD` in the build environment to prevent any attempts at downloading
|
||||
+ pinned dependencies from the internet or at using dependencies vendored in-tree.
|
||||
+
|
||||
+ Dependencies must be defined using respective search paths (cf. `syspath_var_name` in `Package`).
|
||||
+ Missing dependencies lead to an early abortion.
|
||||
+ Dependencies' compatibility is not verified.
|
||||
+
|
||||
+ Note that this flag isn't tested by the CI and does not provide any guarantees.
|
||||
+ """
|
||||
+ return os.environ.get("TRITON_OFFLINE_BUILD", "") != ""
|
||||
|
||||
# --- third party packages -----
|
||||
|
||||
@@ -220,8 +234,14 @@ def get_thirdparty_packages(packages: list):
|
||||
if os.environ.get(p.syspath_var_name):
|
||||
package_dir = os.environ[p.syspath_var_name]
|
||||
version_file_path = os.path.join(package_dir, "version.txt")
|
||||
- if p.syspath_var_name not in os.environ and\
|
||||
- (not os.path.exists(version_file_path) or Path(version_file_path).read_text() != p.url):
|
||||
+
|
||||
+ input_defined = p.syspath_var_name not in os.environ
|
||||
+ input_exists = input_defined and os.path.exists(version_file_path)
|
||||
+ input_compatible = input_exists and Path(version_file_path).read_text() == p.url
|
||||
+
|
||||
+ if is_offline_build() and not input_defined:
|
||||
+ raise RuntimeError(f"Requested an offline build but {p.syspath_var_name} is not set")
|
||||
+ if not is_offline_build() and not input_compatible:
|
||||
with contextlib.suppress(Exception):
|
||||
shutil.rmtree(package_root_dir)
|
||||
os.makedirs(package_root_dir, exist_ok=True)
|
||||
@@ -245,6 +265,8 @@ def get_thirdparty_packages(packages: list):
|
||||
|
||||
|
||||
def download_and_copy(name, src_path, variable, version, url_func):
|
||||
+ if is_offline_build():
|
||||
+ return
|
||||
triton_cache_path = get_triton_cache_path()
|
||||
if variable in os.environ:
|
||||
return
|
||||
--
|
||||
2.45.1
|
||||
|
||||
+6
-48
@@ -1,50 +1,11 @@
|
||||
From 7407cb03eec82768e333909d87b7668b633bfe86 Mon Sep 17 00:00:00 2001
|
||||
From: SomeoneSerge <else+aalto@someonex.net>
|
||||
Date: Sun, 13 Oct 2024 14:28:48 +0000
|
||||
Subject: [PATCH 2/3] {nvidia,amd}/driver: short-circuit before ldconfig
|
||||
|
||||
---
|
||||
python/triton/runtime/build.py | 6 +++---
|
||||
third_party/amd/backend/driver.py | 7 +++++++
|
||||
third_party/nvidia/backend/driver.py | 3 +++
|
||||
3 files changed, 13 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/python/triton/runtime/build.py b/python/triton/runtime/build.py
|
||||
index d334dce77..a64e98da0 100644
|
||||
--- a/python/triton/runtime/build.py
|
||||
+++ b/python/triton/runtime/build.py
|
||||
@@ -42,6 +42,9 @@ def _build(name, src, srcdir, library_dirs, include_dirs, libraries):
|
||||
py_include_dir = sysconfig.get_paths(scheme=scheme)["include"]
|
||||
include_dirs = include_dirs + [srcdir, py_include_dir]
|
||||
cc_cmd = [cc, src, "-O3", "-shared", "-fPIC", "-o", so]
|
||||
+ cc_cmd += [f'-l{lib}' for lib in libraries]
|
||||
+ cc_cmd += [f"-L{dir}" for dir in library_dirs]
|
||||
+ cc_cmd += [f"-I{dir}" for dir in include_dirs if dir is not None]
|
||||
|
||||
# Nixpkgs support branch
|
||||
# Allows passing e.g. extra -Wl,-rpath
|
||||
@@ -50,9 +53,6 @@ def _build(name, src, srcdir, library_dirs, include_dirs, libraries):
|
||||
import shlex
|
||||
cc_cmd.extend(shlex.split(cc_cmd_extra_flags))
|
||||
|
||||
- cc_cmd += [f'-l{lib}' for lib in libraries]
|
||||
- cc_cmd += [f"-L{dir}" for dir in library_dirs]
|
||||
- cc_cmd += [f"-I{dir}" for dir in include_dirs if dir is not None]
|
||||
ret = subprocess.check_call(cc_cmd)
|
||||
if ret == 0:
|
||||
return so
|
||||
diff --git a/third_party/amd/backend/driver.py b/third_party/amd/backend/driver.py
|
||||
index 0a8cd7bed..aab8805f6 100644
|
||||
index ca712f904..0961d2dda 100644
|
||||
--- a/third_party/amd/backend/driver.py
|
||||
+++ b/third_party/amd/backend/driver.py
|
||||
@@ -24,6 +24,13 @@ def _get_path_to_hip_runtime_dylib():
|
||||
return env_libhip_path
|
||||
raise RuntimeError(f"TRITON_LIBHIP_PATH '{env_libhip_path}' does not point to a valid {lib_name}")
|
||||
@@ -79,6 +79,9 @@ def _get_path_to_hip_runtime_dylib():
|
||||
return mmapped_path
|
||||
raise RuntimeError(f"memory mapped '{mmapped_path}' in process does not point to a valid {lib_name}")
|
||||
|
||||
+ # ...on release/3.1.x:
|
||||
+ # return mmapped_path
|
||||
+ # raise RuntimeError(f"memory mapped '{mmapped_path}' in process does not point to a valid {lib_name}")
|
||||
+
|
||||
+ if os.path.isdir("@libhipDir@"):
|
||||
+ return ["@libhipDir@"]
|
||||
+
|
||||
@@ -52,10 +13,10 @@ index 0a8cd7bed..aab8805f6 100644
|
||||
|
||||
import site
|
||||
diff --git a/third_party/nvidia/backend/driver.py b/third_party/nvidia/backend/driver.py
|
||||
index 90f71138b..30fbadb2a 100644
|
||||
index d088ec092..625de2db8 100644
|
||||
--- a/third_party/nvidia/backend/driver.py
|
||||
+++ b/third_party/nvidia/backend/driver.py
|
||||
@@ -21,6 +21,9 @@ def libcuda_dirs():
|
||||
@@ -23,6 +23,9 @@ def libcuda_dirs():
|
||||
if env_libcuda_path:
|
||||
return [env_libcuda_path]
|
||||
|
||||
@@ -65,6 +26,3 @@ index 90f71138b..30fbadb2a 100644
|
||||
libs = subprocess.check_output(["/sbin/ldconfig", "-p"]).decode()
|
||||
# each line looks like the following:
|
||||
# libcuda.so.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libcuda.so.1
|
||||
--
|
||||
2.46.0
|
||||
|
||||
|
||||
@@ -1,26 +1,14 @@
|
||||
From e503e572b6d444cd27f1cdf124aaf553aa3a8665 Mon Sep 17 00:00:00 2001
|
||||
From: SomeoneSerge <else+aalto@someonex.net>
|
||||
Date: Mon, 14 Oct 2024 00:12:05 +0000
|
||||
Subject: [PATCH 4/4] nvidia: allow static ptxas path
|
||||
|
||||
---
|
||||
third_party/nvidia/backend/compiler.py | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/third_party/nvidia/backend/compiler.py b/third_party/nvidia/backend/compiler.py
|
||||
index 6d7994923..6720e8f97 100644
|
||||
index 960334744..269e22e6e 100644
|
||||
--- a/third_party/nvidia/backend/compiler.py
|
||||
+++ b/third_party/nvidia/backend/compiler.py
|
||||
@@ -20,6 +20,9 @@ def _path_to_binary(binary: str):
|
||||
@@ -38,6 +38,9 @@ def _path_to_binary(binary: str):
|
||||
os.path.join(os.path.dirname(__file__), "bin", binary),
|
||||
]
|
||||
|
||||
+ import shlex
|
||||
+ paths.extend(shlex.split("@nixpkgsExtraBinaryPaths@"))
|
||||
+
|
||||
for bin in paths:
|
||||
if os.path.exists(bin) and os.path.isfile(bin):
|
||||
result = subprocess.check_output([bin, "--version"], stderr=subprocess.STDOUT)
|
||||
--
|
||||
2.46.0
|
||||
|
||||
for path in paths:
|
||||
if os.path.exists(path) and os.path.isfile(path):
|
||||
result = subprocess.check_output([path, "--version"], stderr=subprocess.STDOUT)
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
pybind11,
|
||||
python,
|
||||
pytestCheckHook,
|
||||
writableTmpDirAsHomeHook,
|
||||
stdenv,
|
||||
replaceVars,
|
||||
setuptools,
|
||||
@@ -27,22 +28,21 @@
|
||||
triton,
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
buildPythonPackage rec {
|
||||
pname = "triton";
|
||||
version = "3.1.0";
|
||||
version = "3.3.1";
|
||||
pyproject = true;
|
||||
|
||||
# Remember to bump triton-llvm as well!
|
||||
src = fetchFromGitHub {
|
||||
owner = "triton-lang";
|
||||
repo = "triton";
|
||||
# latest branch commit from https://github.com/triton-lang/triton/commits/release/3.1.x/
|
||||
rev = "cf34004b8a67d290a962da166f5aa2fc66751326";
|
||||
hash = "sha256-233fpuR7XXOaSKN+slhJbE/CMFzAqCRCE4V4rIoJZrk=";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-XLw7s5K0j4mfIvNMumlHkUpklSzVSTRyfGazZ4lLpn0=";
|
||||
};
|
||||
|
||||
patches =
|
||||
[
|
||||
./0001-setup.py-introduce-TRITON_OFFLINE_BUILD.patch
|
||||
(replaceVars ./0001-_build-allow-extra-cc-flags.patch {
|
||||
ccCmdExtraFlags = "-Wl,-rpath,${addDriverRunpath.driverLink}/lib";
|
||||
})
|
||||
@@ -65,24 +65,15 @@ buildPythonPackage {
|
||||
# Use our `cmakeFlags` instead and avoid downloading dependencies
|
||||
# remove any downloads
|
||||
substituteInPlace python/setup.py \
|
||||
--replace-fail "get_json_package_info(), get_pybind11_package_info()" ""\
|
||||
--replace-fail "get_pybind11_package_info(), get_llvm_package_info()" ""\
|
||||
--replace-fail 'packages += ["triton/profiler"]' ""\
|
||||
--replace-fail "curr_version != version" "False"
|
||||
--replace-fail "[get_json_package_info()]" "[]"\
|
||||
--replace-fail "[get_llvm_package_info()]" "[]"\
|
||||
--replace-fail 'packages += ["triton/profiler"]' "pass"\
|
||||
--replace-fail "curr_version.group(1) != version" "False"
|
||||
|
||||
# Don't fetch googletest
|
||||
substituteInPlace unittest/CMakeLists.txt \
|
||||
--replace-fail "include (\''${CMAKE_CURRENT_SOURCE_DIR}/googletest.cmake)" ""\
|
||||
substituteInPlace cmake/AddTritonUnitTest.cmake \
|
||||
--replace-fail "include(\''${PROJECT_SOURCE_DIR}/unittest/googletest.cmake)" ""\
|
||||
--replace-fail "include(GoogleTest)" "find_package(GTest REQUIRED)"
|
||||
|
||||
# Patch the source code to make sure it doesn't specify a non-existent PTXAS version.
|
||||
# CUDA 12.6 (the current default/max) tops out at PTXAS version 8.5.
|
||||
# NOTE: This is fixed in `master`:
|
||||
# https://github.com/triton-lang/triton/commit/f48dbc1b106c93144c198fbf3c4f30b2aab9d242
|
||||
substituteInPlace "$NIX_BUILD_TOP/$sourceRoot/third_party/nvidia/backend/compiler.py" \
|
||||
--replace-fail \
|
||||
'return 80 + minor' \
|
||||
'return 80 + min(minor, 5)'
|
||||
'';
|
||||
|
||||
build-system = [ setuptools ];
|
||||
@@ -97,6 +88,9 @@ buildPythonPackage {
|
||||
# because we only support cudaPackages on x86_64-linux atm
|
||||
lit
|
||||
llvm
|
||||
|
||||
# Upstream's setup.py tries to write cache somewhere in ~/
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@@ -125,9 +119,6 @@ buildPythonPackage {
|
||||
# Ensure that the build process uses the requested number of cores
|
||||
export MAX_JOBS="$NIX_BUILD_CORES"
|
||||
|
||||
# Upstream's setup.py tries to write cache somewhere in ~/
|
||||
export HOME=$(mktemp -d)
|
||||
|
||||
# Upstream's github actions patch setup.cfg to write base-dir. May be redundant
|
||||
echo "
|
||||
[build_ext]
|
||||
@@ -193,13 +184,15 @@ buildPythonPackage {
|
||||
];
|
||||
|
||||
dontBuild = true;
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
preCheck = ''
|
||||
cd python/test/unit
|
||||
export HOME=$TMPDIR
|
||||
'';
|
||||
checkPhase = "pytestCheckPhase";
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
mkRocqDerivation {
|
||||
pname = "bignums";
|
||||
owner = "coq";
|
||||
owner = "rocq-community";
|
||||
inherit version;
|
||||
defaultVersion =
|
||||
let
|
||||
@@ -16,11 +16,12 @@ mkRocqDerivation {
|
||||
in
|
||||
with lib.versions;
|
||||
lib.switch rocq-core.rocq-version [
|
||||
(case (range "9.0" "9.0") "9.0.0+rocq${rocq-core.rocq-version}")
|
||||
(case (range "9.0" "9.1") "9.0.0+rocq${rocq-core.rocq-version}")
|
||||
] null;
|
||||
|
||||
release."9.0.0+rocq9.0".sha256 = "sha256-ctnwpyNVhryEUA5YEsAImrcJsNMhtBgDSOz+z5Z4R78=";
|
||||
releaseRev = v: "${if lib.versions.isGe "9.0" v then "v" else "V"}${v}";
|
||||
release."9.0.0+rocq9.1".sha256 = "sha256-MSjlfJs3JOakuShOj+isNlus0bKlZ+rkvzRoKZQK5RQ=";
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
mlPlugin = true;
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ mkRocqDerivation {
|
||||
|
||||
pname = "stdlib";
|
||||
repo = "stdlib";
|
||||
owner = "coq";
|
||||
owner = "rocq-prover";
|
||||
opam-name = "rocq-stdlib";
|
||||
|
||||
inherit version;
|
||||
@@ -18,7 +18,7 @@ mkRocqDerivation {
|
||||
in
|
||||
with lib.versions;
|
||||
lib.switch rocq-core.version [
|
||||
(case (isEq "9.0") "9.0.0")
|
||||
(case (range "9.0" "9.1") "9.0.0")
|
||||
] null;
|
||||
releaseRev = v: "V${v}";
|
||||
|
||||
|
||||
@@ -29,7 +29,6 @@
|
||||
|
||||
{
|
||||
lib,
|
||||
cargo-pgrx,
|
||||
pkg-config,
|
||||
rustPlatform,
|
||||
stdenv,
|
||||
@@ -64,6 +63,8 @@ lib.extendMkDerivation {
|
||||
buildFeatures ? [ ],
|
||||
cargoBuildFlags ? [ ],
|
||||
cargoPgrxFlags ? [ ],
|
||||
# pinned dependencies
|
||||
cargo-pgrx,
|
||||
postgresql,
|
||||
# cargo-pgrx calls rustfmt on generated bindings, this is not strictly necessary, so we avoid the
|
||||
# dependency here. Set to false and provide rustfmt in nativeBuildInputs, if you need it, e.g.
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
{
|
||||
lib,
|
||||
darwin,
|
||||
fetchCrate,
|
||||
lib,
|
||||
openssl,
|
||||
pkg-config,
|
||||
rustPlatform,
|
||||
stdenv,
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -15,16 +13,16 @@ let
|
||||
hash,
|
||||
cargoHash,
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "cargo-pgrx";
|
||||
|
||||
inherit version;
|
||||
|
||||
src = fetchCrate {
|
||||
inherit version pname hash;
|
||||
inherit version hash;
|
||||
pname = "cargo-pgrx";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
inherit cargoHash;
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -44,12 +42,12 @@ let
|
||||
"--skip=command::schema::tests::test_parse_managed_postmasters"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Build Postgres Extensions with Rust";
|
||||
homepage = "https://github.com/pgcentralfoundation/pgrx";
|
||||
changelog = "https://github.com/pgcentralfoundation/pgrx/releases/tag/v${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [
|
||||
happysalada
|
||||
matthiasbeyer
|
||||
];
|
||||
@@ -64,12 +62,6 @@ in
|
||||
cargoHash = "sha256-zYjqE7LZLnTaVxWAPWC1ncEjCMlrhy4THtgecB7wBYY=";
|
||||
};
|
||||
|
||||
cargo-pgrx_0_12_5 = generic {
|
||||
version = "0.12.5";
|
||||
hash = "sha256-U2kF+qjQwMTaocv5f4p5y3qmPUsTzdvAp8mz9cn/COw=";
|
||||
cargoHash = "sha256-CycwWvxYrHj7lmTiiNC1WdbFgrdlGr/M3qTN/N+7xQA=";
|
||||
};
|
||||
|
||||
cargo-pgrx_0_12_6 = generic {
|
||||
version = "0.12.6";
|
||||
hash = "sha256-7aQkrApALZe6EoQGVShGBj0UIATnfOy2DytFj9IWdEA=";
|
||||
@@ -81,4 +73,13 @@ in
|
||||
hash = "sha256-oMToAhKkRiCyC8JYS0gmo/XX3QVcVtF5mUV0aQjd+p8=";
|
||||
cargoHash = "sha256-RawGAQGtG2QVDCMbwjmUEaH6rDeRiBvvJsGCY8wySw0=";
|
||||
};
|
||||
|
||||
# Default version for direct usage.
|
||||
# Not to be used with buildPgrxExtension, where it should be pinned.
|
||||
# When you make an extension use the latest version, *copy* this to a separate pinned attribute.
|
||||
cargo-pgrx = generic {
|
||||
version = "0.15.0";
|
||||
hash = "sha256-sksRfNV6l8YbdI6fzrEtanpDVV4sh14JXLqYBydHwy0=";
|
||||
cargoHash = "sha256-c+n1bJMO9254kT4e6exVNhlIouzkkzrRIOVzR9lZeg4=";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
libopus
|
||||
xorg.libXrandr
|
||||
xorg.libXcursor
|
||||
xorg.libXScrnSaver
|
||||
];
|
||||
|
||||
postFixup = ''
|
||||
|
||||
@@ -22,13 +22,13 @@ stdenv.mkDerivation {
|
||||
nativeBuildInputs
|
||||
postFixup
|
||||
;
|
||||
version = "0-unstable-2024-04-13";
|
||||
version = "0-unstable-2025-06-25";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fte-team";
|
||||
repo = "fteqw";
|
||||
rev = "1f9f3635f0aef3b2eed6b40e35fcf6223c6ad533";
|
||||
hash = "sha256-AgTkkP8pT6yioIcVNpxmfCFF0M+7BGx3TXgQSkOgfPI=";
|
||||
rev = "41f35720eda2d1e54d039975db28f46d68a963cb";
|
||||
hash = "sha256-g8dKNRHAZvNfCT3ciDSyKJVqjENml39k26NqkP7sQvA=";
|
||||
};
|
||||
|
||||
makeFlags = [
|
||||
|
||||
@@ -14,12 +14,12 @@ let
|
||||
# kernel config in the xanmod version commit
|
||||
variants = {
|
||||
lts = {
|
||||
version = "6.12.35";
|
||||
hash = "sha256-cvpt18bGeTj6hcUnGLPGAHeWdWyRNh/NmXROBoRUhqw=";
|
||||
version = "6.12.36";
|
||||
hash = "sha256-F/vdX8vAKf2/70Kni1UPcx/XBNF1b9tcoyzV4+q2/rY=";
|
||||
};
|
||||
main = {
|
||||
version = "6.15.4";
|
||||
hash = "sha256-6c60l4bQm6zoWhFXD9KZObnIqV6gGFRt9EdKZmBAaq8=";
|
||||
version = "6.15.5";
|
||||
hash = "sha256-jw5l0nd7ClDwMLI6n3LmJ+0MprcgTlsHQKpsdX6hFZs=";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -1827,9 +1827,10 @@
|
||||
];
|
||||
"forked_daapd" =
|
||||
ps: with ps; [
|
||||
pyforked-daapd
|
||||
pylibrespot-java
|
||||
spotifyaio
|
||||
]; # missing inputs: pyforked-daapd
|
||||
];
|
||||
"fortios" =
|
||||
ps: with ps; [
|
||||
fortiosapi
|
||||
@@ -7050,6 +7051,7 @@
|
||||
"folder_watcher"
|
||||
"foobot"
|
||||
"forecast_solar"
|
||||
"forked_daapd"
|
||||
"foscam"
|
||||
"freebox"
|
||||
"freedns"
|
||||
|
||||
@@ -23,112 +23,106 @@ let
|
||||
};
|
||||
|
||||
in
|
||||
(buildPgrxExtension.override {
|
||||
# Upstream only works with a fixed version of cargo-pgrx for each release,
|
||||
# so we're pinning it here to avoid future incompatibility.
|
||||
# See https://docs.vectorchord.ai/developers/development.html#set-up-development-environment, step 5
|
||||
(buildPgrxExtension.override { rustPlatform = rustPlatform'; }) (finalAttrs: {
|
||||
inherit postgresql;
|
||||
cargo-pgrx = cargo-pgrx_0_12_0_alpha_1;
|
||||
rustPlatform = rustPlatform';
|
||||
})
|
||||
(finalAttrs: {
|
||||
inherit postgresql;
|
||||
|
||||
pname = "pgvecto-rs";
|
||||
version = "0.3.0";
|
||||
pname = "pgvecto-rs";
|
||||
version = "0.3.0";
|
||||
|
||||
buildInputs = [ openssl ];
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ openssl ];
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
patches = [
|
||||
# Tell the `c` crate to use the flags from the rust bindgen hook
|
||||
(replaceVars ./0001-read-clang-flags-from-environment.diff {
|
||||
clang = lib.getExe clang;
|
||||
})
|
||||
];
|
||||
patches = [
|
||||
# Tell the `c` crate to use the flags from the rust bindgen hook
|
||||
(replaceVars ./0001-read-clang-flags-from-environment.diff {
|
||||
clang = lib.getExe clang;
|
||||
})
|
||||
];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tensorchord";
|
||||
repo = "pgvecto.rs";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-X7BY2Exv0xQNhsS/GA7GNvj9OeVDqVCd/k3lUkXtfgE=";
|
||||
};
|
||||
src = fetchFromGitHub {
|
||||
owner = "tensorchord";
|
||||
repo = "pgvecto.rs";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-X7BY2Exv0xQNhsS/GA7GNvj9OeVDqVCd/k3lUkXtfgE=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-8otJ1uqGrCmlxAqvfAL3OjhBI4I6dAu6EoajstO46Sw=";
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-8otJ1uqGrCmlxAqvfAL3OjhBI4I6dAu6EoajstO46Sw=";
|
||||
|
||||
# Set appropriate version on vectors.control, otherwise it won't show up on PostgreSQL
|
||||
postPatch = ''
|
||||
substituteInPlace ./vectors.control --subst-var-by CARGO_VERSION ${finalAttrs.version}
|
||||
'';
|
||||
# Set appropriate version on vectors.control, otherwise it won't show up on PostgreSQL
|
||||
postPatch = ''
|
||||
substituteInPlace ./vectors.control --subst-var-by CARGO_VERSION ${finalAttrs.version}
|
||||
'';
|
||||
|
||||
# Include upgrade scripts in the final package
|
||||
# https://github.com/tensorchord/pgvecto.rs/blob/v0.2.0/scripts/ci_package.sh#L6-L8
|
||||
postInstall = ''
|
||||
cp sql/upgrade/* $out/share/postgresql/extension/
|
||||
'';
|
||||
# Include upgrade scripts in the final package
|
||||
# https://github.com/tensorchord/pgvecto.rs/blob/v0.2.0/scripts/ci_package.sh#L6-L8
|
||||
postInstall = ''
|
||||
cp sql/upgrade/* $out/share/postgresql/extension/
|
||||
'';
|
||||
|
||||
env = {
|
||||
# Needed to get openssl-sys to use pkg-config.
|
||||
OPENSSL_NO_VENDOR = 1;
|
||||
env = {
|
||||
# Needed to get openssl-sys to use pkg-config.
|
||||
OPENSSL_NO_VENDOR = 1;
|
||||
|
||||
# Bypass rust nightly features not being available on rust stable
|
||||
RUSTC_BOOTSTRAP = 1;
|
||||
};
|
||||
# Bypass rust nightly features not being available on rust stable
|
||||
RUSTC_BOOTSTRAP = 1;
|
||||
};
|
||||
|
||||
# This crate does not have the "pg_test" feature
|
||||
usePgTestCheckFeature = false;
|
||||
# This crate does not have the "pg_test" feature
|
||||
usePgTestCheckFeature = false;
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
tests.extension = postgresqlTestExtension {
|
||||
inherit (finalAttrs) finalPackage;
|
||||
postgresqlExtraSettings = ''
|
||||
shared_preload_libraries='vectors'
|
||||
'';
|
||||
sql = ''
|
||||
CREATE EXTENSION vectors;
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
tests.extension = postgresqlTestExtension {
|
||||
inherit (finalAttrs) finalPackage;
|
||||
postgresqlExtraSettings = ''
|
||||
shared_preload_libraries='vectors'
|
||||
'';
|
||||
sql = ''
|
||||
CREATE EXTENSION vectors;
|
||||
|
||||
CREATE TABLE items (
|
||||
id bigserial PRIMARY KEY,
|
||||
content text NOT NULL,
|
||||
embedding vectors.vector(3) NOT NULL -- 3 dimensions
|
||||
);
|
||||
CREATE TABLE items (
|
||||
id bigserial PRIMARY KEY,
|
||||
content text NOT NULL,
|
||||
embedding vectors.vector(3) NOT NULL -- 3 dimensions
|
||||
);
|
||||
|
||||
INSERT INTO items (content, embedding) VALUES
|
||||
('a fat cat sat on a mat and ate a fat rat', '[1, 2, 3]'),
|
||||
('a fat dog sat on a mat and ate a fat rat', '[4, 5, 6]'),
|
||||
('a thin cat sat on a mat and ate a thin rat', '[7, 8, 9]'),
|
||||
('a thin dog sat on a mat and ate a thin rat', '[10, 11, 12]');
|
||||
'';
|
||||
asserts = [
|
||||
{
|
||||
query = "SELECT default_version FROM pg_available_extensions WHERE name = 'vectors'";
|
||||
expected = "'${finalAttrs.version}'";
|
||||
description = "Extension vectors has correct version.";
|
||||
}
|
||||
{
|
||||
query = "SELECT COUNT(embedding) FROM items WHERE to_tsvector('english', content) @@ 'cat & rat'::tsquery";
|
||||
expected = "2";
|
||||
description = "Stores and returns vectors.";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
# Upstream removed support for PostgreSQL 13 on 0.3.0: https://github.com/tensorchord/pgvecto.rs/issues/343
|
||||
broken =
|
||||
(lib.versionOlder postgresql.version "14")
|
||||
||
|
||||
# PostgreSQL 17 support issue upstream: https://github.com/tensorchord/pgvecto.rs/issues/607
|
||||
# Check after next package update.
|
||||
lib.versionAtLeast postgresql.version "17" && finalAttrs.version == "0.3.0";
|
||||
description = "Scalable, Low-latency and Hybrid-enabled Vector Search in Postgres";
|
||||
homepage = "https://github.com/tensorchord/pgvecto.rs";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [
|
||||
diogotcorreia
|
||||
esclear
|
||||
INSERT INTO items (content, embedding) VALUES
|
||||
('a fat cat sat on a mat and ate a fat rat', '[1, 2, 3]'),
|
||||
('a fat dog sat on a mat and ate a fat rat', '[4, 5, 6]'),
|
||||
('a thin cat sat on a mat and ate a thin rat', '[7, 8, 9]'),
|
||||
('a thin dog sat on a mat and ate a thin rat', '[10, 11, 12]');
|
||||
'';
|
||||
asserts = [
|
||||
{
|
||||
query = "SELECT default_version FROM pg_available_extensions WHERE name = 'vectors'";
|
||||
expected = "'${finalAttrs.version}'";
|
||||
description = "Extension vectors has correct version.";
|
||||
}
|
||||
{
|
||||
query = "SELECT COUNT(embedding) FROM items WHERE to_tsvector('english', content) @@ 'cat & rat'::tsquery";
|
||||
expected = "2";
|
||||
description = "Stores and returns vectors.";
|
||||
}
|
||||
];
|
||||
};
|
||||
})
|
||||
};
|
||||
|
||||
meta = {
|
||||
# Upstream removed support for PostgreSQL 13 on 0.3.0: https://github.com/tensorchord/pgvecto.rs/issues/343
|
||||
broken =
|
||||
(lib.versionOlder postgresql.version "14")
|
||||
||
|
||||
# PostgreSQL 17 support issue upstream: https://github.com/tensorchord/pgvecto.rs/issues/607
|
||||
# Check after next package update.
|
||||
lib.versionAtLeast postgresql.version "17" && finalAttrs.version == "0.3.0";
|
||||
description = "Scalable, Low-latency and Hybrid-enabled Vector Search in Postgres";
|
||||
homepage = "https://github.com/tensorchord/pgvecto.rs";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [
|
||||
diogotcorreia
|
||||
esclear
|
||||
];
|
||||
};
|
||||
})
|
||||
|
||||
@@ -7,13 +7,7 @@
|
||||
postgresqlTestExtension,
|
||||
}:
|
||||
|
||||
let
|
||||
buildPgrxExtension' = buildPgrxExtension.override {
|
||||
# Upstream only works with a fixed minor version of cargo-pgrx for each release.
|
||||
cargo-pgrx = cargo-pgrx_0_12_6;
|
||||
};
|
||||
in
|
||||
buildPgrxExtension' (finalAttrs: {
|
||||
buildPgrxExtension (finalAttrs: {
|
||||
pname = "pgvectorscale";
|
||||
version = "0.7.0";
|
||||
|
||||
@@ -38,6 +32,7 @@ buildPgrxExtension' (finalAttrs: {
|
||||
];
|
||||
|
||||
inherit postgresql;
|
||||
cargo-pgrx = cargo-pgrx_0_12_6;
|
||||
|
||||
passthru.tests.extension = postgresqlTestExtension {
|
||||
inherit (finalAttrs) finalPackage;
|
||||
|
||||
@@ -7,14 +7,9 @@
|
||||
postgresql,
|
||||
util-linux,
|
||||
}:
|
||||
let
|
||||
buildPgrxExtension' = buildPgrxExtension.override {
|
||||
# Upstream only works with a fixed minor version of cargo-pgrx for each release.
|
||||
cargo-pgrx = cargo-pgrx_0_12_6;
|
||||
};
|
||||
in
|
||||
buildPgrxExtension' (finalAttrs: {
|
||||
buildPgrxExtension (finalAttrs: {
|
||||
inherit postgresql;
|
||||
cargo-pgrx = cargo-pgrx_0_12_6;
|
||||
|
||||
pname = "pgx_ulid";
|
||||
version = "0.2.0";
|
||||
|
||||
@@ -7,8 +7,9 @@
|
||||
postgresql,
|
||||
}:
|
||||
|
||||
(buildPgrxExtension.override { cargo-pgrx = cargo-pgrx_0_12_6; }) (finalAttrs: {
|
||||
buildPgrxExtension (finalAttrs: {
|
||||
inherit postgresql;
|
||||
cargo-pgrx = cargo-pgrx_0_12_6;
|
||||
|
||||
pname = "timescaledb_toolkit";
|
||||
version = "1.21.0";
|
||||
|
||||
@@ -12,12 +12,6 @@
|
||||
stdenv,
|
||||
}:
|
||||
let
|
||||
buildPgrxExtension' = buildPgrxExtension.override {
|
||||
# Upstream only works with a fixed version of cargo-pgrx for each release,
|
||||
# so we're pinning it here to avoid future incompatibility.
|
||||
cargo-pgrx = cargo-pgrx_0_14_1;
|
||||
};
|
||||
|
||||
# Follow upstream and use rust-jemalloc-sys on linux aarch64 and x86_64
|
||||
# Additionally, disable init exec TLS, since it causes issues with postgres.
|
||||
# https://github.com/tensorchord/VectorChord/blob/0.4.2/Cargo.toml#L43-L44
|
||||
@@ -29,8 +23,9 @@ let
|
||||
})
|
||||
);
|
||||
in
|
||||
buildPgrxExtension' (finalAttrs: {
|
||||
buildPgrxExtension (finalAttrs: {
|
||||
inherit postgresql;
|
||||
cargo-pgrx = cargo-pgrx_0_14_1;
|
||||
|
||||
pname = "vectorchord";
|
||||
version = "0.4.2";
|
||||
|
||||
@@ -179,7 +179,7 @@ lib.makeExtensible (
|
||||
|
||||
nix_2_24 = commonAutoconf {
|
||||
version = "2.24.15";
|
||||
hash = "sha256-SthMCsj6POjawLnJq9+lj/UzObX9skaeN1UGmMZiwTY=";
|
||||
hash = "sha256-GHqFHLxvRID2IEPUwIfRMp8epYQMFcvG9ogLzfWRbPc=";
|
||||
self_attribute_name = "nix_2_24";
|
||||
};
|
||||
|
||||
|
||||
@@ -5981,11 +5981,10 @@ with pkgs;
|
||||
|
||||
inherit (callPackages ../development/tools/rust/cargo-pgrx { })
|
||||
cargo-pgrx_0_12_0_alpha_1
|
||||
cargo-pgrx_0_12_5
|
||||
cargo-pgrx_0_12_6
|
||||
cargo-pgrx_0_14_1
|
||||
cargo-pgrx
|
||||
;
|
||||
cargo-pgrx = cargo-pgrx_0_14_1;
|
||||
|
||||
buildPgrxExtension = callPackage ../development/tools/rust/cargo-pgrx/buildPgrxExtension.nix { };
|
||||
opensmalltalk-vm = callPackage ../development/compilers/opensmalltalk-vm { };
|
||||
@@ -15539,6 +15538,8 @@ with pkgs;
|
||||
coq_8_20
|
||||
coqPackages_9_0
|
||||
coq_9_0
|
||||
coqPackages_9_1
|
||||
coq_9_1
|
||||
coqPackages
|
||||
coq
|
||||
;
|
||||
@@ -15552,6 +15553,8 @@ with pkgs;
|
||||
mkRocqPackages
|
||||
rocqPackages_9_0
|
||||
rocq-core_9_0
|
||||
rocqPackages_9_1
|
||||
rocq-core_9_1
|
||||
rocqPackages
|
||||
rocq-core
|
||||
;
|
||||
|
||||
@@ -102,6 +102,7 @@ let
|
||||
equations = callPackage ../development/coq-modules/equations { };
|
||||
ExtLib = callPackage ../development/coq-modules/ExtLib { };
|
||||
extructures = callPackage ../development/coq-modules/extructures { };
|
||||
fcsl-pcm = callPackage ../development/coq-modules/fcsl-pcm { };
|
||||
flocq = callPackage ../development/coq-modules/flocq { };
|
||||
fourcolor = callPackage ../development/coq-modules/fourcolor { };
|
||||
gaia = callPackage ../development/coq-modules/gaia { };
|
||||
@@ -311,6 +312,7 @@ rec {
|
||||
coq_8_19 = mkCoq "8.19";
|
||||
coq_8_20 = mkCoq "8.20";
|
||||
coq_9_0 = mkCoq "9.0";
|
||||
coq_9_1 = mkCoq "9.1";
|
||||
|
||||
coqPackages_8_5 = mkCoqPackages coq_8_5;
|
||||
coqPackages_8_6 = mkCoqPackages coq_8_6;
|
||||
@@ -329,6 +331,7 @@ rec {
|
||||
coqPackages_8_19 = mkCoqPackages coq_8_19;
|
||||
coqPackages_8_20 = mkCoqPackages coq_8_20;
|
||||
coqPackages_9_0 = mkCoqPackages coq_9_0;
|
||||
coqPackages_9_1 = mkCoqPackages coq_9_1;
|
||||
|
||||
coqPackages = recurseIntoAttrs coqPackages_9_0;
|
||||
coq = coqPackages.coq;
|
||||
|
||||
@@ -609,6 +609,8 @@ self: super: with self; {
|
||||
|
||||
aliyun-python-sdk-sts = callPackage ../development/python-modules/aliyun-python-sdk-sts { };
|
||||
|
||||
allantools = callPackage ../development/python-modules/allantools { };
|
||||
|
||||
allpairspy = callPackage ../development/python-modules/allpairspy { };
|
||||
|
||||
allure-behave = callPackage ../development/python-modules/allure-behave { };
|
||||
@@ -12719,6 +12721,8 @@ self: super: with self; {
|
||||
|
||||
pyfnip = callPackage ../development/python-modules/pyfnip { };
|
||||
|
||||
pyforked-daapd = callPackage ../development/python-modules/pyforked-daapd { };
|
||||
|
||||
pyformlang = callPackage ../development/python-modules/pyformlang { };
|
||||
|
||||
pyfreedompro = callPackage ../development/python-modules/pyfreedompro { };
|
||||
|
||||
@@ -88,8 +88,10 @@ rec {
|
||||
self.filterPackages (!rocq-core.dontFilter or false);
|
||||
|
||||
rocq-core_9_0 = mkRocq "9.0";
|
||||
rocq-core_9_1 = mkRocq "9.1";
|
||||
|
||||
rocqPackages_9_0 = mkRocqPackages rocq-core_9_0;
|
||||
rocqPackages_9_1 = mkRocqPackages rocq-core_9_1;
|
||||
|
||||
rocqPackages = recurseIntoAttrs rocqPackages_9_0;
|
||||
rocq-core = rocqPackages.rocq-core;
|
||||
|
||||
Reference in New Issue
Block a user