Merge master into haskell-updates
This commit is contained in:
commit
b88fc6c5b0
196 changed files with 5066 additions and 6154 deletions
8
.github/CODEOWNERS
vendored
8
.github/CODEOWNERS
vendored
|
@ -58,9 +58,11 @@
|
|||
/maintainers/scripts/db-to-md.sh @jtojnar @ryantm
|
||||
/maintainers/scripts/doc @jtojnar @ryantm
|
||||
|
||||
/doc/build-aux/pandoc-filters @jtojnar
|
||||
/doc/contributing/ @fricklerhandwerk
|
||||
/doc/contributing/contributing-to-documentation.chapter.md @jtojnar @fricklerhandwerk
|
||||
# Contributor documentation
|
||||
/CONTRIBUTING.md @infinisil
|
||||
/.github/PULL_REQUEST_TEMPLATE.md @infinisil
|
||||
/doc/contributing/ @fricklerhandwerk @infinisil
|
||||
/doc/contributing/contributing-to-documentation.chapter.md @jtojnar @fricklerhandwerk @infinisil
|
||||
|
||||
# NixOS Internals
|
||||
/nixos/default.nix @infinisil
|
||||
|
|
|
@ -3265,6 +3265,12 @@
|
|||
fingerprint = "6E3A FA6D 915C C2A4 D26F C53E 7BB4 BA9C 783D 2BBC";
|
||||
}];
|
||||
};
|
||||
codec = {
|
||||
email = "codec@fnord.cx";
|
||||
github = "codec";
|
||||
githubId = 118829;
|
||||
name = "codec";
|
||||
};
|
||||
CodeLongAndProsper90 = {
|
||||
github = "CodeLongAndProsper90";
|
||||
githubId = 50145141;
|
||||
|
@ -5872,6 +5878,11 @@
|
|||
githubId = 17859309;
|
||||
name = "Fuzen";
|
||||
};
|
||||
fuzzdk = {
|
||||
github = "fuzzdk";
|
||||
githubId = 12715461;
|
||||
name = "Anders Bo Rasmussen";
|
||||
};
|
||||
fwc = {
|
||||
github = "fwc";
|
||||
githubId = 29337229;
|
||||
|
|
|
@ -666,6 +666,7 @@ in
|
|||
USER = cfg.user;
|
||||
HOME = cfg.stateDir;
|
||||
GITEA_WORK_DIR = cfg.stateDir;
|
||||
GITEA_CUSTOM = cfg.customDir;
|
||||
};
|
||||
|
||||
serviceConfig = {
|
||||
|
|
|
@ -214,9 +214,9 @@ in {
|
|||
++ lib.optional config.virtualisation.libvirtd.enable (config.virtualisation.libvirtd.package);
|
||||
environment = {
|
||||
PYTHONPATH = "${cfg.package}/libexec/netdata/python.d/python_modules";
|
||||
NETDATA_PIPENAME = "/run/netdata/ipc";
|
||||
} // lib.optionalAttrs (!cfg.enableAnalyticsReporting) {
|
||||
DO_NOT_TRACK = "1";
|
||||
NETDATA_PIPENAME = "/run/netdata/ipc";
|
||||
};
|
||||
restartTriggers = [
|
||||
config.environment.etc."netdata/netdata.conf".source
|
||||
|
|
|
@ -36,6 +36,7 @@ let
|
|||
"fastly"
|
||||
"fritzbox"
|
||||
"graphite"
|
||||
"idrac"
|
||||
"influxdb"
|
||||
"ipmi"
|
||||
"json"
|
||||
|
@ -318,6 +319,14 @@ in
|
|||
message = ''
|
||||
Scaphandre needs 'intel_rapl_common' kernel module to be enabled. Please add it in 'boot.kernelModules'.
|
||||
'';
|
||||
} {
|
||||
assertion = cfg.idrac.enable -> (
|
||||
(cfg.idrac.configurationPath == null) != (cfg.idrac.configuration == null)
|
||||
);
|
||||
message = ''
|
||||
Please ensure you have either `services.prometheus.exporters.idrac.configuration'
|
||||
or `services.prometheus.exporters.idrac.configurationPath' set!
|
||||
'';
|
||||
} ] ++ (flip map (attrNames exporterOpts) (exporter: {
|
||||
assertion = cfg.${exporter}.firewallFilter != null -> cfg.${exporter}.openFirewall;
|
||||
message = ''
|
||||
|
@ -325,7 +334,12 @@ in
|
|||
`openFirewall' is set to `true'!
|
||||
'';
|
||||
})) ++ config.services.prometheus.exporters.assertions;
|
||||
warnings = config.services.prometheus.exporters.warnings;
|
||||
warnings = [(mkIf (config.services.prometheus.exporters.idrac.enable && config.services.prometheus.exporters.idrac.configurationPath != null) ''
|
||||
Configuration file in `services.prometheus.exporters.idrac.configurationPath` may override
|
||||
`services.prometheus.exporters.idrac.listenAddress` and/or `services.prometheus.exporters.idrac.port`.
|
||||
Consider using `services.prometheus.exporters.idrac.configuration` instead.
|
||||
''
|
||||
)] ++ config.services.prometheus.exporters.warnings;
|
||||
}] ++ [(mkIf config.services.minio.enable {
|
||||
services.prometheus.exporters.minio.minioAddress = mkDefault "http://localhost:9000";
|
||||
services.prometheus.exporters.minio.minioAccessKey = mkDefault config.services.minio.accessKey;
|
||||
|
|
|
@ -0,0 +1,69 @@
|
|||
{ config, lib, pkgs, options }:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.prometheus.exporters.idrac;
|
||||
|
||||
configFile = if cfg.configurationPath != null
|
||||
then cfg.configurationPath
|
||||
else pkgs.writeText "idrac.yml" (builtins.toJSON cfg.configuration);
|
||||
in
|
||||
{
|
||||
port = 9348;
|
||||
extraOpts = {
|
||||
configurationPath = mkOption {
|
||||
type = with types; nullOr path;
|
||||
default = null;
|
||||
example = "/etc/prometheus-idrac-exporter/idrac.yml";
|
||||
description = lib.mdDoc ''
|
||||
Path to the service's config file. This path can either be a computed path in /nix/store or a path in the local filesystem.
|
||||
|
||||
The config file should NOT be stored in /nix/store as it will contain passwords and/or keys in plain text.
|
||||
|
||||
Mutually exclusive with `configuration` option.
|
||||
|
||||
Configuration reference: https://github.com/mrlhansen/idrac_exporter/#configuration
|
||||
'';
|
||||
};
|
||||
configuration = mkOption {
|
||||
type = types.nullOr types.attrs;
|
||||
description = lib.mdDoc ''
|
||||
Configuration for iDRAC exporter, as a nix attribute set.
|
||||
|
||||
Configuration reference: https://github.com/mrlhansen/idrac_exporter/#configuration
|
||||
|
||||
Mutually exclusive with `configurationPath` option.
|
||||
'';
|
||||
default = null;
|
||||
example = {
|
||||
timeout = 10;
|
||||
retries = 1;
|
||||
hosts = {
|
||||
default = {
|
||||
username = "username";
|
||||
password = "password";
|
||||
};
|
||||
};
|
||||
metrics = {
|
||||
system = true;
|
||||
sensors = true;
|
||||
power = true;
|
||||
sel = true;
|
||||
storage = true;
|
||||
memory = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
serviceOpts = {
|
||||
serviceConfig = {
|
||||
LoadCredential = "configFile:${configFile}";
|
||||
ExecStart = "${pkgs.prometheus-idrac-exporter}/bin/idrac_exporter -config %d/configFile";
|
||||
Environment = [
|
||||
"IDRAC_EXPORTER_LISTEN_ADDRESS=${cfg.listenAddress}"
|
||||
"IDRAC_EXPORTER_LISTEN_PORT=${toString cfg.port}"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
|
@ -4,38 +4,9 @@ with lib;
|
|||
|
||||
let
|
||||
systemBuilder =
|
||||
let
|
||||
kernelPath = "${config.boot.kernelPackages.kernel}/" +
|
||||
"${config.system.boot.loader.kernelFile}";
|
||||
initrdPath = "${config.system.build.initialRamdisk}/" +
|
||||
"${config.system.boot.loader.initrdFile}";
|
||||
in ''
|
||||
''
|
||||
mkdir $out
|
||||
|
||||
# Containers don't have their own kernel or initrd. They boot
|
||||
# directly into stage 2.
|
||||
${optionalString config.boot.kernel.enable ''
|
||||
if [ ! -f ${kernelPath} ]; then
|
||||
echo "The bootloader cannot find the proper kernel image."
|
||||
echo "(Expecting ${kernelPath})"
|
||||
false
|
||||
fi
|
||||
|
||||
ln -s ${kernelPath} $out/kernel
|
||||
ln -s ${config.system.modulesTree} $out/kernel-modules
|
||||
${optionalString (config.hardware.deviceTree.package != null) ''
|
||||
ln -s ${config.hardware.deviceTree.package} $out/dtbs
|
||||
''}
|
||||
|
||||
echo -n "$kernelParams" > $out/kernel-params
|
||||
|
||||
ln -s ${initrdPath} $out/initrd
|
||||
|
||||
ln -s ${config.system.build.initialRamdiskSecretAppender}/bin/append-initrd-secrets $out
|
||||
|
||||
ln -s ${config.hardware.firmware}/lib/firmware $out/firmware
|
||||
''}
|
||||
|
||||
${if config.boot.initrd.systemd.enable then ''
|
||||
cp ${config.system.build.bootStage2} $out/prepare-root
|
||||
substituteInPlace $out/prepare-root --subst-var-by systemConfig $out
|
||||
|
@ -83,7 +54,6 @@ let
|
|||
|
||||
systemd = config.systemd.package;
|
||||
|
||||
kernelParams = config.boot.kernelParams;
|
||||
nixosLabel = config.system.nixos.label;
|
||||
|
||||
inherit (config.system) extraDependencies;
|
||||
|
|
|
@ -309,6 +309,38 @@ in
|
|||
|
||||
system.modulesTree = [ kernel ] ++ config.boot.extraModulePackages;
|
||||
|
||||
# Not required for, e.g., containers as they don't have their own kernel or initrd.
|
||||
# They boot directly into stage 2.
|
||||
system.systemBuilderArgs.kernelParams = config.boot.kernelParams;
|
||||
system.systemBuilderCommands =
|
||||
let
|
||||
kernelPath = "${config.boot.kernelPackages.kernel}/" +
|
||||
"${config.system.boot.loader.kernelFile}";
|
||||
initrdPath = "${config.system.build.initialRamdisk}/" +
|
||||
"${config.system.boot.loader.initrdFile}";
|
||||
in
|
||||
''
|
||||
if [ ! -f ${kernelPath} ]; then
|
||||
echo "The bootloader cannot find the proper kernel image."
|
||||
echo "(Expecting ${kernelPath})"
|
||||
false
|
||||
fi
|
||||
|
||||
ln -s ${kernelPath} $out/kernel
|
||||
ln -s ${config.system.modulesTree} $out/kernel-modules
|
||||
${optionalString (config.hardware.deviceTree.package != null) ''
|
||||
ln -s ${config.hardware.deviceTree.package} $out/dtbs
|
||||
''}
|
||||
|
||||
echo -n "$kernelParams" > $out/kernel-params
|
||||
|
||||
ln -s ${initrdPath} $out/initrd
|
||||
|
||||
ln -s ${config.system.build.initialRamdiskSecretAppender}/bin/append-initrd-secrets $out
|
||||
|
||||
ln -s ${config.hardware.firmware}/lib/firmware $out/firmware
|
||||
'';
|
||||
|
||||
# Implement consoleLogLevel both in early boot and using sysctl
|
||||
# (so you don't need to reboot to have changes take effect).
|
||||
boot.kernelParams =
|
||||
|
|
|
@ -129,6 +129,60 @@ let
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
hooksModule = types.submodule {
|
||||
options = {
|
||||
daemon = mkOption {
|
||||
type = types.attrsOf types.path;
|
||||
default = { };
|
||||
description = lib.mdDoc ''
|
||||
Hooks that will be placed under /var/lib/libvirt/hooks/daemon.d/
|
||||
and called for daemon start/shutdown/SIGHUP events.
|
||||
Please see https://libvirt.org/hooks.html for documentation.
|
||||
'';
|
||||
};
|
||||
|
||||
qemu = mkOption {
|
||||
type = types.attrsOf types.path;
|
||||
default = { };
|
||||
description = lib.mdDoc ''
|
||||
Hooks that will be placed under /var/lib/libvirt/hooks/qemu.d/
|
||||
and called for qemu domains begin/end/migrate events.
|
||||
Please see https://libvirt.org/hooks.html for documentation.
|
||||
'';
|
||||
};
|
||||
|
||||
lxc = mkOption {
|
||||
type = types.attrsOf types.path;
|
||||
default = { };
|
||||
description = lib.mdDoc ''
|
||||
Hooks that will be placed under /var/lib/libvirt/hooks/lxc.d/
|
||||
and called for lxc domains begin/end events.
|
||||
Please see https://libvirt.org/hooks.html for documentation.
|
||||
'';
|
||||
};
|
||||
|
||||
libxl = mkOption {
|
||||
type = types.attrsOf types.path;
|
||||
default = { };
|
||||
description = lib.mdDoc ''
|
||||
Hooks that will be placed under /var/lib/libvirt/hooks/libxl.d/
|
||||
and called for libxl-handled xen domains begin/end events.
|
||||
Please see https://libvirt.org/hooks.html for documentation.
|
||||
'';
|
||||
};
|
||||
|
||||
network = mkOption {
|
||||
type = types.attrsOf types.path;
|
||||
default = { };
|
||||
description = lib.mdDoc ''
|
||||
Hooks that will be placed under /var/lib/libvirt/hooks/lxc.d/
|
||||
and called for networks begin/end events.
|
||||
Please see https://libvirt.org/hooks.html for documentation.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
|
||||
|
@ -246,6 +300,14 @@ in
|
|||
QEMU related options.
|
||||
'';
|
||||
};
|
||||
|
||||
hooks = mkOption {
|
||||
type = hooksModule;
|
||||
default = { };
|
||||
description = lib.mdDoc ''
|
||||
Hooks related options.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
@ -337,6 +399,15 @@ in
|
|||
ln -s --force ${ovmfpackage}/FV/AAVMF_VARS.fd /run/${dirName}/nix-ovmf/
|
||||
ln -s --force ${ovmfpackage}/FV/OVMF_VARS.fd /run/${dirName}/nix-ovmf/
|
||||
'')}
|
||||
|
||||
# Symlink hooks to /var/lib/libvirt
|
||||
${concatStringsSep "\n" (map (driver:
|
||||
''
|
||||
mkdir -p /var/lib/${dirName}/hooks/${driver}.d
|
||||
rm -rf /var/lib/${dirName}/hooks/${driver}.d/*
|
||||
${concatStringsSep "\n" (mapAttrsToList (name: value:
|
||||
"ln -s --force ${value} /var/lib/${dirName}/hooks/${driver}.d/${name}") cfg.hooks.${driver})}
|
||||
'') (attrNames cfg.hooks))}
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
|
|
|
@ -11,6 +11,9 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
|||
memorySize = 2048;
|
||||
|
||||
libvirtd.enable = true;
|
||||
libvirtd.hooks.qemu.is_working = "${pkgs.writeShellScript "testHook.sh" ''
|
||||
touch /tmp/qemu_hook_is_working
|
||||
''}";
|
||||
};
|
||||
boot.supportedFilesystems = [ "zfs" ];
|
||||
networking.hostId = "deadbeef"; # needed for zfs
|
||||
|
@ -57,5 +60,9 @@ import ./make-test-python.nix ({ pkgs, ... }: {
|
|||
virthost.shutdown()
|
||||
virthost.wait_for_unit("multi-user.target")
|
||||
virthost.wait_until_succeeds("ping -c 1 nixos")
|
||||
|
||||
with subtest("test if hooks are linked and run"):
|
||||
virthost.succeed("ls /var/lib/libvirt/hooks/qemu.d/is_working")
|
||||
virthost.succeed("ls /tmp/qemu_hook_is_working")
|
||||
'';
|
||||
})
|
||||
|
|
|
@ -307,6 +307,23 @@ let
|
|||
'';
|
||||
};
|
||||
|
||||
idrac = {
|
||||
exporterConfig = {
|
||||
enable = true;
|
||||
port = 9348;
|
||||
configuration = {
|
||||
hosts = {
|
||||
default = { username = "username"; password = "password"; };
|
||||
};
|
||||
};
|
||||
};
|
||||
exporterTest = ''
|
||||
wait_for_unit("prometheus-idrac-exporter.service")
|
||||
wait_for_open_port(9348)
|
||||
wait_until_succeeds("curl localhost:9348")
|
||||
'';
|
||||
};
|
||||
|
||||
influxdb = {
|
||||
exporterConfig = {
|
||||
enable = true;
|
||||
|
|
|
@ -22,8 +22,23 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "sha256-5m4aeuCqSJNgerQKyP9M6Qf7P4ijCtCY4Efew6E09Bc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ wayland-scanner wayland pango glib harfbuzz cairo libxkbcommon ];
|
||||
postPatch = ''
|
||||
substituteInPlace Makefile \
|
||||
--replace "pkg-config" "$PKG_CONFIG"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
wayland-scanner
|
||||
];
|
||||
buildInputs = [
|
||||
cairo
|
||||
glib
|
||||
harfbuzz
|
||||
libxkbcommon
|
||||
pango
|
||||
wayland
|
||||
];
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -4,13 +4,13 @@ with python3.pkgs;
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "thonny";
|
||||
version = "4.0.2";
|
||||
version = "4.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-TxfpzKAsU/5ble4VzJ+4pokCiyJsdisjmNwWfxOMKzE=";
|
||||
hash = "sha256-DlizSm5cDvYXQ8Gok+W/RTSaAWJTkdyTQ4uewOiDVXg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ copyDesktopItems ];
|
||||
|
|
|
@ -20,13 +20,13 @@ in
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tiled";
|
||||
version = "1.10.1";
|
||||
version = "1.10.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mapeditor";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-zrDka6yXJ++UuGFepn8glQ1r7ufBcjsnNZuH+jnkJw0=";
|
||||
sha256 = "sha256-4Ykr60u2t5cyIZdpFHiRirXg2FqSLCzJzsdvw6r/LK8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config qbs wrapQtAppsHook ];
|
||||
|
|
|
@ -11,6 +11,10 @@
|
|||
"date": "2020-03-27",
|
||||
"new": "vim-gist"
|
||||
},
|
||||
"lspsaga-nvim-original": {
|
||||
"date": "2023-08-08",
|
||||
"new": "lspsaga-nvim"
|
||||
},
|
||||
"lua-dev-nvim": {
|
||||
"date": "2022-10-20",
|
||||
"new": "neodev-nvim"
|
||||
|
|
|
@ -9,19 +9,19 @@ let
|
|||
# Please make sure to update this when updating citra!
|
||||
compat-list = fetchurl {
|
||||
name = "citra-compat-list";
|
||||
url = "https://web.archive.org/web/20230512234055/https://api.citra-emu.org/gamedb/";
|
||||
hash = "sha256-J+zqtWde5NgK2QROvGewtXGRAWUTNSKHNMG6iu9m1fU=";
|
||||
url = "https://web.archive.org/web/20230807103651/https://api.citra-emu.org/gamedb/";
|
||||
hash = "sha256-Ma1SXgzhyMHa/MeoYuf8b+QYPjhoQEeKklLbGbkHwEk=";
|
||||
};
|
||||
in {
|
||||
nightly = qt6Packages.callPackage ./generic.nix rec {
|
||||
pname = "citra-nightly";
|
||||
version = "1907";
|
||||
version = "1963";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "citra-emu";
|
||||
repo = "citra-nightly";
|
||||
rev = "nightly-${version}";
|
||||
sha256 = "l4pqok42/ybnRX90Qwhcgm2JR4/9C5bbCTk3j4QuWtw=";
|
||||
sha256 = "0ggi1l8327s43xaxs616g0s9vmal6q7vsv69bn07gp71gchhcmyi";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -30,13 +30,13 @@ in {
|
|||
|
||||
canary = qt6Packages.callPackage ./generic.nix rec {
|
||||
pname = "citra-canary";
|
||||
version = "2484";
|
||||
version = "2573";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "citra-emu";
|
||||
repo = "citra-canary";
|
||||
rev = "canary-${version}";
|
||||
sha256 = "IgCpqt3rKV9IqNstF4QwnJlE3hPH+BkIhaOvEmshh0U=";
|
||||
sha256 = "sha256-tQJ3WcqGcnW9dOiwDrBgL0n3UNp1DGQ/FjCR28Xjdpc=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -8,9 +8,10 @@
|
|||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, boost179
|
||||
, boost
|
||||
, pkg-config
|
||||
, libusb1
|
||||
, glslang
|
||||
, zstd
|
||||
, libressl
|
||||
, enableSdl2 ? true, SDL2
|
||||
|
@ -31,11 +32,12 @@ stdenv.mkDerivation rec {
|
|||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
glslang
|
||||
pkg-config
|
||||
] ++ lib.optionals enableQt [ wrapQtAppsHook ];
|
||||
|
||||
buildInputs = [
|
||||
boost179
|
||||
boost
|
||||
libusb1
|
||||
] ++ lib.optionals enableQt [ qtbase qtmultimedia ]
|
||||
++ lib.optional enableSdl2 SDL2
|
||||
|
@ -47,6 +49,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
cmakeFlags = [
|
||||
"-DUSE_SYSTEM_BOOST=ON"
|
||||
"-DCITRA_WARNINGS_AS_ERRORS=OFF"
|
||||
"-DCITRA_USE_BUNDLED_FFMPEG=OFF"
|
||||
"-DCITRA_USE_BUNDLED_QT=OFF"
|
||||
"-DUSE_SYSTEM_SDL2=ON"
|
||||
|
@ -66,7 +69,9 @@ stdenv.mkDerivation rec {
|
|||
++ lib.optional useDiscordRichPresence "-DUSE_DISCORD_PRESENCE=ON"
|
||||
++ lib.optional enableFdk "-DENABLE_FDK=ON";
|
||||
|
||||
postPatch = ''
|
||||
postPatch = with lib; let
|
||||
branchCaptialized = (lib.toUpper (lib.substring 0 1 branch) + lib.substring 1 (-1) branch);
|
||||
in ''
|
||||
# Fix file not found when looking in var/empty instead of opt
|
||||
mkdir externals/dynarmic/src/dynarmic/ir/var
|
||||
ln -s ../opt externals/dynarmic/src/dynarmic/ir/var/empty
|
||||
|
@ -78,6 +83,9 @@ stdenv.mkDerivation rec {
|
|||
substituteInPlace CMakeLists.txt \
|
||||
--replace "check_submodules_present()" ""
|
||||
|
||||
# Add versions
|
||||
echo 'set(BUILD_FULLNAME "${branchCaptialized} ${version}")' >> CMakeModules/GenerateBuildInfo.cmake
|
||||
|
||||
# Devendoring
|
||||
rm -rf externals/zstd externals/libressl
|
||||
cp -r ${zstd.src} externals/zstd
|
||||
|
|
|
@ -44,8 +44,8 @@ updateNightly() {
|
|||
|
||||
echo " Successfully fetched. hash: ${NEW_NIGHTLY_HASH}"
|
||||
|
||||
sed -i "s/${OLD_NIGHTLY_VERSION}/${NEW_NIGHTLY_VERSION}/" ./default.nix
|
||||
sed -i "s/${OLD_NIGHTLY_HASH}/${NEW_NIGHTLY_HASH}/" ./default.nix
|
||||
sed -i "s|${OLD_NIGHTLY_VERSION}|${NEW_NIGHTLY_VERSION}|" ./default.nix
|
||||
sed -i "s|${OLD_NIGHTLY_HASH}|${NEW_NIGHTLY_HASH}|" ./default.nix
|
||||
}
|
||||
|
||||
updateCanary() {
|
||||
|
@ -69,8 +69,8 @@ updateCanary() {
|
|||
|
||||
echo " Successfully fetched. hash: ${NEW_CANARY_HASH}"
|
||||
|
||||
sed -i "s/${OLD_CANARY_VERSION}/${NEW_CANARY_VERSION}/" ./default.nix
|
||||
sed -i "s/${OLD_CANARY_HASH}/${NEW_CANARY_HASH}/" ./default.nix
|
||||
sed -i "s|${OLD_CANARY_VERSION}|${NEW_CANARY_VERSION}|" ./default.nix
|
||||
sed -i "s|${OLD_CANARY_HASH}|${NEW_CANARY_HASH}|" ./default.nix
|
||||
}
|
||||
|
||||
if [[ "$BRANCH" = "nightly" ]]; then
|
||||
|
|
|
@ -18,11 +18,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "spatialite-tools";
|
||||
version = "5.0.1";
|
||||
version = "5.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.gaia-gis.it/gaia-sins/spatialite-tools-${version}.tar.gz";
|
||||
hash = "sha256-lgTCBeh/A3eJvFIwLGbM0TccPpjHTo7E4psHUt41Fxw=";
|
||||
url = "https://www.gaia-gis.it/gaia-sins/spatialite-tools-sources/spatialite-tools-${version}.tar.gz";
|
||||
hash = "sha256-3zAwNnwInKkPpmMIl/PxooB4TaKeG6Y080DbpLCFg7U=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
|
|
@ -8,10 +8,10 @@ buildGoModule rec {
|
|||
owner = "trashhalo";
|
||||
repo = "imgcat";
|
||||
rev = "v${version}";
|
||||
sha256 = "0x7a1izsbrbfph7wa9ny9r4a8lp6z15qpb6jf8wsxshiwnkjyrig";
|
||||
hash = "sha256-L2Yvp+UR6q45ctKsi0v45lKkSE7eJsUPvG7lpX8M6nQ=";
|
||||
};
|
||||
|
||||
vendorSha256 = "191gi4c5jk8p9xvbm1cdhk5yi8q2cp2jvjq1sgxqw1ad0lppwhg2";
|
||||
vendorHash = "sha256-4kF+LwVNBY770wHLLcVlAqPoy4SNhbp2TxdNWRiJL6Q=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A tool to output images as RGB ANSI graphics on the terminal";
|
||||
|
|
|
@ -18,11 +18,11 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "mcomix";
|
||||
version = "2.1.0";
|
||||
version = "2.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/mcomix/${pname}-${version}.tar.gz";
|
||||
hash = "sha256-Nok4oqTezO84q9IDZvgi33ZeKfRL+tpg7QEDmp2ZZpU=";
|
||||
hash = "sha256-fmnlPhNCN6YR3lW2YCMEAbEiWVigcfFDq1tDQ1eTNkA=";
|
||||
};
|
||||
|
||||
buildInputs = [ gtk3 gdk-pixbuf ];
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{ mkDerivation
|
||||
, lib
|
||||
, fetchpatch
|
||||
|
||||
, cmake
|
||||
, extra-cmake-modules
|
||||
|
@ -32,6 +33,14 @@
|
|||
mkDerivation {
|
||||
pname = "neochat";
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "libquotient-0.8.patch";
|
||||
url = "https://invent.kde.org/network/neochat/-/commit/d9d5e17be2a2057ab2ee545561fab721cb211f7f.patch";
|
||||
hash = "sha256-y1PEehFCW+69OH8YvL3SUGOb8Hhyf8xwRvSZzJ5J5Wc=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
extra-cmake-modules
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
, qtmultimedia
|
||||
, qtspeech
|
||||
, wrapQtAppsHook
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
|
@ -39,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
hash = "sha256-ZKbrO5L4KFmr2NsGDihRWBeW0OXHoPRwZGj6kt1Anc8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook ];
|
||||
nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook wrapGAppsHook ];
|
||||
buildInputs = [
|
||||
qtbase
|
||||
qtsvg
|
||||
|
@ -64,6 +65,13 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
libzim
|
||||
];
|
||||
|
||||
# to prevent double wrapping of wrapQtApps and wrapGApps
|
||||
dontWrapGApps = true;
|
||||
|
||||
preFixup = ''
|
||||
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
"-DWITH_XAPIAN=ON"
|
||||
"-DWITH_ZIM=ON"
|
||||
|
|
|
@ -10,11 +10,11 @@
|
|||
}:
|
||||
let
|
||||
pname = "jetbrains-toolbox";
|
||||
version = "1.28.1.15219";
|
||||
version = "2.0.0.16559";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://download.jetbrains.com/toolbox/jetbrains-toolbox-${version}.tar.gz";
|
||||
sha256 = "sha256-4P73MC5Go8wLACBtjh1y3Ao0czE/3hsSI4728mNjKxA=";
|
||||
sha256 = "sha256-z+udyilfVwcVnaFhp6GYHCXqh1d7T5fj/TbbjMoen2I=";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
|
|
|
@ -9,16 +9,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "kbt";
|
||||
version = "1.2.1";
|
||||
version = "1.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bloznelis";
|
||||
repo = "kbt";
|
||||
rev = version;
|
||||
hash = "sha256-IVKGpifLcpqPD4ZYP+1mY0EokNoQW6qSbxt66w6b81w=";
|
||||
hash = "sha256-v0xbW1xlOhaLf19a6gFpd16RjYfXIK6FDBSWVWPlK3c=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-iPsBYccLQdPvzaV7pRa3ZLFFwJ1lIJoFMWChLkQpyyk=";
|
||||
cargoHash = "sha256-rBThJqaemtPAHqiWDILJZ7j+NL5+6+4tsXrFPcEiFL0=";
|
||||
|
||||
nativeBuildInputs = lib.optionals stdenv.isLinux [
|
||||
pkg-config
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -30,11 +30,11 @@
|
|||
|
||||
firefox-beta = buildMozillaMach rec {
|
||||
pname = "firefox-beta";
|
||||
version = "117.0b3";
|
||||
version = "117.0b5";
|
||||
applicationName = "Mozilla Firefox Beta";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "d051aa1f7bce063eae2f9885c3d4a54ba4234075a46ab903b0c74a343e7c6e8834a629e21b48f6d9440515bbc4780690e46e79ed8e379e3dbba953ffabc12aac";
|
||||
sha512 = "8cb7a96a996b5d3b4e119b4b6317eb7015f9e3d96a3c6a301effe4e5cdaf1c8295a68e57cd919b42a1bef8717ae6764edcbedd4399ca89e14e5f212b144125c1";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
@ -58,12 +58,12 @@
|
|||
|
||||
firefox-devedition = (buildMozillaMach rec {
|
||||
pname = "firefox-devedition";
|
||||
version = "117.0b3";
|
||||
version = "117.0b5";
|
||||
applicationName = "Mozilla Firefox Developer Edition";
|
||||
branding = "browser/branding/aurora";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/devedition/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "33b7f66304d5db77c1f83e1608bd755009b8f1d4fd034dc011fb2104b56ecd311d7db665decaa85120766c0db6e3c0675271979ebc568c0ccf90741baac04afd";
|
||||
sha512 = "16f2fc0ac5d3cd76659b33b319a39367d5e37d7c2f5246f2f76a57b1455ab16af83872ec4fb74a30e127b744a06d8dc5c99a531d3bf2ff4c6465d1d5e2fcd126";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -46,11 +46,11 @@
|
|||
"vendorHash": "sha256-6oPftQghM0h0pgc04Rm4PD8OZ/z+dEdcsIqWPPbSgbM="
|
||||
},
|
||||
"alicloud": {
|
||||
"hash": "sha256-0qPmUmQ+CGRyah2GXUADAt3HPietpAahQ9ze6Ip6yvE=",
|
||||
"hash": "sha256-hE93VV29Whh2POUz15Hcx8aq/78cw7NXDn+xUhrEA+E=",
|
||||
"homepage": "https://registry.terraform.io/providers/aliyun/alicloud",
|
||||
"owner": "aliyun",
|
||||
"repo": "terraform-provider-alicloud",
|
||||
"rev": "v1.208.1",
|
||||
"rev": "v1.209.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
|
@ -583,13 +583,13 @@
|
|||
"vendorHash": null
|
||||
},
|
||||
"ibm": {
|
||||
"hash": "sha256-XSB0bwkFiNdeVje/pCnNDDjbiroJBckSNqEFlDuctdM=",
|
||||
"hash": "sha256-FxMBZQYYSOq1Y5jm+HPIsVA1RMv8jhPWIKHd9HV/f3g=",
|
||||
"homepage": "https://registry.terraform.io/providers/IBM-Cloud/ibm",
|
||||
"owner": "IBM-Cloud",
|
||||
"repo": "terraform-provider-ibm",
|
||||
"rev": "v1.55.0",
|
||||
"rev": "v1.56.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-+HYfQoJWyZizoe/g5cycmSjaStRwbRuYfXRYVOgRqCM="
|
||||
"vendorHash": "sha256-djpo+9BxWUptKRephw0by4xtPABEjsnCqwcbZoRNIug="
|
||||
},
|
||||
"icinga2": {
|
||||
"hash": "sha256-Y/Oq0aTzP+oSKPhHiHY9Leal4HJJm7TNDpcdqkUsCmk=",
|
||||
|
@ -1088,11 +1088,11 @@
|
|||
"vendorHash": "sha256-fgvNdBwkz+YHOrLRQSe1D+3/VUhttKkJGzV6cg57g8s="
|
||||
},
|
||||
"sumologic": {
|
||||
"hash": "sha256-v4CnT51YUN7p0PdfiUJf7YAlI2pz/zkzTiNFsIWhwUU=",
|
||||
"hash": "sha256-R2t754J438nDkifE0zEtYO5q6g6N4CVQdZn9DoBiuVQ=",
|
||||
"homepage": "https://registry.terraform.io/providers/SumoLogic/sumologic",
|
||||
"owner": "SumoLogic",
|
||||
"repo": "terraform-provider-sumologic",
|
||||
"rev": "v2.24.0",
|
||||
"rev": "v2.25.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-iNBM4Y24vDGPKyb5cppSogk145F0/pAFmOzEeiWgfLI="
|
||||
},
|
||||
|
@ -1188,13 +1188,13 @@
|
|||
"vendorHash": null
|
||||
},
|
||||
"utils": {
|
||||
"hash": "sha256-3eEC0UN/VVockLstHhSNY9EH0bRv/LK3SkpSfMrMwSI=",
|
||||
"hash": "sha256-UqAWByIArvTz2ArR/dgIDw98grqj9BEyRJzNODteKao=",
|
||||
"homepage": "https://registry.terraform.io/providers/cloudposse/utils",
|
||||
"owner": "cloudposse",
|
||||
"repo": "terraform-provider-utils",
|
||||
"rev": "1.9.0",
|
||||
"rev": "1.10.0",
|
||||
"spdx": "Apache-2.0",
|
||||
"vendorHash": "sha256-ZOJ4J+t8YIWAFZe9dnVHezdXdjz5y2ho53wmyS4dJEo="
|
||||
"vendorHash": "sha256-n70qtdz4x8bdzCmVYyVTvvndx0w0AV/Yv8thGvitT6U="
|
||||
},
|
||||
"vault": {
|
||||
"hash": "sha256-lnM52d7J36wu9MYh13IFSR15rMfJpXP4tw47LzRy4o4=",
|
||||
|
@ -1261,11 +1261,11 @@
|
|||
"vendorHash": null
|
||||
},
|
||||
"wavefront": {
|
||||
"hash": "sha256-ag4mu9CyG78X47QGMTQTK7+VsdCv0TBOCovVnM4OMsw=",
|
||||
"hash": "sha256-bBJZT5h/2ZFTKhFXMWj/xf+DAMGdUZw8E07PuIsMVpU=",
|
||||
"homepage": "https://registry.terraform.io/providers/vmware/wavefront",
|
||||
"owner": "vmware",
|
||||
"repo": "terraform-provider-wavefront",
|
||||
"rev": "v5.0.0",
|
||||
"rev": "v5.0.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-77pijBYzCQoaZgMRNRwZEAJVM51EMGezXXcrfn9ae1Q="
|
||||
},
|
||||
|
|
|
@ -167,8 +167,8 @@ rec {
|
|||
mkTerraform = attrs: pluggable (generic attrs);
|
||||
|
||||
terraform_1 = mkTerraform {
|
||||
version = "1.5.4";
|
||||
hash = "sha256-MvN4gSJcPORD0wj6ixc3gUXPISGvAKSJPA6bS/SmDOY=";
|
||||
version = "1.5.5";
|
||||
hash = "sha256-SBS3a/CIUdyIUJvc+rANIs+oXCQgfZut8b0517QKq64=";
|
||||
vendorHash = "sha256-lQgWNMBf+ioNxzAV7tnTQSIS840XdI9fg9duuwoK+U4=";
|
||||
patches = [ ./provider-path-0_15.patch ];
|
||||
passthru = {
|
||||
|
|
|
@ -5,16 +5,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "zarf";
|
||||
version = "0.28.2";
|
||||
version = "0.28.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "defenseunicorns";
|
||||
repo = "zarf";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-4217HkmTridDkq0c0lqkcbwqxqAceNIVFl/TEDcuxCA=";
|
||||
hash = "sha256-UloVE3CRiXYzIAm0Yyt0WyYEY7ykCyIiPH5JNa/acAo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-sTI/fpT/5/2ulhCuhsKpY5epJup2TxF2jpRqBI0eOWA=";
|
||||
vendorHash = "sha256-+i4pHHCo7sSESerHEVQ1r8MoEzhKdfhRGRjvyiyPG5E=";
|
||||
proxyVendor = true;
|
||||
|
||||
preBuild = ''
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "flexget";
|
||||
version = "3.8.0";
|
||||
version = "3.8.2";
|
||||
format = "pyproject";
|
||||
|
||||
# Fetch from GitHub in order to use `requirements.in`
|
||||
|
@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
owner = "Flexget";
|
||||
repo = "Flexget";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-sAA01/Hs8yGFJM+ttwhonrBqTpGsEoWrYDU8w/YmE6A=";
|
||||
hash = "sha256-IdjNk1GyJcNwHqm/ZYdHRh6a/XAD5p41Vu8JdPuCglE=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -13,15 +13,15 @@
|
|||
, olm
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "quaternion";
|
||||
version = "0.0.95.81";
|
||||
version = "0.0.96-beta4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "QMatrixClient";
|
||||
owner = "quotient-im";
|
||||
repo = "Quaternion";
|
||||
rev = "5f639d8c84ed1475057b2cb3f7d0cb0abe77203b";
|
||||
hash = "sha256-/1fich97oqSSDpfOjaYghYzHfu3MDrh77nanbIN/v/w=";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-yItl31Ze48lRIIey+FlRLMVAkg4mHu8G1sFOceHvTJw=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -36,6 +36,10 @@ stdenv.mkDerivation {
|
|||
|
||||
nativeBuildInputs = [ cmake qttools wrapQtAppsHook ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DBUILD_WITH_QT6=OFF"
|
||||
];
|
||||
|
||||
postInstall =
|
||||
if stdenv.isDarwin then ''
|
||||
mkdir -p $out/Applications
|
||||
|
|
|
@ -36,14 +36,14 @@ let
|
|||
in
|
||||
assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
|
||||
stdenv.mkDerivation rec {
|
||||
version = "4.0.2";
|
||||
version = "4.0.3";
|
||||
pname = "weechat";
|
||||
|
||||
hardeningEnable = [ "pie" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://weechat.org/files/src/weechat-${version}.tar.xz";
|
||||
hash = "sha256-DmSO4NAkyAmUJe5g1BsnKSTsjhmADujxRBCQcIg0Ajw=";
|
||||
hash = "sha256-iA29zo5zs/SAKggsShp8YZQ9vFhn16lWleTkY8ZTWpI=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "kubo";
|
||||
version = "0.21.0"; # When updating, also check if the repo version changed and adjust repoVersion below
|
||||
version = "0.22.0"; # When updating, also check if the repo version changed and adjust repoVersion below
|
||||
rev = "v${version}";
|
||||
|
||||
passthru.repoVersion = "14"; # Also update kubo-migrator when changing the repo version
|
||||
|
@ -10,7 +10,7 @@ buildGoModule rec {
|
|||
# Kubo makes changes to it's source tarball that don't match the git source.
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ipfs/kubo/releases/download/${rev}/kubo-source.tar.gz";
|
||||
hash = "sha256-tS7hiv7KnALR+hCn/TPUwqp/xIOLnQ3ReSb1bNBnwUY=";
|
||||
hash = "sha256-TX5ZM8Kyj3LZ12Ro7MsHRd+P5XLk/mU7DUxZaopSEV0=";
|
||||
};
|
||||
|
||||
# tarball contains multiple files/directories
|
||||
|
|
|
@ -9,11 +9,13 @@ in
|
|||
nodePackages.n8n.override {
|
||||
nativeBuildInputs = [
|
||||
pkgs.nodePackages.node-pre-gyp
|
||||
pkgs.which
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
pkgs.postgresql
|
||||
pkgs.libkrb5
|
||||
pkgs.libmongocrypt
|
||||
pkgs.postgresql
|
||||
];
|
||||
|
||||
# Oracle's official package on npm is binary only (WHY?!) and doesn't provide binaries for aarch64.
|
||||
|
|
4921
pkgs/applications/networking/n8n/node-packages.nix
generated
4921
pkgs/applications/networking/n8n/node-packages.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -67,6 +67,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--set-default SSL_CERT_DIR "/etc/ssl/certs/"
|
||||
--prefix LD_LIBRARY_PATH : "${libX11.out}/lib"
|
||||
${lib.optionalString stdenv.isDarwin ''
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
|
||||
|
|
|
@ -12,13 +12,13 @@
|
|||
|
||||
buildPythonApplication rec {
|
||||
pname = "git-machete";
|
||||
version = "3.17.8";
|
||||
version = "3.17.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "virtuslab";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-d1vbLlGKln/zcuuKZgNOcu/z15co3p8ecrwL5lucIEk=";
|
||||
hash = "sha256-oU4c57XU/DLGjOl/CyCt6oG3QaB2xnrOEg+sUAd7sww=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
|
|
@ -397,5 +397,6 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
|
||||
platforms = lib.platforms.all;
|
||||
maintainers = with lib.maintainers; [ primeos wmertens globin ];
|
||||
mainProgram = "git";
|
||||
};
|
||||
})
|
||||
|
|
|
@ -20,6 +20,7 @@ lib.recurseIntoAttrs
|
|||
thumbfast = callPackage ./thumbfast.nix { };
|
||||
thumbnail = callPackage ./thumbnail.nix { };
|
||||
uosc = callPackage ./uosc.nix { };
|
||||
visualizer = callPackage ./visualizer.nix { };
|
||||
vr-reversal = callPackage ./vr-reversal.nix { };
|
||||
webtorrent-mpv-hook = callPackage ./webtorrent-mpv-hook.nix { };
|
||||
cutter = callPackage ./cutter.nix { };
|
||||
|
|
34
pkgs/applications/video/mpv/scripts/visualizer.nix
Normal file
34
pkgs/applications/video/mpv/scripts/visualizer.nix
Normal file
|
@ -0,0 +1,34 @@
|
|||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "visualizer";
|
||||
version = "unstable-2021-07-10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mfcc64";
|
||||
repo = "mpv-scripts";
|
||||
rev = "a0cd87eeb974a4602c5d8086b4051b5ab72f42e1";
|
||||
sha256 = "1xgd1nd117lpj3ppynhgaa5sbkfm7l8n6c9a2fy8p07is2dkndrq";
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/share/mpv/scripts
|
||||
cp visualizer.lua $out/share/mpv/scripts
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.scriptName = "visualizer.lua";
|
||||
|
||||
meta = with lib; {
|
||||
description = "various audio visualization";
|
||||
homepage = "https://github.com/mfcc64/mpv-scripts";
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [kmein];
|
||||
};
|
||||
}
|
|
@ -16,13 +16,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "advanced-scene-switcher";
|
||||
version = "1.23.0";
|
||||
version = "1.23.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "WarmUpTill";
|
||||
repo = "SceneSwitcher";
|
||||
rev = version;
|
||||
hash = "sha256-X1qeMNTC2Hsl3Yh3E7PYVWAMGjGylF/EBkgW4WrtH40=";
|
||||
hash = "sha256-rpZ/vR9QbWgr8n6LDv6iTRsKXSIDGy0IpPu1Uatb0zw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "obs-tuna";
|
||||
version = "1.9.6";
|
||||
version = "1.9.7";
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
|
||||
buildInputs = [ obs-studio qtbase zlib curl taglib dbus ];
|
||||
|
@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
owner = "univrsal";
|
||||
repo = "tuna";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-+AgRaivvYhogX4CLGK2ylvE8tQoauC/UMvXK6W0Tvog=";
|
||||
hash = "sha256-NpfQ3zi+1kQNt2Lj4+1kX2bW9A/E2/MhUV1BA1UX4y0=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -9,31 +9,31 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "0.16.0";
|
||||
version = "0.17.0";
|
||||
|
||||
dist = {
|
||||
aarch64-darwin = rec {
|
||||
archSuffix = "Darwin-arm64";
|
||||
url = "https://github.com/lima-vm/lima/releases/download/v${version}/lima-${version}-${archSuffix}.tar.gz";
|
||||
sha256 = "092d586426f85c61263bd4822c22538b1585dc84d0369dccac936db758a17ce1";
|
||||
sha256 = "c1b6cd12d13a67918be0f85c1036c2fbc894ef91707cbb9a8c346c0cb371a4e5";
|
||||
};
|
||||
|
||||
x86_64-darwin = rec {
|
||||
archSuffix = "Darwin-x86_64";
|
||||
url = "https://github.com/lima-vm/lima/releases/download/v${version}/lima-${version}-${archSuffix}.tar.gz";
|
||||
sha256 = "6c6278ddc2db080b4ad6a2f39ae36e6258efd6c696fbe599a5d389cfb9232aa1";
|
||||
sha256 = "cecefed3ae3aadc25b591973db51f89278589cb53605b17282b8afb7c38febab";
|
||||
};
|
||||
|
||||
aarch64-linux = rec {
|
||||
archSuffix = "Linux-aarch64";
|
||||
url = "https://github.com/lima-vm/lima/releases/download/v${version}/lima-${version}-${archSuffix}.tar.gz";
|
||||
sha256 = "e33301878082cb73eb9bc4f267b91eb4895ac3c8303d56d4b86c1264563bfcff";
|
||||
sha256 = "b07fc3af272b7e86ea913a91722f46a8bc6361d74c2db9ca097c88852e444f1d";
|
||||
};
|
||||
|
||||
x86_64-linux = rec {
|
||||
archSuffix = "Linux-x86_64";
|
||||
url = "https://github.com/lima-vm/lima/releases/download/v${version}/lima-${version}-${archSuffix}.tar.gz";
|
||||
sha256 = "be6093c2a9b0aa3c39cc5a5e39e79223c6d03f0e07ebadf70c3c128143672a84";
|
||||
sha256 = "1e455d4d1a213db2521aba3b1d282fcee70e5e42482f32177488539e8b35c103";
|
||||
};
|
||||
};
|
||||
in
|
||||
|
|
|
@ -1,14 +1,33 @@
|
|||
{ pcre, pcre2, libXinerama, picom, lib, fetchFromGitHub }:
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, libXinerama
|
||||
, pcre
|
||||
, pcre2
|
||||
, picom
|
||||
, xcbutil
|
||||
}:
|
||||
|
||||
picom.overrideAttrs (oldAttrs: rec {
|
||||
picom.overrideAttrs (oldAttrs: {
|
||||
pname = "picom-next";
|
||||
version = "unstable-2023-01-29";
|
||||
buildInputs = [ pcre2 ] ++ lib.remove libXinerama (lib.remove pcre oldAttrs.buildInputs);
|
||||
version = "unstable-2023-08-03";
|
||||
|
||||
buildInputs = [
|
||||
pcre2
|
||||
xcbutil
|
||||
]
|
||||
# remove dependencies that are not used anymore
|
||||
++ (lib.subtractLists [
|
||||
libXinerama
|
||||
pcre
|
||||
]
|
||||
oldAttrs.buildInputs);
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yshui";
|
||||
repo = "picom";
|
||||
rev = "cee12875625465292bc11bf09dc8ab117cae75f4";
|
||||
sha256 = "sha256-lVwBwOvzn4ro1jInRuNvn1vQuwUHUp4MYrDaFRmW9pc=";
|
||||
rev = "5d6957d3da1bf99311a676eab94c69ef4276bedf";
|
||||
hash = "sha256-Mzf0533roLSODjMCPKyGSMbP7lIbT+PoLTZfoIBAI6g=";
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; oldAttrs.meta.maintainers ++ [ GKasparov ];
|
||||
})
|
||||
|
|
|
@ -357,12 +357,20 @@ rec {
|
|||
'';
|
||||
|
||||
checkPhase =
|
||||
# GHC (=> shellcheck) isn't supported on some platforms (such as risc-v)
|
||||
# but we still want to use writeShellApplication on those platforms
|
||||
let
|
||||
shellcheckSupported = lib.meta.availableOn stdenv.buildPlatform shellcheck.compiler;
|
||||
shellcheckCommand = lib.optionalString shellcheckSupported ''
|
||||
# use shellcheck which does not include docs
|
||||
# pandoc takes long to build and documentation isn't needed for just running the cli
|
||||
${lib.getExe (haskell.lib.compose.justStaticExecutables shellcheck.unwrapped)} "$target"
|
||||
'';
|
||||
in
|
||||
if checkPhase == null then ''
|
||||
runHook preCheck
|
||||
${stdenv.shellDryRun} "$target"
|
||||
# use shellcheck which does not include docs
|
||||
# pandoc takes long to build and documentation isn't needed for in nixpkgs usage
|
||||
${lib.getExe (haskell.lib.compose.justStaticExecutables shellcheck.unwrapped)} "$target"
|
||||
${shellcheckCommand}
|
||||
runHook postCheck
|
||||
''
|
||||
else checkPhase;
|
||||
|
|
|
@ -22,7 +22,7 @@ in
|
|||
lib.checkListOfEnum "${pname}: theme variants" [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "blue" "all" ] themeVariants
|
||||
lib.checkListOfEnum "${pname}: color variants" [ "standard" "light" "dark" ] colorVariants
|
||||
lib.checkListOfEnum "${pname}: size variants" [ "standard" "compact" ] sizeVariants
|
||||
lib.checkListOfEnum "${pname}: tweaks" [ "nord" "black" "dark" "rimless" "normal" ] tweaks
|
||||
lib.checkListOfEnum "${pname}: tweaks" [ "nord" "black" "darker" "rimless" "normal" "float" "colorful" ] tweaks
|
||||
lib.checkListOfEnum "${pname}: grub screens" [ "1080p" "2k" "4k" ] grubScreens
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
|
|
|
@ -13,13 +13,13 @@
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "elementary-icon-theme";
|
||||
version = "7.3.0";
|
||||
version = "7.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "elementary";
|
||||
repo = "icons";
|
||||
rev = version;
|
||||
sha256 = "sha256-4ZXqIMXyb9MLd6EHmPn672Dbw992GYYU64oB+4p6jXY=";
|
||||
sha256 = "sha256-3qvbpY1O8E3sX+66yBoZXEOeWQrgyNu2rOT6PPbli58=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ lib
|
||||
, mkDerivation
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, kcoreaddons
|
||||
, kwindowsystem
|
||||
|
@ -7,17 +7,19 @@
|
|||
, systemsettings
|
||||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
stdenv.mkDerivation(finalAttrs: {
|
||||
pname = "kzones";
|
||||
version = "0.5";
|
||||
version = "0.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "gerritdevriese";
|
||||
repo = "kzones";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-0f7Fv5cvRvqNrKjHpU/tLpjiBPN0ExwTDq1p9sdLd4o=";
|
||||
rev = "v${finalAttrs.version}";
|
||||
sha256 = "sha256-OAgzuX05dvotjRWiyPPeUieVJbQoy/opGYu6uVKQM60=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ plasma-framework ];
|
||||
|
||||
buildInputs = [
|
||||
kcoreaddons
|
||||
kwindowsystem
|
||||
|
@ -27,13 +29,16 @@ mkDerivation rec {
|
|||
|
||||
dontBuild = true;
|
||||
|
||||
# we don't have anything to wrap anyway
|
||||
dontWrapQtApps = true;
|
||||
|
||||
# 1. --global still installs to $HOME/.local/share so we use --packageroot
|
||||
# 2. plasmapkg2 doesn't copy metadata.desktop into place, so we do that manually
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
plasmapkg2 --type kwinscript --install ${src} --packageroot $out/share/kwin/scripts
|
||||
install -Dm644 ${src}/metadata.desktop $out/share/kservices5/kwin-script-kzones.desktop
|
||||
plasmapkg2 --type kwinscript --install ${finalAttrs.src} --packageroot $out/share/kwin/scripts
|
||||
install -Dm644 ${finalAttrs.src}/metadata.desktop $out/share/kservices5/kwin-script-kzones.desktop
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
@ -42,8 +47,7 @@ mkDerivation rec {
|
|||
description = "KWin Script for snapping windows into zones";
|
||||
maintainers = with maintainers; [ matthiasbeyer ];
|
||||
license = licenses.gpl3Plus;
|
||||
inherit (src.meta) homepage;
|
||||
inherit (finalAttrs.src.meta) homepage;
|
||||
inherit (kwindowsystem.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
})
|
||||
|
|
|
@ -13,12 +13,12 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "circt";
|
||||
version = "1.49.0";
|
||||
version = "1.50.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "llvm";
|
||||
repo = "circt";
|
||||
rev = "firtool-${version}";
|
||||
sha256 = "sha256-pHMysxnczKilfjJafobU18/gaWnfrHMpPUd6RQ+CXSg=";
|
||||
sha256 = "sha256-fZlJw+2kj8ZTt2Yb15yKD9koZPUfnalDchG29PgJTVs=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -1,14 +1,24 @@
|
|||
# Run autoOpenGLRunpath on all files
|
||||
# shellcheck shell=bash
|
||||
# Run addOpenGLRunpath on all dynamically linked, ELF files
|
||||
echo "Sourcing auto-add-opengl-runpath-hook"
|
||||
|
||||
autoAddOpenGLRunpathPhase () {
|
||||
# TODO: support multiple outputs
|
||||
for file in $(find ${out,lib,bin} -type f); do
|
||||
addOpenGLRunpath $file
|
||||
done
|
||||
}
|
||||
autoAddOpenGLRunpathPhase() (
|
||||
local outputPaths
|
||||
mapfile -t outputPaths < <(for o in $(getAllOutputNames); do echo "${!o}"; done)
|
||||
find "${outputPaths[@]}" -type f -executable -print0 | while IFS= read -rd "" f; do
|
||||
if isELF "$f"; then
|
||||
# patchelf returns an error on statically linked ELF files
|
||||
if patchelf --print-interpreter "$f" >/dev/null 2>&1; then
|
||||
echo "autoAddOpenGLRunpathHook: patching $f"
|
||||
addOpenGLRunpath "$f"
|
||||
elif [ -n "${DEBUG-}" ]; then
|
||||
echo "autoAddOpenGLRunpathHook: skipping ELF file $f"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
)
|
||||
|
||||
if [ -z "${dontUseAutoAddOpenGLRunpath-}" ]; then
|
||||
echo "Using autoAddOpenGLRunpathPhase"
|
||||
postFixupHooks+=(autoAddOpenGLRunpathPhase)
|
||||
echo "Using autoAddOpenGLRunpathPhase"
|
||||
postFixupHooks+=(autoAddOpenGLRunpathPhase)
|
||||
fi
|
||||
|
|
|
@ -9,16 +9,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "erg";
|
||||
version = "0.6.17";
|
||||
version = "0.6.18";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "erg-lang";
|
||||
repo = "erg";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-KHfKV0i3jYwzD/PQ0TSOlxjUnc08pk0yKrLQlg5eQvg=";
|
||||
hash = "sha256-bpKzC7xHP4vfl2WcyMEsFK1aAbkP3dtlpyNvXUWHWKg=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-PD1C3IsupjyQndD971zbfHYxizOQd/t770u48o/aGmk=";
|
||||
cargoHash = "sha256-wIp+zQpHLmZNwgbSXQKV45YwO5qpZqdcUE6gnF/Wzhk=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
{ gccStdenv, lib, git, openssl, autoconf, pkgs, makeStaticLibraries, gcc, coreutils, gnused, gnugrep,
|
||||
src, version, git-version, stampYmd ? 0, stampHms ? 0,
|
||||
gambit-support, optimizationSetting ? "-O1", gambit-params ? pkgs.gambit-support.stable-params }:
|
||||
{ gccStdenv, lib, pkgs,
|
||||
git, openssl, autoconf, gcc, coreutils, gnused, gnugrep,
|
||||
makeStaticLibraries,
|
||||
src, version, git-version,
|
||||
stampYmd ? 0, stampHms ? 0,
|
||||
gambit-support,
|
||||
optimizationSetting ? "-O1",
|
||||
gambit-params ? pkgs.gambit-support.stable-params }:
|
||||
|
||||
# Note that according to a benchmark run by Marc Feeley on May 2018,
|
||||
# clang is 10x (with default settings) to 15% (with -O2) slower than GCC at compiling
|
||||
|
@ -45,6 +50,7 @@ gccStdenv.mkDerivation rec {
|
|||
"--enable-shared"
|
||||
"--enable-absolute-shared-libs" # Yes, NixOS will want an absolute path, and fix it.
|
||||
"--enable-openssl"
|
||||
"--enable-dynamic-clib"
|
||||
#"--enable-default-compile-options='(compactness 9)'" # Make life easier on the JS backend
|
||||
"--enable-default-runtime-options=${gambit-params.defaultRuntimeOptions}"
|
||||
# "--enable-rtlib-debug" # used by Geiser, but only on recent-enough gambit, and messes js runtime
|
||||
|
@ -62,6 +68,7 @@ gccStdenv.mkDerivation rec {
|
|||
# "--enable-coverage"
|
||||
# "--enable-inline-jumps"
|
||||
# "--enable-char-size=1" # default is 4
|
||||
# "--enable-march=native" # Nope, makes it not work on machines older than the builder
|
||||
] ++ gambit-params.extraOptions
|
||||
# Do not enable poll on darwin due to https://github.com/gambit/gambit/issues/498
|
||||
++ lib.optional (!gccStdenv.isDarwin) "--enable-poll";
|
||||
|
|
|
@ -16,12 +16,13 @@ rec {
|
|||
--replace "echo > stamp.h;" "(echo '#define ___STAMP_VERSION \"${git-version}\"'; echo '#define ___STAMP_YMD ${toString stampYmd}'; echo '#define ___STAMP_HMS ${toString stampHms}';) > stamp.h;";
|
||||
'';
|
||||
modules = true;
|
||||
extraOptions = [];
|
||||
#extraOptions = [];
|
||||
extraOptions = ["--enable-trust-c-tco" "CFLAGS=-foptimize-sibling-calls"];
|
||||
};
|
||||
|
||||
unstable-params = stable-params // {
|
||||
stable = false;
|
||||
extraOptions = ["--enable-trust-c-tco"];
|
||||
extraOptions = ["--enable-trust-c-tco"]; # "CFLAGS=-foptimize-sibling-calls" not necessary in latest unstable
|
||||
};
|
||||
|
||||
export-gambopt = params : "export GAMBOPT=${params.buildRuntimeOptions} ;";
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
{ callPackage, fetchFromGitHub, gambit-support }:
|
||||
|
||||
callPackage ./build.nix {
|
||||
version = "unstable-2023-07-30";
|
||||
git-version = "4.9.5-3-ge059fffd";
|
||||
stampYmd = 20230730;
|
||||
stampHms = 151945;
|
||||
version = "unstable-2023-08-06";
|
||||
git-version = "4.9.5-5-gf1fbe9aa";
|
||||
stampYmd = 20230806;
|
||||
stampHms = 195822;
|
||||
src = fetchFromGitHub {
|
||||
owner = "gambit";
|
||||
repo = "gambit";
|
||||
rev = "e059fffdfbd91e27c350ff2ebd671adefadd5212";
|
||||
sha256 = "0q7hdfchl6lw53xawmmjvhyjdmqxjdsnzjqv9vpkl2qa4vyir5fs";
|
||||
rev = "f1fbe9aa0f461e89f2a91bc050c1373ee6d66482";
|
||||
sha256 = "0b0gd6cwj8zxwcqglpsnmanysiq4mvma2mrgdfr6qy99avhbhzxm";
|
||||
};
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
|||
grep -Fl '#!/usr/bin/env' `find . -type f -executable` | while read f ; do
|
||||
substituteInPlace "$f" --replace '#!/usr/bin/env' '#!${coreutils}/bin/env' ;
|
||||
done ;
|
||||
'';
|
||||
'';
|
||||
|
||||
## TODO: make static compilation work.
|
||||
## For that, get all the packages below to somehow expose static libraries,
|
||||
|
@ -92,8 +92,8 @@ stdenv.mkDerivation rec {
|
|||
meta = {
|
||||
description = "Gerbil Scheme";
|
||||
homepage = "https://github.com/vyzo/gerbil";
|
||||
license = lib.licenses.lgpl21; # also asl20, like Gambit
|
||||
# NB regarding platforms: regularly tested on Linux, only occasionally on macOS.
|
||||
license = lib.licenses.lgpl21Only; # dual, also asl20, like Gambit
|
||||
# NB regarding platforms: regularly tested on Linux and on macOS.
|
||||
# Please report success and/or failure to fare.
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{ callPackage, fetchFromGitHub }:
|
||||
|
||||
callPackage ./build.nix rec {
|
||||
version = "0.16";
|
||||
version = "0.17";
|
||||
git-version = version;
|
||||
src = fetchFromGitHub {
|
||||
owner = "vyzo";
|
||||
repo = "gerbil";
|
||||
rev = "v${version}";
|
||||
sha256 = "0vng0kxpnwsg8jbjdpyn4sdww36jz7zfpfbzayg9sdpz6bjxjy0f";
|
||||
sha256 = "0xzi9mhrmzcajhlz5qcnz4yjlljvbkbm9426iifgjn47ac0965zw";
|
||||
};
|
||||
}
|
||||
|
|
27
pkgs/development/compilers/gerbil/ftw.nix
Normal file
27
pkgs/development/compilers/gerbil/ftw.nix
Normal file
|
@ -0,0 +1,27 @@
|
|||
{ lib, fetchFromGitHub, gerbilPackages, ... }:
|
||||
|
||||
{
|
||||
pname = "ftw";
|
||||
version = "unstable-2022-01-14";
|
||||
git-version = "8ba16b3";
|
||||
softwareName = "FTW: For The Web!";
|
||||
gerbil-package = "drewc/ftw";
|
||||
|
||||
gerbilInputs = with gerbilPackages; [ gerbil-utils ];
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "drewc";
|
||||
repo = "ftw";
|
||||
rev = "8ba16b3c1cdc2150df5af8ef3c92040ef8b563b9";
|
||||
sha256 = "153i6whm5jfcj9s1qpxz03sq67969lq11brssyjc3yv3wyb1b07h";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Simple web handlers for Gerbil Scheme";
|
||||
homepage = "https://github.com/drewc/ftw";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
|
@ -1,28 +1,29 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
{ pkgs, lib, fetchFromGitHub, gerbilPackages, ... }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
{
|
||||
pname = "gerbil-crypto";
|
||||
version = "unstable-2020-08-01";
|
||||
git-version = "0.0-6-ga228862";
|
||||
version = "unstable-2023-03-27";
|
||||
git-version = "0.0-18-ge57f887";
|
||||
gerbil-package = "clan/crypto";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = [gerbil-support.gerbilPackages-unstable.gerbil-utils];
|
||||
gerbilInputs = with gerbilPackages; [ gerbil-utils gerbil-poo ];
|
||||
nativeBuildInputs = [ pkgs.pkg-config ];
|
||||
buildInputs = [pkgs.secp256k1 ];
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
buildInputs = [ pkgs.secp256k1 ];
|
||||
version-path = "version";
|
||||
softwareName = "Gerbil-crypto";
|
||||
src = fetchFromGitHub {
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "fare";
|
||||
repo = "gerbil-crypto";
|
||||
rev = "a22886260849ec92c3a34bfeedc1574e41e49e33";
|
||||
sha256 = "0qbanw2vnw2ymmr4pr1jap29cyc3icbhyq0apibpfnj2znns7w47";
|
||||
rev = "e57f88742d9b41640b4a7d9bd3e86c688d4a83f9";
|
||||
sha256 = "08hrk3s82hbigvza75vgx9kc7qf64yhhn3xm5calc859sy6ai4ka";
|
||||
};
|
||||
meta = {
|
||||
|
||||
meta = with lib; {
|
||||
description = "Gerbil Crypto: Extra Cryptographic Primitives for Gerbil";
|
||||
homepage = "https://github.com/fare/gerbil-crypto";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,28 +1,49 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
{ lib, fetchFromGitHub, gerbilPackages, gerbil-support, gerbil, ... }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
rec {
|
||||
pname = "gerbil-ethereum";
|
||||
version = "unstable-2020-10-18";
|
||||
git-version = "0.0-26-gf27ada8";
|
||||
gerbil-package = "mukn/ethereum";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = with gerbil-support.gerbilPackages-unstable;
|
||||
[gerbil-utils gerbil-crypto gerbil-poo gerbil-persist];
|
||||
buildInputs = [];
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = "version";
|
||||
version = "unstable-2023-05-30";
|
||||
git-version = "0.0-375-g989a5ca";
|
||||
softwareName = "Gerbil-ethereum";
|
||||
src = fetchFromGitHub {
|
||||
gerbil-package = "mukn/ethereum";
|
||||
version-path = "version";
|
||||
|
||||
gerbilInputs = with gerbilPackages; [ gerbil-utils gerbil-crypto gerbil-poo gerbil-persist ];
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "fare";
|
||||
repo = "gerbil-ethereum";
|
||||
rev = "f27ada8e7f4de4f8fbdfede9fe055914b254d8e7";
|
||||
sha256 = "1lykjqim6a44whj1r8kkpiz68wghkfqx5vjlrc2ldxlmgd4r9gvd";
|
||||
rev = "989a5ca78958e42c4a1ec242786ade89f1887e48";
|
||||
sha256 = "0bs2knhx3hy3k72yidgaplwjd48y86arqscdik8hgxwmhm9z8kwp";
|
||||
};
|
||||
meta = {
|
||||
|
||||
postInstall = ''
|
||||
cp scripts/{croesus.prv,genesis.json,logback.xml,yolo-evm.conf,yolo-kevm.conf,run-ethereum-test-net.ss} $out/gerbil/lib/mukn/ethereum/scripts/
|
||||
mkdir -p $out/bin
|
||||
cat > $out/bin/run-ethereum-test-net <<EOF
|
||||
#!/bin/sh
|
||||
#|
|
||||
ORIG_GERBIL_LOADPATH="\$GERBIL_LOADPATH"
|
||||
ORIG_GERBIL_PATH="\$GERBIL_PATH"
|
||||
ORIG_GERBIL_HOME="\$GERBIL_HOME"
|
||||
unset GERBIL_HOME
|
||||
GERBIL_LOADPATH="${gerbil-support.gerbilLoadPath (["$out"] ++ gerbilInputs)}"
|
||||
GERBIL_PATH="\$HOME/.cache/gerbil-ethereum/gerbil"
|
||||
export GERBIL_PATH GERBIL_LOADPATH GLOW_SOURCE ORIG_GERBIL_PATH ORIG_GERBIL_LOADPATH
|
||||
exec ${gerbil}/bin/gxi "\$0" "\$@"
|
||||
|#
|
||||
(import :mukn/ethereum/scripts/run-ethereum-test-net :clan/multicall)
|
||||
(apply call-entry-point (cdr (command-line)))
|
||||
EOF
|
||||
chmod a+x $out/bin/run-ethereum-test-net
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Gerbil Ethereum: a Scheme alternative to web3.js";
|
||||
homepage = "https://github.com/fare/gerbil-ethereum";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,27 +1,27 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
{ lib, fetchFromGitHub, ... }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
{
|
||||
pname = "gerbil-libp2p";
|
||||
version = "unstable-2018-12-27";
|
||||
git-version = "2376b3f";
|
||||
gerbil-package = "vyzo";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = [];
|
||||
buildInputs = []; # Note: at *runtime*, depends on go-libp2p-daemon
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = "version";
|
||||
version = "unstable-2022-02-03";
|
||||
git-version = "15b3246";
|
||||
softwareName = "Gerbil-libp2p";
|
||||
src = fetchFromGitHub {
|
||||
gerbil-package = "vyzo";
|
||||
|
||||
buildInputs = []; # Note: at *runtime*, this depends on go-libp2p-daemon running
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "vyzo";
|
||||
repo = "gerbil-libp2p";
|
||||
rev = "2376b3f39cee04dd4ec455c8ea4e5faa93c2bf88";
|
||||
sha256 = "0jcy7hfg953078msigyfwp2g4ii44pi6q7vcpmq01cbbvxpxz6zw";
|
||||
rev = "15b32462e683d89ffce0ff15ad373d293ea0ee5d";
|
||||
sha256 = "059lydp7d6pjgrd4pdnqq2zffzlba62ch102f01rgzf9aps3c8lz";
|
||||
};
|
||||
meta = {
|
||||
|
||||
meta = with lib; {
|
||||
description = "Gerbil libp2p: use libp2p from Gerbil";
|
||||
homepage = "https://github.com/vyzo/gerbil-libp2p";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,27 +1,27 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
{ lib, fetchFromGitHub, gerbilPackages, ... }:
|
||||
{
|
||||
pname = "gerbil-persist";
|
||||
version = "unstable-2020-08-31";
|
||||
git-version = "0.0-8-gd211390";
|
||||
gerbil-package = "clan/persist";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = with gerbil-support.gerbilPackages-unstable; [gerbil-utils gerbil-crypto gerbil-poo];
|
||||
buildInputs = [];
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = "version";
|
||||
version = "unstable-2023-03-02";
|
||||
git-version = "0.1.0-24-ge2305f5";
|
||||
softwareName = "Gerbil-persist";
|
||||
src = fetchFromGitHub {
|
||||
gerbil-package = "clan/persist";
|
||||
version-path = "version";
|
||||
|
||||
gerbilInputs = with gerbilPackages; [ gerbil-utils gerbil-crypto gerbil-poo ];
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "fare";
|
||||
repo = "gerbil-persist";
|
||||
rev = "d211390c8a199cf2b8c7400cd98977524e960015";
|
||||
sha256 = "13s6ws8ziwalfp23nalss41qnz667z2712lr3y123sypm5n5axk7";
|
||||
rev = "e2305f53571e55292179286ca2d88e046ec6638b";
|
||||
sha256 = "1vsi4rfzpqg4hhn53d2r26iw715vzwz0hiai9r34z4diwzqixfgn";
|
||||
};
|
||||
meta = {
|
||||
|
||||
meta = with lib; {
|
||||
description = "Gerbil Persist: Persistent data and activities";
|
||||
homepage = "https://github.com/fare/gerbil-persist";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,27 +1,28 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
{ lib, fetchFromGitHub, gerbilPackages, ... }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
pname = "gerbil-ethereum";
|
||||
version = "unstable-2020-10-17";
|
||||
git-version = "0.0-35-g44d490d";
|
||||
gerbil-package = "clan/poo";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = with gerbil-support.gerbilPackages-unstable; [gerbil-utils gerbil-crypto];
|
||||
buildInputs = [];
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = "version";
|
||||
{
|
||||
pname = "gerbil-poo";
|
||||
version = "unstable-2023-04-28";
|
||||
git-version = "0.0-106-g418b582";
|
||||
softwareName = "Gerbil-POO";
|
||||
src = fetchFromGitHub {
|
||||
gerbil-package = "clan/poo";
|
||||
version-path = "version";
|
||||
|
||||
gerbilInputs = with gerbilPackages; [ gerbil-utils ];
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "fare";
|
||||
repo = "gerbil-poo";
|
||||
rev = "44d490d95b9d1b5d54eaedf2602419af8e086837";
|
||||
sha256 = "082ndpy281saybcnp3bdidcibkk2ih6glrkbb5fdj1524ban4d0k";
|
||||
rev = "418b582ae72e1494cf3a5f334d31d4f6503578f5";
|
||||
sha256 = "0qdzs7l6hp45dji5bc3879k4c8k9x6cj4qxz68cskjhn8wrc5lr8";
|
||||
};
|
||||
meta = {
|
||||
|
||||
meta = with lib; {
|
||||
description = "Gerbil POO: Prototype Object Orientation for Gerbil Scheme";
|
||||
homepage = "https://github.com/fare/gerbil-poo";
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,54 +1,112 @@
|
|||
{ pkgs, lib, gccStdenv, callPackage, fetchFromGitHub }:
|
||||
# See ../gambit/build.nix regarding gccStdenv
|
||||
{ pkgs, lib, callPackage, ... }:
|
||||
|
||||
rec {
|
||||
# Gerbil libraries
|
||||
gerbilPackages-unstable = {
|
||||
gerbil-libp2p = callPackage ./gerbil-libp2p.nix { };
|
||||
gerbil-utils = callPackage ./gerbil-utils.nix { };
|
||||
gerbil-crypto = callPackage ./gerbil-crypto.nix { };
|
||||
gerbil-poo = callPackage ./gerbil-poo.nix { };
|
||||
gerbil-persist = callPackage ./gerbil-persist.nix { };
|
||||
gerbil-ethereum = callPackage ./gerbil-ethereum.nix { };
|
||||
smug-gerbil = callPackage ./smug-gerbil.nix { };
|
||||
with pkgs.gerbil-support; {
|
||||
|
||||
prePackages-unstable =
|
||||
let pks = [ ./gerbil-libp2p.nix ./smug-gerbil.nix ./ftw.nix
|
||||
./gerbil-utils.nix ./gerbil-crypto.nix ./gerbil-poo.nix
|
||||
./gerbil-persist.nix ./gerbil-ethereum.nix ./glow-lang.nix ];
|
||||
call = pkg: callPackage pkg prePackage-defaults;
|
||||
pkgName = pkg: lib.removeSuffix ".nix" (baseNameOf pkg);
|
||||
f = pkg: { name = pkgName pkg; value = call pkg; }; in
|
||||
builtins.listToAttrs (map f pks);
|
||||
|
||||
prePackage-defaults = {
|
||||
gerbil = pkgs.gerbil-unstable;
|
||||
gambit-params = pkgs.gambit-support.unstable-params;
|
||||
gerbilPackages = gerbilPackages-unstable;
|
||||
git-version = "";
|
||||
version-path = "";
|
||||
gerbilInputs = [];
|
||||
nativeBuildInputs = [];
|
||||
buildInputs = [];
|
||||
buildScript = "./build.ss";
|
||||
postInstall = "";
|
||||
softwareName = "";
|
||||
};
|
||||
|
||||
gerbilPackages-unstable =
|
||||
builtins.mapAttrs (_: gerbilPackage) prePackages-unstable;
|
||||
|
||||
resolve-pre-src = pre-src: pre-src.fun (removeAttrs pre-src ["fun"]);
|
||||
|
||||
gerbilVersionFromGit = pkg:
|
||||
let version-path = "${pkg.passthru.pre-pkg.version-path}.ss"; in
|
||||
if builtins.pathExists version-path then
|
||||
let m =
|
||||
builtins.match "\\(import :clan/versioning.*\\)\n\\(register-software \"([-_.A-Za-z0-9]+)\" \"([-_.A-Za-z0-9]+)\"\\) ;; ([-0-9]+)\n"
|
||||
(builtins.readFile version-path); in
|
||||
{ version = builtins.elemAt m 2; git-version = builtins.elemAt m 1; }
|
||||
else { version = "0.0";
|
||||
git-version = let gitpath = "${toString pkg.src}/.git"; in
|
||||
if builtins.pathExists gitpath then lib.commitIdFromGitRepo gitpath else "0"; };
|
||||
|
||||
gerbilSkippableFiles = [".git" ".build" ".build_outputs" "run" "result" "dep" "BLAH"
|
||||
"version.ss" "tmp.nix"];
|
||||
|
||||
gerbilSourceFilter = path: type:
|
||||
let baseName = baseNameOf path; in
|
||||
! (builtins.elem baseName gerbilSkippableFiles || lib.hasSuffix "~" baseName);
|
||||
|
||||
gerbilFilterSource = builtins.filterSource gerbilSourceFilter;
|
||||
|
||||
# Use this function in any package that uses Gerbil libraries, to define the GERBIL_LOADPATH.
|
||||
gerbilLoadPath =
|
||||
gerbilInputs : builtins.concatStringsSep ":" (map (x : x + "/gerbil/lib") gerbilInputs);
|
||||
gerbilInputs: builtins.concatStringsSep ":" (map (x: x + "/gerbil/lib") gerbilInputs);
|
||||
|
||||
path-src = path: { fun = _: path; };
|
||||
|
||||
view = lib.debug.traceSeqN 4;
|
||||
|
||||
sha256-of-pre-src = pre-src: if pre-src ? sha256 then pre-src.sha256 else "none";
|
||||
|
||||
overrideSrcIfShaDiff = name: new-pre-src: super:
|
||||
let old-sha256 = sha256-of-pre-src super.${name}.pre-src;
|
||||
new-sha256 = sha256-of-pre-src new-pre-src; in
|
||||
if old-sha256 == new-sha256 then {} else
|
||||
view "Overriding ${name} old-sha256: ${old-sha256} new-sha256: ${new-sha256}"
|
||||
{ ${name} = super.${name} // {
|
||||
pre-src = new-pre-src;
|
||||
version = "override";
|
||||
git-version = if new-pre-src ? rev then lib.substring 0 7 new-pre-src.rev else "unknown";};};
|
||||
|
||||
pkgsOverrideGerbilPackageSrc = name: pre-src: pkgs: super: {
|
||||
gerbil-support = (super-support:
|
||||
{ prePackages-unstable =
|
||||
(super-ppu: super-ppu // (overrideSrcIfShaDiff name pre-src super-ppu))
|
||||
super-support.prePackages-unstable;}) super.gerbil-support;};
|
||||
|
||||
# Use this function to create a Gerbil library. See gerbil-utils as an example.
|
||||
gerbilPackage = {
|
||||
pname, version, src, meta, gerbil-package,
|
||||
git-version ? "", version-path ? "",
|
||||
gerbil ? pkgs.gerbil-unstable,
|
||||
gambit-params ? pkgs.gambit-support.stable-params,
|
||||
gerbilInputs ? [],
|
||||
nativeBuildInputs ? [],
|
||||
buildInputs ? [],
|
||||
buildScript ? "./build.ss",
|
||||
softwareName ? ""} :
|
||||
let buildInputs_ = buildInputs; in
|
||||
gccStdenv.mkDerivation rec {
|
||||
inherit src meta pname version nativeBuildInputs;
|
||||
passthru = { inherit gerbil-package version-path ;};
|
||||
gerbilPackage = prePackage:
|
||||
let pre-pkg = prePackage-defaults // prePackage;
|
||||
inherit (pre-pkg) pname version pre-src git-version meta
|
||||
softwareName gerbil-package version-path gerbil gambit-params
|
||||
gerbilInputs nativeBuildInputs buildInputs buildScript postInstall;
|
||||
buildInputs_ = buildInputs; in
|
||||
pkgs.gccStdenv.mkDerivation rec { # See ../gambit/build.nix regarding why we use gccStdenv
|
||||
inherit meta pname version nativeBuildInputs postInstall;
|
||||
passthru = {
|
||||
inherit pre-pkg;
|
||||
};
|
||||
src = resolve-pre-src pre-src;
|
||||
buildInputs = [ gerbil ] ++ gerbilInputs ++ buildInputs_;
|
||||
|
||||
postPatch = ''
|
||||
set -e ;
|
||||
if [ -n "${version-path}.ss" ] ; then
|
||||
echo -e '(import :clan/versioning${builtins.concatStringsSep ""
|
||||
(map (x : lib.optionalString (x.passthru.version-path != "")
|
||||
" :${x.passthru.gerbil-package}/${x.passthru.version-path}")
|
||||
${lib.optionalString (version-path != "")
|
||||
''echo -e '(import :clan/versioning${builtins.concatStringsSep ""
|
||||
(map (x: let px = x.passthru.pre-pkg; in
|
||||
lib.optionalString (px.version-path != "")
|
||||
" :${px.gerbil-package}/${px.version-path}")
|
||||
gerbilInputs)
|
||||
})\n(register-software "${softwareName}" "v${git-version}")\n' > "${passthru.version-path}.ss"
|
||||
fi
|
||||
})\n(register-software "${softwareName}" "v${git-version}")\n' > "${version-path}.ss"''}
|
||||
patchShebangs . ;
|
||||
'';
|
||||
|
||||
postConfigure = ''
|
||||
export GERBIL_BUILD_CORES=$NIX_BUILD_CORES
|
||||
export GERBIL_PATH=$PWD/.build
|
||||
export GERBIL_LOADPATH=${gerbilLoadPath gerbilInputs}
|
||||
export GERBIL_LOADPATH=${gerbilLoadPath (["$out"] ++ gerbilInputs)}
|
||||
${pkgs.gambit-support.export-gambopt gambit-params}
|
||||
'';
|
||||
|
||||
|
@ -60,18 +118,36 @@ rec {
|
|||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/gerbil/lib
|
||||
cp -fa .build/lib $out/gerbil/
|
||||
bins=(.build/bin/*)
|
||||
if [ 0 -lt ''${#bins} ] ; then
|
||||
cp -fa .build/bin $out/gerbil/
|
||||
mkdir $out/bin
|
||||
cd $out/bin
|
||||
ln -s ../gerbil/bin/* .
|
||||
mkdir -p $out/gerbil
|
||||
cp -fa .build/* $out/gerbil/
|
||||
if [[ -d $out/gerbil/bin ]] ; then
|
||||
( cd $out/gerbil
|
||||
bins=$(find ../gerbil/bin -type f)
|
||||
if [[ -n $bins ]] ; then
|
||||
( mkdir -p ../bin
|
||||
cd ..
|
||||
ln -s $bins bin
|
||||
)
|
||||
fi
|
||||
)
|
||||
fi
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
dontFixup = true;
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
if [[ -f unit-tests.ss ]] ; then
|
||||
export GERBIL_APPLICATION_HOME=$PWD
|
||||
./unit-tests.ss version
|
||||
./unit-tests.ss
|
||||
else
|
||||
echo "No gerbil-utils style unit-tests.ss detected for ${pname} ${version}.";
|
||||
fi
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,25 +1,26 @@
|
|||
{ lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
{ lib, fetchFromGitHub, ... }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
{
|
||||
pname = "gerbil-utils";
|
||||
version = "unstable-2020-10-18";
|
||||
git-version = "0.2-36-g8b481b7";
|
||||
gerbil-package = "clan";
|
||||
gerbil = gerbil-unstable;
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = "version";
|
||||
version = "unstable-2023-07-22";
|
||||
git-version = "0.2-198-g2fb01ce";
|
||||
softwareName = "Gerbil-utils";
|
||||
src = fetchFromGitHub {
|
||||
gerbil-package = "clan";
|
||||
version-path = "version";
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "fare";
|
||||
repo = "gerbil-utils";
|
||||
rev = "8b481b787e13e07e14d0718d670aab016131a090";
|
||||
sha256 = "0br8k5b2wcv4wcp65r2bfhji3af2qgqjspf41syqslq9awx47f3m";
|
||||
rev = "2fb01ce0b302f232f5c4daf4987457b6357d609d";
|
||||
sha256 = "127q98gk1x6y1nlkkpnbnkz989ybpszy7aiy43hzai2q6xn4nv72";
|
||||
};
|
||||
meta = {
|
||||
|
||||
meta = with lib; {
|
||||
description = "Gerbil Clan: Community curated Collection of Common Utilities";
|
||||
homepage = "https://github.com/fare/gerbil-utils";
|
||||
license = lib.licenses.lgpl21;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
license = licenses.lgpl21;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
||||
|
|
55
pkgs/development/compilers/gerbil/glow-lang.nix
Normal file
55
pkgs/development/compilers/gerbil/glow-lang.nix
Normal file
|
@ -0,0 +1,55 @@
|
|||
{ lib, fetchFromGitHub, gerbil-support, gerbilPackages, gerbil, ... }:
|
||||
|
||||
rec {
|
||||
pname = "glow-lang";
|
||||
version = "unstable-2023-04-26";
|
||||
git-version = "0.3.2-222-gb19cd980";
|
||||
softwareName = "Glow";
|
||||
gerbil-package = "mukn/glow";
|
||||
version-path = "version";
|
||||
|
||||
gerbilInputs = with gerbilPackages;
|
||||
[ gerbil-utils gerbil-crypto gerbil-poo gerbil-persist gerbil-ethereum
|
||||
gerbil-libp2p smug-gerbil ftw ];
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "Glow-Lang";
|
||||
repo = "glow";
|
||||
rev = "b19cd98082dfc5156d1b4fc83cde161572d6a211";
|
||||
sha256 = "0k3qy5826pxqr9ylnnpq4iikxf4j50987vhpa5qiv99j0p643xr3";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace "runtime/glow-path.ss" --replace \
|
||||
'(def glow-install-path (source-path "dapps"))' \
|
||||
'(def glow-install-path "$out")'
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/bin $out/gerbil/lib/mukn/glow $out/share/glow/dapps
|
||||
cp main.ss $out/gerbil/lib/mukn/glow/
|
||||
cp dapps/{buy_sig,coin_flip,rps_simple}.glow $out/share/glow/dapps/
|
||||
cat > $out/bin/glow <<EOF
|
||||
#!/bin/sh
|
||||
ORIG_GERBIL_LOADPATH="\$GERBIL_LOADPATH"
|
||||
ORIG_GERBIL_PATH="\$GERBIL_PATH"
|
||||
ORIG_GERBIL_HOME="\$GERBIL_HOME"
|
||||
unset GERBIL_HOME
|
||||
GERBIL_LOADPATH="${gerbil-support.gerbilLoadPath (["$out"] ++ gerbilInputs)}"
|
||||
GLOW_SOURCE="\''${GLOW_SOURCE:-$out/share/glow}"
|
||||
GERBIL_PATH="\$HOME/.cache/glow/gerbil"
|
||||
export GERBIL_PATH GERBIL_LOADPATH GLOW_SOURCE ORIG_GERBIL_PATH ORIG_GERBIL_LOADPATH ORIG_GERBIL_HOME
|
||||
exec ${gerbil}/bin/gxi $out/gerbil/lib/mukn/glow/main.ss "\$@"
|
||||
EOF
|
||||
chmod a+x $out/bin/glow
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Glow: language for safe Decentralized Applications (DApps)";
|
||||
homepage = "https://glow-lang.org";
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
}
|
|
@ -1,30 +1,25 @@
|
|||
{ pkgs, lib, fetchFromGitHub, gerbil-unstable, gerbil-support, gambit-support }:
|
||||
{ lib, fetchFromGitHub, ... }:
|
||||
|
||||
gerbil-support.gerbilPackage {
|
||||
{
|
||||
pname = "smug-gerbil";
|
||||
version = "unstable-2019-12-24";
|
||||
git-version = "95d60d4";
|
||||
gerbil-package = "drewc/smug";
|
||||
gerbil = gerbil-unstable;
|
||||
gerbilInputs = [];
|
||||
buildInputs = [];
|
||||
gambit-params = gambit-support.unstable-params;
|
||||
version-path = ""; #"version";
|
||||
version = "unstable-2020-12-12";
|
||||
git-version = "0.4.20";
|
||||
softwareName = "Smug-Gerbil";
|
||||
src = fetchFromGitHub {
|
||||
gerbil-package = "drewc/smug";
|
||||
|
||||
pre-src = {
|
||||
fun = fetchFromGitHub;
|
||||
owner = "drewc";
|
||||
repo = "smug-gerbil";
|
||||
rev = "95d60d486c1603743c6d3c525e6d5f5761b984e5";
|
||||
sha256 = "0ys07z78gq60z833si2j7xa1scqvbljlx1zb32vdf32f1b27c04j";
|
||||
rev = "cf23a47d0891aa9e697719309d04dd25dd1d840b";
|
||||
sha256 = "13fdijd71m3fzp9fw9xp6ddgr38q1ly6wnr53salp725w6i4wqid";
|
||||
};
|
||||
meta = {
|
||||
|
||||
meta = with lib; {
|
||||
description = "Super Monadic Über Go-into : Parsers and Gerbil Scheme";
|
||||
homepage = "https://github.com/drewc/smug-gerbil";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ fare ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fare ];
|
||||
};
|
||||
buildScript = ''
|
||||
for i in primitive simple tokens smug ; do gxc -O $i.ss ; done
|
||||
'';
|
||||
}
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
{ callPackage, fetchFromGitHub, gambit-unstable, gambit-support }:
|
||||
|
||||
callPackage ./build.nix rec {
|
||||
version = "unstable-2020-11-05";
|
||||
git-version = "0.16-152-g808929ae";
|
||||
version = "unstable-2023-08-07";
|
||||
git-version = "0.17.0-187-gba545b77";
|
||||
src = fetchFromGitHub {
|
||||
owner = "vyzo";
|
||||
repo = "gerbil";
|
||||
rev = "808929aeb8823959191f35df53bc0c0150911b4b";
|
||||
sha256 = "0d9k2gkrs9qvlnk7xa3gjzs3gln3ydds7yd2313pvbw4q2lcz8iw";
|
||||
rev = "ba545b77e8e85118089232e3cd263856e414b24b";
|
||||
sha256 = "1f4v1qawx2i8333kshj4pbj5r21z0868pwrr3r710n6ng3pd9gqn";
|
||||
};
|
||||
inherit gambit-support;
|
||||
gambit = gambit-unstable;
|
||||
|
|
|
@ -25,7 +25,15 @@ stdenv.mkDerivation rec {
|
|||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
buildInputs = [ hidapi jimtcl libftdi1 libjaylink libusb1 ]
|
||||
++ lib.optional stdenv.isLinux libgpiod;
|
||||
++
|
||||
# tracking issue for v2 api changes https://sourceforge.net/p/openocd/tickets/306/
|
||||
lib.optional stdenv.isLinux (libgpiod.overrideAttrs (old: rec {
|
||||
version = "1.6.4";
|
||||
src = fetchurl {
|
||||
url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz";
|
||||
sha256 = "sha256-gp1KwmjfB4U2CdZ8/H9HbpqnNssqaKYwvpno+tGXvgo=";
|
||||
};
|
||||
}));
|
||||
|
||||
configureFlags = [
|
||||
"--disable-werror"
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "luau";
|
||||
version = "0.588";
|
||||
version = "0.589";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Roblox";
|
||||
repo = "luau";
|
||||
rev = version;
|
||||
hash = "sha256-iRYVmRnEpLBtBJ5EjN88EmWM88FNU4CyFvgnBaqDSz4=";
|
||||
hash = "sha256-q36mWkZgzms+dYZ++S9MwnRYxUXBtRxiECOxX886eVw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -184,6 +184,8 @@ let
|
|||
if parsed.cpu.significantByte.name == "littleEndian" then "arm" else "armeb"
|
||||
else if isx86_32 then "i386"
|
||||
else parsed.cpu.name;
|
||||
# Python doesn't distinguish musl and glibc and always prefixes with "gnu"
|
||||
gnuAbiName = replaceStrings [ "musl" ] [ "gnu" ] parsed.abi.name;
|
||||
pythonAbiName =
|
||||
# python's build doesn't support every gnu<extension>, and doesn't
|
||||
# differentiate between musl and glibc, so we list those supported in
|
||||
|
@ -191,7 +193,7 @@ let
|
|||
# https://github.com/python/cpython/blob/e488e300f5c01289c10906c2e53a8e43d6de32d8/configure.ac#L724
|
||||
# Note: this is an approximation, as it doesn't take into account the CPU
|
||||
# family, or the nixpkgs abi naming conventions.
|
||||
if elem parsed.abi.name [
|
||||
if elem gnuAbiName [
|
||||
"gnux32"
|
||||
"gnueabihf"
|
||||
"gnueabi"
|
||||
|
@ -199,7 +201,7 @@ let
|
|||
"gnuabi64"
|
||||
"gnuspe"
|
||||
]
|
||||
then parsed.abi.name
|
||||
then gnuAbiName
|
||||
else "gnu";
|
||||
multiarch =
|
||||
if isDarwin then "darwin"
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "risor";
|
||||
version = "0.11.0";
|
||||
version = "0.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "risor-io";
|
||||
repo = "risor";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-YBiBadyI8TRa7CpiTkMOL0biuVMAk23sqEOzJ0ipfA8=";
|
||||
hash = "sha256-4Tw8QJj14MYfuQ4mNkSO1z4F8/3/6HjORKgARljlfs8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-diAbQwnlhMm43ZlLKq3llMl9mO3sIkc80aCI5UDn7F4=";
|
||||
|
|
|
@ -1,17 +1,29 @@
|
|||
{ lib, stdenv, fetchurl, validatePkgConfig, libiconv }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, validatePkgConfig
|
||||
, expat
|
||||
, minizip
|
||||
, zlib
|
||||
, libiconv
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "freexl";
|
||||
version = "1.0.6";
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.gaia-gis.it/gaia-sins/freexl-${version}.tar.gz";
|
||||
hash = "sha256-Pei1ej0TDLKIHqUtOqnOH+7bG1e32qTrN/dRQE+Q/CI=";
|
||||
hash = "sha256-F2cF8d5Yq3we679cbeRqt2/Ni4VlCNvSj1ZI98bhp/A=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ validatePkgConfig ];
|
||||
|
||||
buildInputs = lib.optional stdenv.isDarwin libiconv;
|
||||
buildInputs = [
|
||||
expat
|
||||
minizip
|
||||
zlib
|
||||
] ++ lib.optional stdenv.isDarwin libiconv;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libquotient";
|
||||
version = "0.7.2";
|
||||
version = "0.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "quotient-im";
|
||||
repo = "libQuotient";
|
||||
rev = version;
|
||||
hash = "sha256-Lq404O2VjZ8vlXOW+rhsvWDvZsNd3APNbv6AadQCjhk=";
|
||||
hash = "sha256-ecTHiWbsNDIUz+Sadh2pVbDRZFzdMkZXBYSjy1JqZrk=";
|
||||
};
|
||||
|
||||
buildInputs = [ olm openssl qtbase qtmultimedia qtkeychain ];
|
||||
|
|
|
@ -15,13 +15,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libspatialite";
|
||||
version = "5.0.1";
|
||||
version = "5.1.0";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.gaia-gis.it/gaia-sins/libspatialite-${version}.tar.gz";
|
||||
hash = "sha256-7svJQxHHgBLQWevA+uhupe9u7LEzA+boKzdTwbNAnpg=";
|
||||
url = "https://www.gaia-gis.it/gaia-sins/libspatialite-sources/libspatialite-${version}.tar.gz";
|
||||
hash = "sha256-Q74t00na/+AW3RQAxdEShYKMIv6jXKUQnyHz7VBgUIA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -329,9 +329,6 @@ let
|
|||
propagatedBuildInputs = [ self.qtbase.dev buildPackages.makeBinaryWrapper ]
|
||||
++ lib.optional stdenv.isLinux self.qtwayland.dev;
|
||||
} ../hooks/wrap-qt-apps-hook.sh;
|
||||
} // lib.optionalAttrs config.allowAliases {
|
||||
# remove before 23.11
|
||||
overrideScope' = lib.warn "qt5 now uses makeScopeWithSplicing which does not have \"overrideScope'\", use \"overrideScope\"." self.overrideScope;
|
||||
};
|
||||
|
||||
in makeScopeWithSplicing (generateSplicesForMkScope "qt5") (_: {}) (_: {}) addPackages
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "simdjson";
|
||||
version = "3.2.1";
|
||||
version = "3.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "simdjson";
|
||||
repo = "simdjson";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-JJFHRoG/w5PLSrn99i4EUjRtbNUYDF19/xlsYOwwFZA=";
|
||||
sha256 = "sha256-+BCXkOaWYZSFWGZmeZ2ZJwVxFwmHgRbb7GSj/lRxmfw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -799,6 +799,22 @@ let
|
|||
];
|
||||
};
|
||||
|
||||
sb-cga = build-asdf-system {
|
||||
pname = "sb-cga";
|
||||
version = "1.0.1";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "nikodemus";
|
||||
repo = "sb-cga";
|
||||
rev = "9a554ea1c01cac998ff7eaa5f767bc5bcdc4c094";
|
||||
sha256 = "sha256-iBM+VXu6JRqGmeIFzfXbGot+elvangmfSpDB7DjFpPg";
|
||||
};
|
||||
lispLibs = [ super.alexandria ];
|
||||
};
|
||||
|
||||
nsb-cga = super.nsb-cga.overrideLispAttrs (oa: {
|
||||
lispLibs = oa.lispLibs ++ [ self.sb-cga ];
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
in packages
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aeppl";
|
||||
version = "0.1.4";
|
||||
version = "0.1.5";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -20,7 +20,7 @@ buildPythonPackage rec {
|
|||
owner = "aesara-devs";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-y2JQxHztLEORoqVikOD/pSF5+WJRo/f8XyZKVDx2Ybs=";
|
||||
hash = "sha256-mqBbXwWJwQA2wSHuEdBeXQMfTIcgwYEjpq8AVmOjmHM=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -23,16 +23,16 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aesara";
|
||||
version = "2.8.12";
|
||||
version = "2.9.1";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aesara-devs";
|
||||
repo = "aesara";
|
||||
rev = "refs/tags/rel-${version}";
|
||||
hash = "sha256-lRc0IGpxkSnVeziFOYX7f99P7WNvz1KHy73qMPrU24I=";
|
||||
hash = "sha256-eanFkEiuPzm4InLd9dFmoLs/IOofObn9NIzaqzINdMQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "ailment";
|
||||
version = "9.2.62";
|
||||
version = "9.2.63";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-a4YRbFOnBTGte52wYlAsh9o4+x+dugHGhU6kboSdU2c=";
|
||||
hash = "sha256-Hg8KSReRHOmdoN8CZiX8i8Xdrn5/Gnqmx1QE6elV6qA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aioaladdinconnect";
|
||||
version = "0.1.56";
|
||||
version = "0.1.57";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
@ -15,7 +15,7 @@ buildPythonPackage rec {
|
|||
src = fetchPypi {
|
||||
pname = "AIOAladdinConnect";
|
||||
inherit version;
|
||||
hash = "sha256-YLAIT33ItaNgokwensOan/OO2lK01GO/u5AZwzvuoPo=";
|
||||
hash = "sha256-NPcrGViqrUcjuzqmsI0bXxqxcyoZ9Xp/5z4BPemdjrY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -7,14 +7,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "aliyun-python-sdk-config";
|
||||
version = "2.2.9";
|
||||
version = "2.2.10";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-5uRiOJAxq1zcJX+CyDnTG5BG1eFcJ43HdfpWUoZ5FSM=";
|
||||
hash = "sha256-Yv0RIraWi1HMlzIQkH8JXvVi3FvyCmDvH9XjAamEDQo=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "angr";
|
||||
version = "9.2.62";
|
||||
version = "9.2.63";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -41,7 +41,7 @@ buildPythonPackage rec {
|
|||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-GyX0LBXABRRQj3bVW8whxp2T5CSPnfI/Vjlj5V4MqrE=";
|
||||
hash = "sha256-vrcziVoH+P0cqnzalwZOyu7awidQ0Lv6vT6Uq9Pu4I0=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "archinfo";
|
||||
version = "9.2.62";
|
||||
version = "9.2.63";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-7PNwJMsX3Z/j+zy9CgEvCRpbyJi9qI7ex6KJXwkywgU=";
|
||||
hash = "sha256-10ocfA1JFHyZA8Uv5b209rOjY5OeBtKITnoiRaw/w7k=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -8,15 +8,16 @@
|
|||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "async_stagger";
|
||||
pname = "async-stagger";
|
||||
version = "0.3.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1mj3daaqxjdavbxcjrdwx5ky9maa2blbv53aa6d7w9zxkrz3b7xa";
|
||||
pname = "async_stagger";
|
||||
inherit version;
|
||||
hash = "sha256-qp81fp79J36aUWqUvegSStXkZ+m8Zcn62qrJjpVqQ9Y=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = [
|
|
@ -13,7 +13,7 @@ buildPythonPackage rec {
|
|||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15";
|
||||
hash = "sha256-IWPhZA3bUreoyA0KZ6CFh+XSRcycVTp0qEcFa8KXaxU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
|
@ -8,6 +8,7 @@
|
|||
, setuptools
|
||||
, setuptools-scm
|
||||
, typing-extensions
|
||||
, wheel
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
|
@ -29,6 +30,7 @@ buildPythonPackage rec {
|
|||
nativeBuildInputs = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
wheel
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "claripy";
|
||||
version = "9.2.62";
|
||||
version = "9.2.63";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-rjHz0NfxUzEQxDD4XiUlIr/RltXN7GKRojWs/nxs1ac=";
|
||||
hash = "sha256-p5fJ5+YFQIs397eVFxtMMJj/FwfH97CY1HjFJqPVVc0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
let
|
||||
# The binaries are following the argr projects release cycle
|
||||
version = "9.2.62";
|
||||
version = "9.2.63";
|
||||
|
||||
# Binary files from https://github.com/angr/binaries (only used for testing and only here)
|
||||
binaries = fetchFromGitHub {
|
||||
|
@ -38,7 +38,7 @@ buildPythonPackage rec {
|
|||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-w1U9/Hvu64ULWQouE5gFRxtfUcNdKIIWACaYXtvlCtE=";
|
||||
hash = "sha256-rCopCv7CPx04MYW1HkP0RP4NRZZlKtD4D8854FqIu10=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
82
pkgs/development/python-modules/cmdstanpy/default.nix
Normal file
82
pkgs/development/python-modules/cmdstanpy/default.nix
Normal file
|
@ -0,0 +1,82 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, substituteAll
|
||||
|
||||
, cmdstan
|
||||
|
||||
, pandas
|
||||
, numpy
|
||||
, tqdm
|
||||
, xarray
|
||||
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "cmdstanpy";
|
||||
version = "1.1.0";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stan-dev";
|
||||
repo = "cmdstanpy";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-9kAd3rbSctWEhAzB6RiQlbg5/uVxGIghYLus8hWzBFQ=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./use-nix-cmdstan-path.patch;
|
||||
cmdstan = "${cmdstan}/opt/cmdstan";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# conftest.py would have used git to clean up, which is unnecessary here
|
||||
rm test/conftest.py
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pandas
|
||||
numpy
|
||||
tqdm
|
||||
];
|
||||
|
||||
passthru.optional-dependencies = {
|
||||
all = [ xarray ];
|
||||
};
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d)
|
||||
'';
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
] ++ passthru.optional-dependencies.all;
|
||||
|
||||
disabledTestPaths = [
|
||||
# No need to test these when using Nix
|
||||
"test/test_install_cmdstan.py"
|
||||
"test/test_cxx_installation.py"
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
"test_lp_good" # Fails for some reason
|
||||
"test_serialization" # Pickle class mismatch errors
|
||||
# These tests use the flag -DSTAN_THREADS which doesn't work in cmdstan (missing file)
|
||||
"test_multi_proc_threads"
|
||||
"test_compile_force"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "cmdstanpy" ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/stan-dev/cmdstanpy";
|
||||
description = "A lightweight interface to Stan for Python users";
|
||||
changelog = "https://github.com/stan-dev/cmdstanpy/releases/tag/v${version}";
|
||||
license = lib.licenses.bsd3;
|
||||
platforms = lib.platforms.linux;
|
||||
maintainers = with lib.maintainers; [ tomasajt ];
|
||||
};
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
diff --git a/cmdstanpy/utils/cmdstan.py b/cmdstanpy/utils/cmdstan.py
|
||||
index 227d97a..27c3ccc 100644
|
||||
--- a/cmdstanpy/utils/cmdstan.py
|
||||
+++ b/cmdstanpy/utils/cmdstan.py
|
||||
@@ -163,19 +163,7 @@ def cmdstan_path() -> str:
|
||||
if 'CMDSTAN' in os.environ and len(os.environ['CMDSTAN']) > 0:
|
||||
cmdstan = os.environ['CMDSTAN']
|
||||
else:
|
||||
- cmdstan_dir = os.path.expanduser(os.path.join('~', _DOT_CMDSTAN))
|
||||
- if not os.path.exists(cmdstan_dir):
|
||||
- raise ValueError(
|
||||
- 'No CmdStan installation found, run command "install_cmdstan"'
|
||||
- 'or (re)activate your conda environment!'
|
||||
- )
|
||||
- latest_cmdstan = get_latest_cmdstan(cmdstan_dir)
|
||||
- if latest_cmdstan is None:
|
||||
- raise ValueError(
|
||||
- 'No CmdStan installation found, run command "install_cmdstan"'
|
||||
- 'or (re)activate your conda environment!'
|
||||
- )
|
||||
- cmdstan = os.path.join(cmdstan_dir, latest_cmdstan)
|
||||
+ cmdstan = '@cmdstan@'
|
||||
os.environ['CMDSTAN'] = cmdstan
|
||||
validate_cmdstan_path(cmdstan)
|
||||
return os.path.normpath(cmdstan)
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "crytic-compile";
|
||||
version = "0.3.3";
|
||||
version = "0.3.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
@ -19,7 +19,7 @@ buildPythonPackage rec {
|
|||
owner = "crytic";
|
||||
repo = "crytic-compile";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-Nx3eKy/0BLg82o3qDHjxcHXtpX3KDdnBKYwCuTLWRUE=";
|
||||
hash = "sha256-CeoACtgvMweDbIvYguK2Ca+iTBFONWcE2b0qUkBbQSU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -13,14 +13,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "dask-image";
|
||||
version = "2023.3.0";
|
||||
version = "2023.8.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-M6qckhUG2DvBw2uY5pAJFyuvatC7owVlb6XWkkrzAys=";
|
||||
hash = "sha256-XpqJhbBSehtZQsan50Tg5X0mTiIscFjwW664HDdNBLY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -11,14 +11,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "edk2-pytool-library";
|
||||
version = "0.15.4";
|
||||
version = "0.16.1";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tianocore";
|
||||
repo = "edk2-pytool-library";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-jGZa1qfI/OybwgG2L4N1hICHpWZTufgElpl31EhU+O4=";
|
||||
hash = "sha256-iVNie2VFyqzDdXtgnbZDzeIXsDEm6ugjIPJexLwHqeI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "empty-files";
|
||||
version = "0.0.4";
|
||||
version = "0.0.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "approvals";
|
||||
repo = "EmptyFiles.Python";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-sXatMH2QEGxzDGszAoFXUoPzB00rYaQIasz93vsfyz8=";
|
||||
hash = "sha256-P/woyAN9cYdxryX1iM36C53c9dL6lo4eoTzBWT2cd3A=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "energyzero";
|
||||
version = "0.4.2";
|
||||
version = "0.5.0";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
|
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
|||
owner = "klaasnicolaas";
|
||||
repo = "python-energyzero";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-sqkpbvsMd/8y6QSrMZHJeHl9GTes8TUoZ7RKePJsREs=";
|
||||
hash = "sha256-UFmchPFAO5azvLKgbKLbPooGhQ4SZHzrCe6jBo0X3bw=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
, colour
|
||||
, email-validator
|
||||
, enum34
|
||||
, fetchpatch
|
||||
, fetchPypi
|
||||
, flask
|
||||
, flask-babelex
|
||||
|
@ -39,6 +40,15 @@ buildPythonPackage rec {
|
|||
hash = "sha256-JMrir4MramEaAdfcNfQtJmwdbHWkJrhp2MskG3gjM2k=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/flask-admin/flask-admin/pull/2374
|
||||
(fetchpatch {
|
||||
name = "pillow-10-compatibility.patch";
|
||||
url = "https://github.com/flask-admin/flask-admin/commit/96b92deef8b087e86a9dc3e84381d254ea5c0342.patch";
|
||||
hash = "sha256-iR5kxyeZaEyved5InZuPmcglTD77zW18/eSHGwOuW40=";
|
||||
})
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
flask
|
||||
wtforms
|
||||
|
|
|
@ -10,7 +10,9 @@
|
|||
, optax
|
||||
, pytest-xdist
|
||||
, pytestCheckHook
|
||||
, pythonRelaxDepsHook
|
||||
, tensorflow
|
||||
, tensorstore
|
||||
, fetchpatch
|
||||
, rich
|
||||
}:
|
||||
|
@ -26,7 +28,7 @@ buildPythonPackage rec {
|
|||
hash = "sha256-Vv68BK83gTIKj0r9x+twdhqmRYziD0vxQCdHkYSeTak=";
|
||||
};
|
||||
|
||||
buildInputs = [ jaxlib ];
|
||||
nativeBuildInputs = [ jaxlib pythonRelaxDepsHook ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
jax
|
||||
|
@ -35,8 +37,12 @@ buildPythonPackage rec {
|
|||
numpy
|
||||
optax
|
||||
rich
|
||||
tensorstore
|
||||
];
|
||||
|
||||
# See https://github.com/google/flax/pull/2882.
|
||||
pythonRemoveDeps = [ "orbax" ];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"flax"
|
||||
];
|
||||
|
@ -64,6 +70,12 @@ buildPythonPackage rec {
|
|||
# `tensorflow_datasets`, `vocabulary`) so the benefits of trying to run them
|
||||
# would be limited anyway.
|
||||
"examples/*"
|
||||
|
||||
# See https://github.com/google/flax/issues/3232.
|
||||
"tests/jax_utils_test.py"
|
||||
|
||||
# Requires orbax which is not packaged as of 2023-07-27.
|
||||
"tests/checkpoints_test.py"
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
|
@ -88,7 +100,5 @@ buildPythonPackage rec {
|
|||
changelog = "https://github.com/google/flax/releases/tag/v${version}";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ ndl ];
|
||||
# Requires orbax which is not available
|
||||
broken = true;
|
||||
};
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue