Merge master into haskell-updates
This commit is contained in:
commit
27a26dea51
311 changed files with 9183 additions and 1888 deletions
|
@ -2,35 +2,38 @@
|
|||
|
||||
`pkgs.checkpointBuildTools` provides a way to build derivations incrementally. It consists of two functions to make checkpoint builds using Nix possible.
|
||||
|
||||
For hermeticity, Nix derivations do not allow any state to carry over between builds, making a transparent incremental build within a derivation impossible.
|
||||
For hermeticity, Nix derivations do not allow any state to be carried over between builds, making a transparent incremental build within a derivation impossible.
|
||||
|
||||
However, we can tell Nix explicitly what the previous build state was, by representing that previous state as a derivation output. This allows the passed build state to be used for an incremental build.
|
||||
|
||||
To change a normal derivation to a checkpoint based build, these steps must be taken:
|
||||
- apply `prepareCheckpointBuild` on the desired derivation
|
||||
e.g.:
|
||||
- apply `prepareCheckpointBuild` on the desired derivation, e.g.
|
||||
```nix
|
||||
checkpointArtifacts = (pkgs.checkpointBuildTools.prepareCheckpointBuild pkgs.virtualbox);
|
||||
```
|
||||
- change something you want in the sources of the package. (e.g. using a source override)
|
||||
- change something you want in the sources of the package, e.g. use a source override:
|
||||
```nix
|
||||
changedVBox = pkgs.virtualbox.overrideAttrs (old: {
|
||||
src = path/to/vbox/sources;
|
||||
}
|
||||
});
|
||||
```
|
||||
- use `mkCheckpointedBuild changedVBox buildOutput`
|
||||
- use `mkCheckpointBuild changedVBox checkpointArtifacts`
|
||||
- enjoy shorter build times
|
||||
|
||||
## Example {#sec-checkpoint-build-example}
|
||||
```nix
|
||||
{ pkgs ? import <nixpkgs> {} }: with (pkgs) checkpointBuildTools;
|
||||
{ pkgs ? import <nixpkgs> {} }:
|
||||
let
|
||||
helloCheckpoint = checkpointBuildTools.prepareCheckpointBuild pkgs.hello;
|
||||
inherit (pkgs.checkpointBuildTools)
|
||||
prepareCheckpointBuild
|
||||
mkCheckpointBuild
|
||||
;
|
||||
helloCheckpoint = prepareCheckpointBuild pkgs.hello;
|
||||
changedHello = pkgs.hello.overrideAttrs (_: {
|
||||
doCheck = false;
|
||||
patchPhase = ''
|
||||
sed -i 's/Hello, world!/Hello, Nix!/g' src/hello.c
|
||||
'';
|
||||
});
|
||||
in checkpointBuildTools.mkCheckpointBuild changedHello helloCheckpoint
|
||||
in mkCheckpointBuild changedHello helloCheckpoint
|
||||
```
|
||||
|
|
|
@ -563,6 +563,12 @@
|
|||
githubId = 732652;
|
||||
name = "Andreas Herrmann";
|
||||
};
|
||||
ahirner = {
|
||||
email = "a.hirner+nixpkgs@gmail.com";
|
||||
github = "ahirner";
|
||||
githubId = 6055037;
|
||||
name = "Alexander Hirner";
|
||||
};
|
||||
ahoneybun = {
|
||||
email = "aaron@system76.com";
|
||||
github = "ahoneybun";
|
||||
|
@ -3858,6 +3864,12 @@
|
|||
githubId = 6821729;
|
||||
github = "criyle";
|
||||
};
|
||||
crschnick = {
|
||||
email = "crschnick@xpipe.io";
|
||||
name = "Christopher Schnick";
|
||||
github = "crschnick";
|
||||
githubId = 72509152;
|
||||
};
|
||||
CRTified = {
|
||||
email = "carl.schneider+nixos@rub.de";
|
||||
matrix = "@schnecfk:ruhr-uni-bochum.de";
|
||||
|
@ -19114,6 +19126,12 @@
|
|||
github = "uakci";
|
||||
githubId = 6961268;
|
||||
};
|
||||
uartman = {
|
||||
name = "Anton Gusev";
|
||||
email = "uartman@mail.ru";
|
||||
github = "UARTman";
|
||||
githubId = 21099202;
|
||||
};
|
||||
udono = {
|
||||
email = "udono@virtual-things.biz";
|
||||
github = "udono";
|
||||
|
@ -19606,7 +19624,15 @@
|
|||
githubId = 13259982;
|
||||
name = "Vanessa McHale";
|
||||
};
|
||||
|
||||
vncsb = {
|
||||
email = "viniciusbernardino1@hotmail.com";
|
||||
github = "vncsb";
|
||||
githubId = 19562240;
|
||||
name = "Vinicius Bernardino";
|
||||
keys = [{
|
||||
fingerprint = "F0D3 920C 722A 541F 0CCD 66E3 A7BA BA05 3D78 E7CA";
|
||||
}];
|
||||
};
|
||||
voidless = {
|
||||
email = "julius.schmitt@yahoo.de";
|
||||
github = "voidIess";
|
||||
|
|
|
@ -65,12 +65,10 @@ hardware.opengl.extraPackages = [
|
|||
[Intel Gen8 and later
|
||||
GPUs](https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units#Gen8)
|
||||
are supported by the Intel NEO OpenCL runtime that is provided by the
|
||||
intel-compute-runtime package. For Gen7 GPUs, the deprecated Beignet
|
||||
runtime can be used, which is provided by the beignet package. The
|
||||
proprietary Intel OpenCL runtime, in the intel-ocl package, is an
|
||||
alternative for Gen7 GPUs.
|
||||
intel-compute-runtime package. The proprietary Intel OpenCL runtime, in
|
||||
the intel-ocl package, is an alternative for Gen7 GPUs.
|
||||
|
||||
The intel-compute-runtime, beignet, or intel-ocl package can be added to
|
||||
The intel-compute-runtime or intel-ocl package can be added to
|
||||
[](#opt-hardware.opengl.extraPackages)
|
||||
to enable OpenCL support. For example, for Gen8 and later GPUs, the following
|
||||
configuration can be used:
|
||||
|
|
|
@ -45,6 +45,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
|||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
- `himalaya` was updated to v1.0.0-beta, which introduces breaking changes. Check out the [release note](https://github.com/soywod/himalaya/releases/tag/v1.0.0-beta) for details.
|
||||
|
||||
- The `power.ups` module now generates `upsd.conf`, `upsd.users` and `upsmon.conf` automatically from a set of new configuration options. This breaks compatibility with existing `power.ups` setups where these files were created manually. Back up these files before upgrading NixOS.
|
||||
|
||||
- `k9s` was updated to v0.30. There have been various breaking changes in the config file format,
|
||||
|
|
|
@ -35,6 +35,7 @@ with lib;
|
|||
# dep of graphviz, libXpm is optional for Xpm support
|
||||
gd = super.gd.override { withXorg = false; };
|
||||
ghostscript = super.ghostscript.override { cupsSupport = false; x11Support = false; };
|
||||
gjs = super.gjs.overrideAttrs { doCheck = false; installTests = false; }; # avoid test dependency on gtk3
|
||||
gobject-introspection = super.gobject-introspection.override { x11Support = false; };
|
||||
gpsd = super.gpsd.override { guiSupport = false; };
|
||||
graphviz = super.graphviz-nox;
|
||||
|
|
|
@ -273,6 +273,7 @@
|
|||
./programs/virt-manager.nix
|
||||
./programs/wavemon.nix
|
||||
./programs/wayland/cardboard.nix
|
||||
./programs/wayland/labwc.nix
|
||||
./programs/wayland/river.nix
|
||||
./programs/wayland/sway.nix
|
||||
./programs/wayland/waybar.nix
|
||||
|
@ -833,6 +834,7 @@
|
|||
./services/monitoring/riemann.nix
|
||||
./services/monitoring/scollector.nix
|
||||
./services/monitoring/smartd.nix
|
||||
./services/monitoring/snmpd.nix
|
||||
./services/monitoring/statsd.nix
|
||||
./services/monitoring/sysstat.nix
|
||||
./services/monitoring/teamviewer.nix
|
||||
|
|
25
nixos/modules/programs/wayland/labwc.nix
Normal file
25
nixos/modules/programs/wayland/labwc.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
cfg = config.programs.labwc;
|
||||
in
|
||||
{
|
||||
meta.maintainers = with lib.maintainers; [ AndersonTorres ];
|
||||
|
||||
options.programs.labwc = {
|
||||
enable = lib.mkEnableOption (lib.mdDoc "labwc");
|
||||
package = lib.mkPackageOption pkgs "labwc" { };
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable (lib.mkMerge [
|
||||
{
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
xdg.portal.config.wlroots.default = lib.mkDefault [ "wlr" "gtk" ];
|
||||
|
||||
# To make a labwc session available for certain DMs like SDDM
|
||||
services.xserver.displayManager.sessionPackages = [ cfg.package ];
|
||||
}
|
||||
(import ./wayland-session.nix { inherit lib pkgs; })
|
||||
]);
|
||||
}
|
83
nixos/modules/services/monitoring/snmpd.nix
Normal file
83
nixos/modules/services/monitoring/snmpd.nix
Normal file
|
@ -0,0 +1,83 @@
|
|||
{ pkgs, config, lib, ... }:
|
||||
|
||||
let
|
||||
cfg = config.services.snmpd;
|
||||
configFile = if cfg.configText != "" then
|
||||
pkgs.writeText "snmpd.cfg" ''
|
||||
${cfg.configText}
|
||||
'' else null;
|
||||
in {
|
||||
options.services.snmpd = {
|
||||
enable = lib.mkEnableOption "snmpd";
|
||||
|
||||
package = lib.mkPackageOption pkgs "net-snmp" {};
|
||||
|
||||
listenAddress = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "0.0.0.0";
|
||||
description = lib.mdDoc ''
|
||||
The address to listen on for SNMP and AgentX messages.
|
||||
'';
|
||||
example = "127.0.0.1";
|
||||
};
|
||||
|
||||
port = lib.mkOption {
|
||||
type = lib.types.port;
|
||||
default = 161;
|
||||
description = lib.mdDoc ''
|
||||
The port to listen on for SNMP and AgentX messages.
|
||||
'';
|
||||
};
|
||||
|
||||
openFirewall = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Open port in firewall for snmpd.
|
||||
'';
|
||||
};
|
||||
|
||||
configText = lib.mkOption {
|
||||
type = lib.types.lines;
|
||||
default = "";
|
||||
description = lib.mdDoc ''
|
||||
The contents of the snmpd.conf. If the {option}`configFile` option
|
||||
is set, this value will be ignored.
|
||||
|
||||
Note that the contents of this option will be added to the Nix
|
||||
store as world-readable plain text, {option}`configFile` can be used in
|
||||
addition to a secret management tool to protect sensitive data.
|
||||
'';
|
||||
};
|
||||
|
||||
configFile = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
default = configFile;
|
||||
defaultText = lib.literalMD "The value of {option}`configText`.";
|
||||
description = lib.mdDoc ''
|
||||
Path to the snmpd.conf file. By default, if {option}`configText` is set,
|
||||
a config file will be automatically generated.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
systemd.services."snmpd" = {
|
||||
description = "Simple Network Management Protocol (SNMP) daemon.";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${lib.getExe' cfg.package "snmpd"} -f -Lo -c ${cfg.configFile} ${cfg.listenAddress}:${toString cfg.port}";
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall.allowedUDPPorts = lib.mkIf cfg.openFirewall [
|
||||
cfg.port
|
||||
];
|
||||
};
|
||||
|
||||
meta.maintainers = [ lib.maintainers.eliandoran ];
|
||||
|
||||
}
|
|
@ -4,9 +4,10 @@ with lib;
|
|||
|
||||
let
|
||||
|
||||
inherit (pkgs) cups cups-pk-helper cups-filters xdg-utils;
|
||||
inherit (pkgs) cups-pk-helper cups-filters xdg-utils;
|
||||
|
||||
cfg = config.services.printing;
|
||||
cups = cfg.package;
|
||||
|
||||
avahiEnabled = config.services.avahi.enable;
|
||||
polkitEnabled = config.security.polkit.enable;
|
||||
|
@ -140,6 +141,8 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
package = lib.mkPackageOption pkgs "cups" {};
|
||||
|
||||
stateless = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
|
|
|
@ -33,21 +33,11 @@ in {
|
|||
'';
|
||||
};
|
||||
|
||||
package = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.lxd;
|
||||
defaultText = lib.literalExpression "pkgs.lxd";
|
||||
description = lib.mdDoc ''
|
||||
The LXD package to use.
|
||||
'';
|
||||
};
|
||||
package = lib.mkPackageOption pkgs "lxd" { };
|
||||
|
||||
lxcPackage = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.lxc;
|
||||
defaultText = lib.literalExpression "pkgs.lxc";
|
||||
description = lib.mdDoc ''
|
||||
The LXC package to use with LXD (required for AppArmor profiles).
|
||||
lxcPackage = lib.mkPackageOption pkgs "lxc" {
|
||||
extraDescription = ''
|
||||
Required for AppArmor profiles.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -149,7 +139,7 @@ in {
|
|||
ui = {
|
||||
enable = lib.mkEnableOption (lib.mdDoc "(experimental) LXD UI");
|
||||
|
||||
package = lib.mkPackageOption pkgs.lxd-unwrapped "ui" { };
|
||||
package = lib.mkPackageOption pkgs [ "lxd-unwrapped" "ui" ] { };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -773,6 +773,7 @@ in {
|
|||
sing-box = handleTest ./sing-box.nix {};
|
||||
slimserver = handleTest ./slimserver.nix {};
|
||||
slurm = handleTest ./slurm.nix {};
|
||||
snmpd = handleTest ./snmpd.nix {};
|
||||
smokeping = handleTest ./smokeping.nix {};
|
||||
snapcast = handleTest ./snapcast.nix {};
|
||||
snapper = handleTest ./snapper.nix {};
|
||||
|
@ -861,6 +862,7 @@ in {
|
|||
systemd-misc = handleTest ./systemd-misc.nix {};
|
||||
systemd-userdbd = handleTest ./systemd-userdbd.nix {};
|
||||
systemd-homed = handleTest ./systemd-homed.nix {};
|
||||
systemtap = handleTest ./systemtap.nix {};
|
||||
tandoor-recipes = handleTest ./tandoor-recipes.nix {};
|
||||
tang = handleTest ./tang.nix {};
|
||||
taskserver = handleTest ./taskserver.nix {};
|
||||
|
|
|
@ -21,7 +21,7 @@ import ./make-test-python.nix ({ lib, ... }: {
|
|||
}
|
||||
];
|
||||
};
|
||||
services.paperless.extraConfig = {
|
||||
services.paperless.settings = {
|
||||
PAPERLESS_DBHOST = "/run/postgresql";
|
||||
};
|
||||
};
|
||||
|
|
23
nixos/tests/snmpd.nix
Normal file
23
nixos/tests/snmpd.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
||||
name = "snmpd";
|
||||
|
||||
nodes.snmpd = {
|
||||
environment.systemPackages = with pkgs; [
|
||||
net-snmp
|
||||
];
|
||||
|
||||
services.snmpd = {
|
||||
enable = true;
|
||||
configText = ''
|
||||
rocommunity public
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all();
|
||||
machine.wait_for_unit("snmpd.service")
|
||||
machine.succeed("snmpwalk -v 2c -c public localhost | grep SNMPv2-MIB::sysName.0");
|
||||
'';
|
||||
|
||||
})
|
50
nixos/tests/systemtap.nix
Normal file
50
nixos/tests/systemtap.nix
Normal file
|
@ -0,0 +1,50 @@
|
|||
{ system ? builtins.currentSystem
|
||||
, config ? { }
|
||||
, pkgs ? import ../.. { inherit system config; }
|
||||
}@args:
|
||||
|
||||
with pkgs.lib;
|
||||
|
||||
let
|
||||
stapScript = pkgs.writeText "test.stp" ''
|
||||
probe kernel.function("do_sys_poll") {
|
||||
println("kernel function probe & println work")
|
||||
exit()
|
||||
}
|
||||
'';
|
||||
|
||||
## TODO shared infra with ../kernel-generic.nix
|
||||
testsForLinuxPackages = linuxPackages: (import ./make-test-python.nix ({ pkgs, ... }: {
|
||||
name = "kernel-${linuxPackages.kernel.version}";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ bendlas ];
|
||||
};
|
||||
|
||||
nodes.machine = { ... }:
|
||||
{
|
||||
boot.kernelPackages = linuxPackages;
|
||||
programs.systemtap.enable = true;
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
with subtest("Capture stap ouput"):
|
||||
output = machine.succeed("stap ${stapScript} 2>&1")
|
||||
|
||||
with subtest("Ensure that expected output from stap script is there"):
|
||||
assert "kernel function probe & println work\n" == output, "kernel function probe & println work\n != " + output
|
||||
'';
|
||||
}) args);
|
||||
|
||||
## TODO shared infra with ../kernel-generic.nix
|
||||
kernels = {
|
||||
inherit (pkgs.linuxKernel.packageAliases) linux_default linux_latest;
|
||||
};
|
||||
|
||||
in mapAttrs (_: lP: testsForLinuxPackages lP) kernels // {
|
||||
passthru = {
|
||||
inherit testsForLinuxPackages;
|
||||
|
||||
testsForKernel = kernel: testsForLinuxPackages (pkgs.linuxPackagesFor kernel);
|
||||
};
|
||||
}
|
|
@ -23,13 +23,13 @@ with lib.strings;
|
|||
|
||||
let
|
||||
|
||||
version = "2.69.3";
|
||||
version = "2.70.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "grame-cncm";
|
||||
repo = "faust";
|
||||
rev = version;
|
||||
sha256 = "sha256-V2oDP17omIU9Waz5zrOyEHnWrVIfdDRM4KxHb01eyd8=";
|
||||
sha256 = "sha256-z6fW/T7wJZxugmvABlpvyMXvR4WkmC16INOKyyfKx8k=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
, fetchgit
|
||||
, runCommand
|
||||
, gn
|
||||
, neovim
|
||||
, ninja
|
||||
, makeWrapper
|
||||
, pkg-config
|
||||
|
@ -67,11 +68,7 @@ rustPlatform.buildRustPackage.override { stdenv = clangStdenv; } rec {
|
|||
removeReferencesTo
|
||||
] ++ lib.optionals stdenv.isDarwin [ xcbuild ];
|
||||
|
||||
# All tests passes but at the end cargo prints for unknown reason:
|
||||
# error: test failed, to rerun pass '--bin neovide'
|
||||
# Increasing the loglevel did not help. In a nix-shell environment
|
||||
# the failure do not occure.
|
||||
doCheck = false;
|
||||
nativeCheckInputs = [ neovim ];
|
||||
|
||||
buildInputs = [
|
||||
SDL2
|
||||
|
@ -81,6 +78,11 @@ rustPlatform.buildRustPackage.override { stdenv = clangStdenv; } rec {
|
|||
darwin.apple_sdk.frameworks.AppKit
|
||||
];
|
||||
|
||||
env = lib.optionalAttrs stdenv.isDarwin {
|
||||
# Work around https://github.com/NixOS/nixpkgs/issues/166205
|
||||
NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}";
|
||||
};
|
||||
|
||||
postFixup = let
|
||||
libPath = lib.makeLibraryPath ([
|
||||
libglvnd
|
||||
|
@ -117,6 +119,5 @@ rustPlatform.buildRustPackage.override { stdenv = clangStdenv; } rec {
|
|||
license = with licenses; [ mit ];
|
||||
maintainers = with maintainers; [ ck3d multisn8 ];
|
||||
platforms = platforms.all;
|
||||
badPlatforms = platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -14,13 +14,13 @@
|
|||
|
||||
buildDotnetModule rec {
|
||||
pname = "denaro";
|
||||
version = "2023.11.0";
|
||||
version = "2024.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "NickvisionApps";
|
||||
repo = "Denaro";
|
||||
rev = version;
|
||||
hash = "sha256-buMoB6ZTmzGjjSCOfdUvKbJ7xJmK/zHH8sz5iO3SJXo=";
|
||||
hash = "sha256-1LGcJmNucLmP5JbtZcLGuIE0UTmeUxLl9j31Oe0k93s=";
|
||||
};
|
||||
|
||||
dotnet-sdk = dotnetCorePackages.sdk_8_0;
|
||||
|
|
12
pkgs/applications/finance/denaro/deps.nix
generated
12
pkgs/applications/finance/denaro/deps.nix
generated
|
@ -3,7 +3,7 @@
|
|||
|
||||
{ fetchNuGet }: [
|
||||
(fetchNuGet { pname = "Ace4896.DBus.Services.Secrets"; version = "1.2.0"; sha256 = "1i1rwv8z2dx0mjib7vair2w7ylngmrcpbd012sdlpvdjpx0af0bn"; })
|
||||
(fetchNuGet { pname = "Cake.Tool"; version = "3.2.0"; sha256 = "0jvf3r0rr15q650182c3y6a4c21k84rzl2f0nida878j6fhmk6v7"; })
|
||||
(fetchNuGet { pname = "Cake.Tool"; version = "4.0.0"; sha256 = "11vc5fimi6w465081sqxs4zhw7grr6v8ga7nl1mscdl43wv33ql2"; })
|
||||
(fetchNuGet { pname = "Docnet.Core"; version = "2.6.0"; sha256 = "1b1nj984ly4zgj28fri1a6ych9sdiacxkms8pvzsclvyxkf0ri8m"; })
|
||||
(fetchNuGet { pname = "FuzzySharp"; version = "2.0.2"; sha256 = "1xq3q4s9d5p1yn4j91a90hawk9wcrz1bl6zj9866y01yx9aamr8s"; })
|
||||
(fetchNuGet { pname = "GetText.NET"; version = "1.9.14"; sha256 = "18z4cf0dldcf41z8xgj3gdlvj9w5a9ikgj72623r0i740ndnl094"; })
|
||||
|
@ -36,11 +36,11 @@
|
|||
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
|
||||
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "8.0.0"; sha256 = "05392f41ijgn17y8pbjcx535l1k09krnq3xdp60kyq568sn6xk2i"; })
|
||||
(fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8"; })
|
||||
(fetchNuGet { pname = "Nickvision.Aura"; version = "2023.11.3"; sha256 = "06g63k1p8maskg8hicjbi00fyyxh95fkykvv205p9vr0803bjqrd"; })
|
||||
(fetchNuGet { pname = "Nickvision.Aura"; version = "2023.11.4"; sha256 = "0gasyglp1pgi0s6zqzmbm603j3j36vvr68grv6g93fdj2vjlmkxs"; })
|
||||
(fetchNuGet { pname = "Octokit"; version = "9.0.0"; sha256 = "0kw49w1hxk4d2x9598012z9q1yr3ml5rm06fy1jnmhy44s3d3jp5"; })
|
||||
(fetchNuGet { pname = "OfxSharp.NetStandard"; version = "1.0.0"; sha256 = "1v7yw2glyywb4s0y5fw306bzh2vw175bswrhi5crvd92wf93makj"; })
|
||||
(fetchNuGet { pname = "PdfSharpCore"; version = "1.3.62"; sha256 = "1wxm642fx0pgiidd5x35iifayq7nicykycpwpvs0814xfjm0zw63"; })
|
||||
(fetchNuGet { pname = "QuestPDF"; version = "2023.10.2"; sha256 = "08jy42k8nxbkbdc2z013vk28r5ckmg7lpzvnah0shrjmwfq34v4j"; })
|
||||
(fetchNuGet { pname = "QuestPDF"; version = "2023.12.2"; sha256 = "16h6k15h5wxccyrsakkpn3jsk7fcgs1pfidisg772k78hizvagdf"; })
|
||||
(fetchNuGet { pname = "ReadSharp.Ports.SgmlReader.Core"; version = "1.0.0"; sha256 = "0pcvlh0gq513vw6y12lfn90a0br56a6f26lvppcj4qb839zmh3id"; })
|
||||
(fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
|
||||
(fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
|
||||
|
@ -60,16 +60,20 @@
|
|||
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
|
||||
(fetchNuGet { pname = "SharpZipLib"; version = "1.3.3"; sha256 = "1gij11wfj1mqm10631cjpnhzw882bnzx699jzwhdqakxm1610q8x"; })
|
||||
(fetchNuGet { pname = "SixLabors.Fonts"; version = "1.0.0-beta17"; sha256 = "1qm8q82wzj54nbv63kx3ybln51k47sl18hia3jnzk1zrb6wdsw9a"; })
|
||||
(fetchNuGet { pname = "SixLabors.ImageSharp"; version = "3.0.2"; sha256 = "1r654m3ga9al9q4qjr1104rp6lk7j9blmf4j0104zq8893hhq727"; })
|
||||
(fetchNuGet { pname = "SixLabors.ImageSharp"; version = "3.1.2"; sha256 = "0bc0753aczgw9mi9bcgly2x71w4adlr35krgf023vppc36809yhg"; })
|
||||
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.6"; sha256 = "0xs11zjw9ha68maw3l825kfwlrid43qwy0mswljxhpjh0y1k6k6b"; })
|
||||
(fetchNuGet { pname = "SkiaSharp.HarfBuzz"; version = "2.88.6"; sha256 = "1h61vk9ibavwwrxqgclzsxmchighvfaqlcqrj0dpi2fzw57f54c2"; })
|
||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.6"; sha256 = "0cg38xgddww1y93xrnbfn40sin63yl39j5zm7gm5pdgp5si0cf2n"; })
|
||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.6"; sha256 = "1fp9h8c8k6sbsh48b69dc6461isd4dajq7yw5i7j6fhkas78q4zf"; })
|
||||
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.6"; sha256 = "1w2mwcwkqvrg4x4ybc4674xnkqwh1n2ihg520gqgpnqfc11ghc4n"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlcipher"; version = "2.1.6"; sha256 = "15v2x7y4k7cl47a9jccbvgbwngwi5dz6qhv0cxpcasx4v5i9aila"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlcipher"; version = "2.1.7"; sha256 = "18s6b6im9rwhnilsznbgvhily40sb5rc4p9z02nqn0ahncb2i52w"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.6"; sha256 = "1w8zsgz2w2q0a9cw9cl1rzrpv48a04nhyq67ywan6xlgknds65a7"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.7"; sha256 = "1y3jl4c76g2i13xss72nfvx5qr6mzsbjvjc5f9arybh53a0wavd6"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlcipher"; version = "2.1.6"; sha256 = "0dl5an15whs4yl5hm2wibzbfigzck0flah8a07k99y1bhbmv080z"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlcipher"; version = "2.1.7"; sha256 = "0wgxqw1nc9asxxj04l8qfjgkshnlp92c3clx7ymjf43jr3g4pxs0"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlcipher"; version = "2.1.6"; sha256 = "1jx8d4dq5w2951b7w722gnxbfgdklwazc48kcbdzylkglwkrqgrq"; })
|
||||
(fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlcipher"; version = "2.1.7"; sha256 = "1paj54r7552vpjzdj8mv4gdxshbd10xyc8fa6qs12pspa58wivjn"; })
|
||||
(fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
|
||||
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
|
||||
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
|
||||
|
|
|
@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
|
|||
homepage = "https://gitlab.com/postmarketOS/megapixels";
|
||||
changelog = "https://gitlab.com/postmarketOS/megapixels/-/tags/${version}";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ OPNA2608 dotlambda ];
|
||||
maintainers = with maintainers; [ dotlambda ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
{ lib, fetchFromGitHub, makeDesktopItem, bambu-studio }:
|
||||
let
|
||||
orca-slicer = bambu-studio.overrideAttrs (finalAttrs: previousAttrs: {
|
||||
version = "1.8.1";
|
||||
version = "1.9.0";
|
||||
pname = "orca-slicer";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SoftFever";
|
||||
repo = "OrcaSlicer";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-3aIVi7Wsit4vpFrGdqe7DUEC6HieWAXCdAADVtB5HKc=";
|
||||
hash = "sha256-v6REKDlFhyW6kEEfpcm8Sjezkh6uLaBusMuVk8n3Ts0=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
|
|
@ -7,16 +7,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "clipcat";
|
||||
version = "0.16.0";
|
||||
version = "0.16.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xrelkd";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-9BilasXc/3FFPcKAgPvc0hIHP7NbOqRD8ZwIMRc/Y3M=";
|
||||
hash = "sha256-SqA8UjKTBtkE1IkWGeshI8KBHr86V9r/+YvFZNJ6Oq8=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-zkeKhi0DiYqA5+KiU77ZJXRyhLUKVDmHvF7TG1URzo4=";
|
||||
cargoHash = "sha256-KU3kXqy9zL7GQdSsCNW7jcsxdTuRXjJyDtBpmgoXi6E=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
protobuf
|
||||
|
|
|
@ -26,13 +26,13 @@
|
|||
|
||||
mkDerivation rec {
|
||||
pname = "input-leap";
|
||||
version = "unstable-2023-05-24";
|
||||
version = "unstable-2023-12-27";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "input-leap";
|
||||
repo = "input-leap";
|
||||
rev = "5e2f37bf9ec17627ae33558d99f90b7608ace422";
|
||||
hash = "sha256-55RqdRu/Hi2OTiLjAFJ6Gdgg9iO5NIIJCsOkUQjR9hk=";
|
||||
rev = "ecf1fb6645af7b79e6ea984d3c9698ca0ab6f391";
|
||||
hash = "sha256-TEv1xR1wUG3wXNATLLIZKOtW05X96wsPNOlE77OQK54=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -55,7 +55,7 @@ mkDerivation rec {
|
|||
'';
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace $out/share/applications/input-leap.desktop \
|
||||
substituteInPlace $out/share/applications/io.github.input_leap.InputLeap.desktop \
|
||||
--replace "Exec=input-leap" "Exec=$out/bin/input-leap"
|
||||
'';
|
||||
|
||||
|
|
|
@ -25,13 +25,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "minder";
|
||||
version = "1.15.6";
|
||||
version = "1.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "phase1geo";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-vxUZo68QdeuFlQxLldWplmeGtyX2NHo3AJZmt+JLCF4=";
|
||||
sha256 = "sha256-1yFRwVjHLgjDxflFoSmB5254J7dRJ4Ymv3fAWZxb9is=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
# python deps
|
||||
, python, buildPythonPackage
|
||||
, alembic, beautifulsoup4, chardet, lxml, mako, pyenchant
|
||||
, pyqt5_with_qtwebkit, pyxdg, sip_4, sqlalchemy, sqlalchemy-migrate
|
||||
, pyqt5-webkit, pyxdg, sip_4, sqlalchemy, sqlalchemy-migrate
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
|
@ -39,7 +39,7 @@ buildPythonPackage rec {
|
|||
lxml
|
||||
mako
|
||||
pyenchant
|
||||
pyqt5_with_qtwebkit
|
||||
pyqt5-webkit
|
||||
pyxdg
|
||||
sip_4
|
||||
sqlalchemy
|
||||
|
|
1250
pkgs/applications/misc/owmods-cli/Cargo.lock
generated
1250
pkgs/applications/misc/owmods-cli/Cargo.lock
generated
File diff suppressed because it is too large
Load diff
|
@ -12,20 +12,17 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "owmods-cli";
|
||||
version = "0.11.3";
|
||||
version = "0.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ow-mods";
|
||||
repo = "ow-mod-man";
|
||||
rev = "cli_v${version}";
|
||||
hash = "sha256-CobGF3ZQEdRRoMGL9l37alGQArIuRxiFbihQoRdnAsc=";
|
||||
hash = "sha256-k9Jn8LiqDyVmtjKnmpoVePNW2x5UyFfcXAPyvEgUaCU=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"tauri-plugin-window-state-0.1.0" = "sha256-M6uGcf4UWAU+494wAK/r2ta1c3IZ07iaURLwJJR9F3U=";
|
||||
};
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -1,60 +1,80 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, jdk
|
||||
, ant
|
||||
, jdk
|
||||
, makeWrapper
|
||||
, wrapGAppsHook
|
||||
, makeDesktopItem
|
||||
, copyDesktopItems
|
||||
, glib
|
||||
, wrapGAppsHook
|
||||
, canonicalize-jars-hook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pattypan";
|
||||
version = "22.03";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yarl";
|
||||
repo = "pattypan";
|
||||
rev = "v${version}";
|
||||
sha256 = "0qmvlcqhqw5k500v2xdakk340ymgv5amhbfqxib5s4db1w32pi60";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-wMQrBg+rEV1W7NgtWFXZr3pAxpyqdbEBKLNwDDGju2I=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ copyDesktopItems jdk ant makeWrapper wrapGAppsHook ];
|
||||
buildInputs = [ glib jdk ];
|
||||
nativeBuildInputs = [
|
||||
ant
|
||||
jdk
|
||||
makeWrapper
|
||||
wrapGAppsHook
|
||||
copyDesktopItems
|
||||
canonicalize-jars-hook
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
env.JAVA_TOOL_OPTIONS = "-Dfile.encoding=UTF8"; # needed for jdk versions below jdk19
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF8"
|
||||
ant
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/bin $out/share/java
|
||||
cp pattypan.jar $out/share/java/pattypan.jar
|
||||
makeWrapper ${jdk}/bin/java $out/bin/pattypan \
|
||||
--add-flags "-cp $out/share/java/pattypan.jar pattypan.Launcher"
|
||||
install -Dm644 pattypan.jar -t $out/share/pattypan
|
||||
install -Dm644 src/pattypan/resources/logo.png $out/share/pixmaps/pattypan.png
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
# gappsWrapperArgs is set in preFixup
|
||||
postFixup = ''
|
||||
makeWrapper ${jdk}/bin/java $out/bin/pattypan \
|
||||
''${gappsWrapperArgs[@]} \
|
||||
--add-flags "-jar $out/share/pattypan/pattypan.jar"
|
||||
'';
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "pattypan";
|
||||
exec = "pattypan";
|
||||
icon = "pattypan";
|
||||
desktopName = "Pattypan";
|
||||
genericName = "An uploader for Wikimedia Commons";
|
||||
categories = [ "Utility" ];
|
||||
exec = "pattypan";
|
||||
name = "pattypan";
|
||||
})
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://commons.wikimedia.org/wiki/Commons:Pattypan";
|
||||
description = "An uploader for Wikimedia Commons";
|
||||
homepage = "https://commons.wikimedia.org/wiki/Commons:Pattypan";
|
||||
license = licenses.mit;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
mainProgram = "pattypan";
|
||||
maintainers = with maintainers; [ fee1-dead ];
|
||||
platforms = platforms.all;
|
||||
sourceProvenance = with sourceTypes; [
|
||||
fromSource
|
||||
binaryBytecode # source bundles dependencies as jars
|
||||
];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "stern";
|
||||
version = "1.27.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stern";
|
||||
repo = "stern";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-W8jGUs63R6QpwuTgzK5yVLhKGXypvKOyCWHT2xdb6eM=";
|
||||
sha256 = "sha256-Lx5f2dqjdhgMXky1Pv2ik9i56ugsQmZK/ag4veC9Dac=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-LLVd9WB8ixH78CHYe0sS4sCDCD+6SQ7PxWr2MHiAOxI=";
|
||||
vendorHash = "sha256-6jI/I7Nw/vJwKNvgH/35uHYu51SBX+WFH5s0WKfCqBo=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ python3Packages.buildPythonPackage rec {
|
|||
sha256 = "1ffdy74igll74fwpmnn3brvcxbk4iianqscdzz18sx1pfqpw16cl";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [ pyqt5_with_qtwebkit dbus-python jsmin ];
|
||||
propagatedBuildInputs = with python3Packages; [ pyqt5-webkit dbus-python jsmin ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Non-official desktop client for Slack";
|
||||
|
|
|
@ -64,14 +64,14 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "telegram-desktop";
|
||||
version = "4.14.3";
|
||||
version = "4.14.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "telegramdesktop";
|
||||
repo = "tdesktop";
|
||||
rev = "v${version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-xFbS8nhtWzIu+b/Hlnvtp925cf8UuBDywNnq5spMQ5Q=";
|
||||
hash = "sha256-kApiPJN9hdOv9WLRiqIO94Pd3Stuv+wrV4RM6x8Ak9M=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
|
||||
let
|
||||
pname = "zulip";
|
||||
version = "5.10.3";
|
||||
version = "5.10.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/zulip/zulip-desktop/releases/download/v${version}/Zulip-${version}-x86_64.AppImage";
|
||||
hash = "sha256-AnaW/zH2Vng8lpzv6LHlzCUnNWJoLpsSpmD0iZfteFg=";
|
||||
hash = "sha256-M4h+kV4JjZ91K6OpxKc10XVohzKJEVxw8cYcVALibXA=";
|
||||
name="${pname}-${version}.AppImage";
|
||||
};
|
||||
|
||||
|
@ -37,5 +37,6 @@ in appimageTools.wrapType2 {
|
|||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ andersk jonafato ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
mainProgram = "zulip";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,37 +2,53 @@
|
|||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, stdenv
|
||||
, pkg-config
|
||||
, installShellFiles
|
||||
, installShellCompletions ? stdenv.hostPlatform == stdenv.buildPlatform
|
||||
, installManPages ? stdenv.hostPlatform == stdenv.buildPlatform
|
||||
, notmuch
|
||||
, withImapBackend ? true
|
||||
, withNotmuchBackend ? false
|
||||
, withSmtpSender ? true
|
||||
, gpgme
|
||||
, withMaildir ? true
|
||||
, withImap ? true
|
||||
, withNotmuch ? false
|
||||
, withSendmail ? true
|
||||
, withSmtp ? true
|
||||
, withPgpCommands ? false
|
||||
, withPgpGpg ? false
|
||||
, withPgpNative ? false
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "himalaya";
|
||||
version = "0.8.4";
|
||||
version = "1.0.0-beta";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "soywod";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-AImLYRRCL6IvoSeMFH2mbkNOvUmLwIvhWB3cOoqDljk=";
|
||||
hash = "sha256-39XYtxmo/12hkCS7zVIQi3UbLzaIKH1OwfdDB/ghU98=";
|
||||
};
|
||||
|
||||
cargoSha256 = "deJZPaZW6rb7A6wOL3vcphBXu0F7EXc1xRwSDY/v8l4=";
|
||||
cargoSha256 = "HIDmBPrcOcK2coTaD4v8ntIZrv2SwTa8vUTG8Ky4RhM=";
|
||||
|
||||
nativeBuildInputs = lib.optional (installManPages || installShellCompletions) installShellFiles;
|
||||
nativeBuildInputs = [ ]
|
||||
++ lib.optional withPgpGpg pkg-config
|
||||
++ lib.optional (installManPages || installShellCompletions) installShellFiles;
|
||||
|
||||
buildInputs = lib.optional withNotmuchBackend notmuch;
|
||||
buildInputs = [ ]
|
||||
++ lib.optional withNotmuch notmuch
|
||||
++ lib.optional withPgpGpg gpgme;
|
||||
|
||||
buildNoDefaultFeatures = true;
|
||||
buildFeatures = [ ]
|
||||
++ lib.optional withImapBackend "imap-backend"
|
||||
++ lib.optional withNotmuchBackend "notmuch-backend"
|
||||
++ lib.optional withSmtpSender "smtp-sender";
|
||||
++ lib.optional withMaildir "maildir"
|
||||
++ lib.optional withImap "imap"
|
||||
++ lib.optional withNotmuch "notmuch"
|
||||
++ lib.optional withSmtp "smtp"
|
||||
++ lib.optional withSendmail "sendmail"
|
||||
++ lib.optional withPgpCommands "pgp-commands"
|
||||
++ lib.optional withPgpGpg "pgp-gpg"
|
||||
++ lib.optional withPgpNative "pgp-native";
|
||||
|
||||
postInstall = lib.optionalString installManPages ''
|
||||
mkdir -p $out/man
|
||||
|
@ -46,8 +62,8 @@ rustPlatform.buildRustPackage rec {
|
|||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "CLI to manage your emails.";
|
||||
homepage = "https://pimalaya.org/himalaya/";
|
||||
description = "CLI to manage emails";
|
||||
homepage = "https://pimalaya.org/himalaya/cli/latest/";
|
||||
changelog = "https://github.com/soywod/himalaya/blob/v${version}/CHANGELOG.md";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ soywod toastal yanganto ];
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
{ lib, stdenv, fetchurl, fetchpatch, ncurses, zlib, bzip2, sqlite, pkg-config
|
||||
, glib, gnutls, perl, libmaxminddb }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ncdc";
|
||||
version = "1.23.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://dev.yorhel.nl/download/ncdc-${version}.tar.gz";
|
||||
hash = "sha256-lYgSFAd6Wzwk+7rwIK2g0ITuO1lqfDzB4OaKqsTJteY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ perl pkg-config ];
|
||||
buildInputs = [ ncurses zlib bzip2 sqlite glib gnutls libmaxminddb ];
|
||||
|
||||
configureFlags = [ "--with-geoip" ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Modern and lightweight direct connect client with a friendly ncurses interface";
|
||||
homepage = "https://dev.yorhel.nl/ncdc";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux; # arbitrary
|
||||
maintainers = with maintainers; [ ehmry ];
|
||||
};
|
||||
}
|
|
@ -15,13 +15,13 @@
|
|||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tremotesf";
|
||||
version = "2.5.0";
|
||||
version = "2.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "equeim";
|
||||
repo = "tremotesf2";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-mxk2BRUuet3XSNaKt2Dnnxe5dliazd1ArRSnKyoAp1s=";
|
||||
hash = "sha256-9iV4UsKZWaIxhqtRZXTFHgjOKVFJE2bCJOD2O/qL+DY=";
|
||||
# We need this for src/libtremotesf
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
|
|
@ -6,16 +6,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "rclone";
|
||||
version = "1.65.0";
|
||||
version = "1.65.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-hlkX8JrBz/hFwQj0xCZfuBt2t3CP3Xa1JkNDH0zomxg=";
|
||||
hash = "sha256-wRksCRQR6JZjYtXgq3iARCoYck76O17Kd2Ht1XpA9KE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-qKRIT2HqNDpEtZBNHZMXp4Yhh5fCkQSTPU5MQ7FmCHI=";
|
||||
vendorHash = "sha256-kWaMo6ALieuwf53H05UdoI7xtH1LAnsD6Ak9bJTa6jc=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
|
132
pkgs/applications/networking/xpipe/default.nix
Normal file
132
pkgs/applications/networking/xpipe/default.nix
Normal file
|
@ -0,0 +1,132 @@
|
|||
{ stdenvNoCC
|
||||
, lib
|
||||
, fetchzip
|
||||
, makeDesktopItem
|
||||
, autoPatchelfHook
|
||||
, zlib
|
||||
, fontconfig
|
||||
, udev
|
||||
, gtk3
|
||||
, freetype
|
||||
, alsa-lib
|
||||
, makeShellWrapper
|
||||
, libX11
|
||||
, libXext
|
||||
, libXdamage
|
||||
, libXfixes
|
||||
, libxcb
|
||||
, libXcomposite
|
||||
, libXcursor
|
||||
, libXi
|
||||
, libXrender
|
||||
, libXtst
|
||||
, libXxf86vm
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (stdenvNoCC.hostPlatform) system;
|
||||
throwSystem = throw "Unsupported system: ${system}";
|
||||
|
||||
arch = {
|
||||
x86_64-linux = "x86_64";
|
||||
aarch64-linux = "arm64";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
hash = {
|
||||
x86_64-linux = "sha256-/cumOKaWPdAruMLZP2GMUdocIhsbo59dc4Q3ngc/JOc=";
|
||||
aarch64-linux = "sha256-xMV+9etnuFwRGIHdaXNViKd4FMOuVtugGDS1xyMwEnM=";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
displayname = "XPipe";
|
||||
|
||||
in stdenvNoCC.mkDerivation rec {
|
||||
pname = "xpipe";
|
||||
version = "1.7.3";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/xpipe-io/xpipe/releases/download/${version}/xpipe-portable-linux-${arch}.tar.gz";
|
||||
inherit hash;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
makeShellWrapper
|
||||
];
|
||||
|
||||
# Ignore libavformat dependencies as we don't need them
|
||||
autoPatchelfIgnoreMissingDeps = true;
|
||||
|
||||
buildInputs = [
|
||||
fontconfig
|
||||
zlib
|
||||
udev
|
||||
freetype
|
||||
gtk3
|
||||
alsa-lib
|
||||
libX11
|
||||
libX11
|
||||
libXext
|
||||
libXdamage
|
||||
libXfixes
|
||||
libxcb
|
||||
libXcomposite
|
||||
libXcursor
|
||||
libXi
|
||||
libXrender
|
||||
libXtst
|
||||
libXxf86vm
|
||||
];
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
categories = [ "Network" ];
|
||||
comment = "Your entire server infrastructure at your fingertips";
|
||||
desktopName = displayname;
|
||||
exec = "/opt/${pname}/cli/bin/xpipe open %U";
|
||||
genericName = "Shell connection hub";
|
||||
icon = "/opt/${pname}/logo.png";
|
||||
name = displayname;
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
pkg="${pname}"
|
||||
mkdir -p $out/opt/$pkg
|
||||
cp -r ./ $out/opt/$pkg
|
||||
|
||||
mkdir -p "$out/bin"
|
||||
ln -s "$out/opt/$pkg/cli/bin/xpipe" "$out/bin/$pkg"
|
||||
|
||||
mkdir -p "$out/share/applications"
|
||||
cp -r "${desktopItem}/share/applications/" "$out/share/"
|
||||
|
||||
mkdir -p "$out/etc/bash_completion.d"
|
||||
ln -s "$out/opt/$pkg/cli/xpipe_completion" "$out/etc/bash_completion.d/$pkg"
|
||||
|
||||
substituteInPlace $out/share/applications/${displayname}.desktop --replace "Exec=" "Exec=$out"
|
||||
substituteInPlace $out/share/applications/${displayname}.desktop --replace "Icon=" "Icon=$out"
|
||||
|
||||
mv "$out/opt/xpipe/app/bin/xpiped" "$out/opt/xpipe/app/bin/xpiped_raw"
|
||||
mv "$out/opt/xpipe/app/lib/app/xpiped.cfg" "$out/opt/xpipe/app/lib/app/xpiped_raw.cfg"
|
||||
mv "$out/opt/xpipe/app/scripts/xpiped_debug.sh" "$out/opt/xpipe/app/scripts/xpiped_debug_raw.sh"
|
||||
|
||||
makeShellWrapper "$out/opt/xpipe/app/bin/xpiped_raw" "$out/opt/xpipe/app/bin/xpiped" \
|
||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ fontconfig gtk3 udev ]}"
|
||||
makeShellWrapper "$out/opt/xpipe/app/scripts/xpiped_debug_raw.sh" "$out/opt/xpipe/app/scripts/xpiped_debug.sh" \
|
||||
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ fontconfig gtk3 udev ]}"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A cross-platform shell connection hub and remote file manager";
|
||||
homepage = "https://github.com/xpipe-io/${pname}";
|
||||
downloadPage = "https://github.com/xpipe-io/${pname}/releases/latest";
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
changelog = "https://github.com/xpipe-io/${pname}/releases/tag/${version}";
|
||||
license = [ licenses.asl20 licenses.unfree ];
|
||||
maintainers = with maintainers; [ crschnick ];
|
||||
platforms = [ "x86_64-linux" "aarch64-linux" ];
|
||||
mainProgram = pname;
|
||||
};
|
||||
}
|
|
@ -27,11 +27,11 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "PortfolioPerformance";
|
||||
version = "0.67.0";
|
||||
version = "0.67.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
|
||||
hash = "sha256-bm38t8wgLEYZVDsMnOv3Wj6TgKu2s36wo8q0Sj7pPNI=";
|
||||
hash = "sha256-Bx1Q7eXJuu/Vh6UuZYlkUlvw6FXTObYAynHV+60cNVY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -33,11 +33,11 @@ in
|
|||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "scribus";
|
||||
|
||||
version = "1.6.0";
|
||||
version = "1.6.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/scribus/scribus-devel/scribus-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-lLl0kOzhcoaNxPBMeqLulQtBtfL/QoXfN9YV8ETQOOU=";
|
||||
hash = "sha256-4J3Xjm22HQG5MhEI/t7bzNbsCrNS3Vuv24sEHw73npk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "cloudlog";
|
||||
version = "2.5.2";
|
||||
version = "2.6.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "magicbug";
|
||||
repo = "Cloudlog";
|
||||
rev = version;
|
||||
hash = "sha256-0l4/isk2DKZ0HBxeuUN+RqB3o/3fWdhFSFCnQ2OiO6Y=";
|
||||
hash = "sha256-1V3btXYozgT22KiihZgUiZIktV2Y7IXJgoq7bn16ikk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ lib, stdenv, fetchFromGitHub, cmake, fftw, hamlib, libpulseaudio, libGL, libX11, liquid-dsp,
|
||||
pkg-config, soapysdr-with-plugins, wxGTK32, enableDigitalLab ? false,
|
||||
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, fftw, hamlib, libpulseaudio, libGL, libX11,
|
||||
liquid-dsp, pkg-config, soapysdr-with-plugins, wxGTK32, enableDigitalLab ? false,
|
||||
Cocoa, WebKit }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -13,6 +13,14 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0cyv1vk97x4i3h3hhh7dx8mv6d1ad0fypdbx5fl26bz661sr8j2n";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix for liquid-dsp v1.50
|
||||
(fetchpatch {
|
||||
url = "https://github.com/cjcliffe/CubicSDR/commit/0e3a785bd2af56d18ff06b56579197b3e89b34ab.patch";
|
||||
sha256 = "sha256-mPfNZcV3FnEtGVX4sCMSs+Qc3VeSBIRkpCyx24TKkcU=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake pkg-config ];
|
||||
|
||||
buildInputs = [ fftw hamlib liquid-dsp soapysdr-with-plugins wxGTK32 ]
|
||||
|
|
|
@ -38,13 +38,11 @@
|
|||
then "rocm"
|
||||
else "none"
|
||||
)
|
||||
# gpuVersion needs to be set for both CUDA as well as ROCM hardware.
|
||||
# gpuArch is only required for the ROCM stack.
|
||||
# Change to a value suitable for your target GPU.
|
||||
# For AMD values see https://github.com/cp2k/cp2k/blob/master/INSTALL.md#2v-rocmhip-support-for-amd-gpu
|
||||
# and for Nvidia see https://github.com/cp2k/cp2k/blob/master/INSTALL.md#2i-cuda-optional-improved-performance-on-gpu-systems
|
||||
, gpuVersion ? "Mi100"
|
||||
, gpuArch ? "gfx908"
|
||||
, gpuVersion ? ( if gpuBackend == "cuda" then "A100" else "Mi100" )
|
||||
, gpuArch ? ( if gpuBackend == "cuda" then "sm_80" else "gfx908" )
|
||||
}:
|
||||
|
||||
assert builtins.elem gpuBackend [ "none" "cuda" "rocm" ];
|
||||
|
@ -56,17 +54,19 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cp2k";
|
||||
version = "2023.2";
|
||||
version = "2024.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cp2k";
|
||||
repo = "cp2k";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-1TJorIjajWFO7i9vqSBDTAIukBdyvxbr5dargt4QB8M=";
|
||||
hash = "sha256-6PB6wjdTOa55dXV7QIsjxI77hhc95WFEjNePfupBUJQ=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ python3 which openssh makeWrapper pkg-config ];
|
||||
nativeBuildInputs = [ python3 which openssh makeWrapper pkg-config ]
|
||||
++ lib.optional (gpuBackend == "cuda") cudaPackages.cuda_nvcc;
|
||||
|
||||
buildInputs = [
|
||||
gfortran
|
||||
fftw
|
||||
|
@ -88,8 +88,11 @@ stdenv.mkDerivation rec {
|
|||
libvdwxc
|
||||
]
|
||||
++ lib.optional enableElpa elpa
|
||||
++ lib.optional (gpuBackend == "cuda") cudaPackages.cudatoolkit
|
||||
++ lib.optional (gpuBackend == "rocm") [
|
||||
++ lib.optionals (gpuBackend == "cuda") [
|
||||
cudaPackages.cuda_cudart
|
||||
cudaPackages.libcublas
|
||||
cudaPackages.cuda_nvrtc
|
||||
] ++ lib.optionals (gpuBackend == "rocm") [
|
||||
rocmPackages.clr
|
||||
rocmPackages.rocm-core
|
||||
rocmPackages.hipblas
|
||||
|
@ -126,7 +129,7 @@ stdenv.mkDerivation rec {
|
|||
AR = ar -r
|
||||
${lib.strings.optionalString (gpuBackend == "cuda") ''
|
||||
OFFLOAD_CC = nvcc
|
||||
OFFLOAD_FLAGS = -O3 -g -w --std=c++11
|
||||
OFFLOAD_FLAGS = -O3 -g -w --std=c++11 -arch ${gpuArch}
|
||||
OFFLOAD_TARGET = cuda
|
||||
GPUVER = ${gpuVersion}
|
||||
CXX = mpicxx
|
||||
|
@ -144,7 +147,7 @@ stdenv.mkDerivation rec {
|
|||
-D__MPI_VERSION=3 -D__F2008 -D__LIBXSMM -D__SPGLIB \
|
||||
-D__MAX_CONTR=4 -D__LIBVORI ${lib.optionalString enableElpa "-D__ELPA"} \
|
||||
-D__PLUMED2 -D__HDF5 -D__GSL -D__SIRIUS -D__LIBVDWXC -D__SPFFT -D__SPLA \
|
||||
${lib.strings.optionalString (gpuBackend == "cuda") "-D__OFFLOAD_CUDA -D__DBCSR_ACC"} \
|
||||
${lib.strings.optionalString (gpuBackend == "cuda") "-D__OFFLOAD_CUDA -D__ACC -D__DBCSR_ACC -D__NO_OFFLOAD_PW"} \
|
||||
${lib.strings.optionalString (gpuBackend == "rocm") "-D__OFFLOAD_HIP -D__DBCSR_ACC -D__NO_OFFLOAD_PW"}
|
||||
CFLAGS = -fopenmp -I${lib.getDev hdf5-fortran}/include -I${lib.getDev gsl}/include
|
||||
FCFLAGS = \$(DFLAGS) -O2 -ffree-form -ffree-line-length-none \
|
||||
|
@ -154,6 +157,7 @@ stdenv.mkDerivation rec {
|
|||
-I${lib.getDev libint}/include ${lib.optionalString enableElpa "$(pkg-config --variable=fcflags elpa)"} \
|
||||
-I${lib.getDev sirius}/include/sirius \
|
||||
-I${lib.getDev libxc}/include -I${lib.getDev libxsmm}/include \
|
||||
-I${lib.getDev hdf5-fortran}/include \
|
||||
-fallow-argument-mismatch
|
||||
LIBS = -lfftw3 -lfftw3_threads \
|
||||
-lscalapack -lblas -llapack \
|
||||
|
@ -163,7 +167,11 @@ stdenv.mkDerivation rec {
|
|||
-fopenmp ${lib.optionalString enableElpa "$(pkg-config --libs elpa)"} \
|
||||
-lz -ldl ${lib.optionalString (mpi.pname == "openmpi") "$(mpicxx --showme:link)"} \
|
||||
-lplumed -lhdf5_fortran -lhdf5_hl -lhdf5 -lgsl -lsirius -lspla -lspfft -lvdwxc \
|
||||
${lib.strings.optionalString (gpuBackend == "cuda") "-lcudart -lnvrtc -lcuda -lcublas"} \
|
||||
${lib.strings.optionalString (gpuBackend == "cuda") ''
|
||||
-L${cudaPackages.cuda_cudart}/lib/stubs/ \
|
||||
-lcudart -lnvrtc -lcuda -lcublas
|
||||
''
|
||||
} \
|
||||
${lib.strings.optionalString (gpuBackend == "rocm") "-lamdhip64 -lhipfft -lhipblas -lrocblas"}
|
||||
LDFLAGS = \$(FCFLAGS) \$(LIBS)
|
||||
include ${plumed}/lib/plumed/src/lib/Plumed.inc
|
||||
|
|
|
@ -43,6 +43,7 @@
|
|||
, valgrind
|
||||
|
||||
, stable
|
||||
, testing
|
||||
, baseName
|
||||
, kicadSrc
|
||||
, kicadVersion
|
||||
|
@ -56,6 +57,8 @@
|
|||
|
||||
assert lib.assertMsg (!(sanitizeAddress && sanitizeThreads))
|
||||
"'sanitizeAddress' and 'sanitizeThreads' are mutually exclusive, use one.";
|
||||
assert testing -> !stable
|
||||
-> throw "testing implies stable and cannot be used with stable = false";
|
||||
|
||||
let
|
||||
inherit (lib) optional optionals optionalString;
|
||||
|
@ -74,9 +77,9 @@ stdenv.mkDerivation rec {
|
|||
];
|
||||
|
||||
# tagged releases don't have "unknown"
|
||||
# kicad nightlies use git describe --dirty
|
||||
# kicad testing and nightlies use git describe --dirty
|
||||
# nix removes .git, so its approximated here
|
||||
postPatch = lib.optionalString (!stable) ''
|
||||
postPatch = lib.optionalString (!stable || testing) ''
|
||||
substituteInPlace cmake/KiCadVersion.cmake \
|
||||
--replace "unknown" "${builtins.substring 0 10 src.rev}"
|
||||
|
||||
|
@ -92,7 +95,7 @@ stdenv.mkDerivation rec {
|
|||
]
|
||||
++ optionals (stable) [
|
||||
# https://gitlab.com/kicad/code/kicad/-/issues/12491
|
||||
# should be resolved in the next release
|
||||
# should be resolved in the next major? release
|
||||
"-DCMAKE_CTEST_ARGUMENTS='--exclude-regex;qa_eeschema'"
|
||||
]
|
||||
++ optional (stable && !withNgspice) "-DKICAD_SPICE=OFF"
|
||||
|
|
|
@ -2,22 +2,26 @@
|
|||
, runCommand
|
||||
, newScope
|
||||
, fetchFromGitLab
|
||||
, gnome
|
||||
, dconf
|
||||
, wxGTK32
|
||||
, gtk3
|
||||
, makeWrapper
|
||||
, gsettings-desktop-schemas
|
||||
, hicolor-icon-theme
|
||||
, symlinkJoin
|
||||
, callPackage
|
||||
, callPackages
|
||||
|
||||
, gnome
|
||||
, dconf
|
||||
, gtk3
|
||||
, wxGTK32
|
||||
, librsvg
|
||||
, cups
|
||||
, gsettings-desktop-schemas
|
||||
, hicolor-icon-theme
|
||||
|
||||
, unzip
|
||||
, jq
|
||||
|
||||
, pname ? "kicad"
|
||||
, stable ? true
|
||||
, testing ? false
|
||||
, withNgspice ? !stdenv.isDarwin
|
||||
, libngspice
|
||||
, withScripting ? true
|
||||
|
@ -29,7 +33,6 @@
|
|||
, with3d ? true
|
||||
, withI18n ? true
|
||||
, srcs ? { }
|
||||
, symlinkJoin
|
||||
}:
|
||||
|
||||
# `addons`: https://dev-docs.kicad.org/en/addons/
|
||||
|
@ -75,7 +78,9 @@
|
|||
# }
|
||||
|
||||
let
|
||||
baseName = if (stable) then "kicad" else "kicad-unstable";
|
||||
baseName = if (testing) then "kicad-testing"
|
||||
else if (stable) then "kicad"
|
||||
else "kicad-unstable";
|
||||
versionsImport = import ./versions.nix;
|
||||
|
||||
# versions.nix does not provide us with version, src and rev. We
|
||||
|
@ -154,7 +159,7 @@ stdenv.mkDerivation rec {
|
|||
passthru.libraries = callPackages ./libraries.nix { inherit libSrc; };
|
||||
passthru.callPackage = newScope { inherit addonPath python3; };
|
||||
base = callPackage ./base.nix {
|
||||
inherit stable baseName;
|
||||
inherit stable testing baseName;
|
||||
inherit kicadSrc kicadVersion;
|
||||
inherit wxGTK python wxPython;
|
||||
inherit withNgspice withScripting withI18n;
|
||||
|
@ -262,17 +267,16 @@ stdenv.mkDerivation rec {
|
|||
ln -s ${base}/share/metainfo $out/share/metainfo
|
||||
'';
|
||||
|
||||
# can't run this for each pname
|
||||
# stable and unstable are in the same versions.nix
|
||||
# and kicad-small reuses stable
|
||||
# with "all" it updates both, run it manually if you don't want that
|
||||
# and can't git commit if this could be running in parallel with other scripts
|
||||
passthru.updateScript = [ ./update.sh "all" ];
|
||||
passthru.updateScript = {
|
||||
command = [ ./update.sh "${pname}" ];
|
||||
supportedFeatures = [ "commit" ];
|
||||
};
|
||||
|
||||
meta = rec {
|
||||
description = (if (stable)
|
||||
then "Open Source Electronics Design Automation suite"
|
||||
else "Open Source EDA suite, development build")
|
||||
else if (testing) then "Open Source EDA suite, latest on stable branch"
|
||||
else "Open Source EDA suite, latest on master branch")
|
||||
+ (lib.optionalString (!with3d) ", without 3D models");
|
||||
homepage = "https://www.kicad.org/";
|
||||
longDescription = ''
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p coreutils git nix curl
|
||||
#!nix-shell -i bash -p coreutils git nix curl jq
|
||||
# shellcheck shell=bash enable=all
|
||||
|
||||
set -e
|
||||
|
@ -25,38 +25,63 @@ export TMPDIR=/tmp
|
|||
# if there is, default to commiting?
|
||||
# won't work when running in parallel?
|
||||
# remove items left in /nix/store?
|
||||
# reuse hashes of already checked revs (to avoid redownloading testing's packages3d)
|
||||
|
||||
# nixpkgs' update.nix passes in UPDATE_NIX_PNAME to indicate which package is being updated
|
||||
# assigning a default value to that as shellcheck doesn't like the use of unassigned variables
|
||||
: "${UPDATE_NIX_PNAME:=""}"
|
||||
# update.nix can also parse JSON output of this script to formulate a commit
|
||||
# this requires we collect the version string in the old versions.nix for the updated package
|
||||
old_version=""
|
||||
new_version=""
|
||||
|
||||
|
||||
# get the latest tag that isn't an RC or *.99
|
||||
latest_tags="$(git ls-remote --tags --sort -version:refname https://gitlab.com/kicad/code/kicad.git)"
|
||||
# using a scratch variable to ensure command failures get caught (SC2312)
|
||||
scratch="$(grep -o 'refs/tags/[0-9]*\.[0-9]*\.[0-9]*$' <<< "${latest_tags}")"
|
||||
scratch="$(grep -ve '\.99' -e '\.9\.9' <<< "${scratch}")"
|
||||
scratch="$(head -n 1 <<< "${scratch}")"
|
||||
scratch="$(sed -n '1p' <<< "${scratch}")"
|
||||
latest_tag="$(cut -d '/' -f 3 <<< "${scratch}")"
|
||||
|
||||
all_versions=( "${latest_tag}" master )
|
||||
# get the latest branch name for testing
|
||||
branches="$(git ls-remote --heads --sort -version:refname https://gitlab.com/kicad/code/kicad.git)"
|
||||
scratch="$(grep -o 'refs/heads/[0-9]*\.[0-9]*$' <<< "${branches}")"
|
||||
scratch="$(sed -n '1p' <<< "${scratch}")"
|
||||
testing_branch="$(cut -d '/' -f 3 <<< "${scratch}")"
|
||||
|
||||
# "latest_tag" and "master" directly refer to what we want
|
||||
# "testing" uses "testing_branch" found above
|
||||
all_versions=( "${latest_tag}" testing master )
|
||||
|
||||
prefetch="nix-prefetch-url --unpack --quiet"
|
||||
|
||||
clean=""
|
||||
check_stable=""
|
||||
check_testing=1
|
||||
check_unstable=1
|
||||
commit=""
|
||||
|
||||
for arg in "$@"; do
|
||||
for arg in "$@" "${UPDATE_NIX_PNAME}"; do
|
||||
case "${arg}" in
|
||||
help|-h|--help) echo "Read me!" >&2; exit 1; ;;
|
||||
kicad|release|tag|stable|*small|5*|6*) check_stable=1; check_unstable="" ;;
|
||||
all|both|full) check_stable=1; check_unstable=1 ;;
|
||||
kicad|kicad-small|release|tag|stable|5*|6*|7*|8*) check_stable=1; check_testing=""; check_unstable="" ;;
|
||||
*testing|kicad-testing-small) check_testing=1; check_unstable="" ;;
|
||||
*unstable|*unstable-small|master|main) check_unstable=1; check_testing="" ;;
|
||||
latest|now|today) check_unstable=1; check_testing=1 ;;
|
||||
all|both|full) check_stable=1; check_testing=1; check_unstable=1 ;;
|
||||
clean|fix|*fuck) check_stable=1; check_testing=1; check_unstable=1; clean=1 ;;
|
||||
commit) commit=1 ;;
|
||||
clean|fix|*fuck) check_stable=1; check_unstable=1; clean=1 ;;
|
||||
master|*unstable|latest|now|today) check_unstable=1 ;;
|
||||
*) ;;
|
||||
esac
|
||||
done
|
||||
|
||||
here="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
now=$(date --iso-8601 --utc)
|
||||
commit_date() {
|
||||
gitlab_json="$(curl -s https://gitlab.com/api/v4/projects/kicad%2Fcode%2Fkicad/repository/commits/"$1")"
|
||||
commit_created="$(jq .created_at --raw-output <<< "${gitlab_json}")"
|
||||
date --date="${commit_created}" --iso-8601 --utc
|
||||
}
|
||||
|
||||
file="${here}/versions.nix"
|
||||
# just in case this runs in parallel
|
||||
|
@ -65,11 +90,7 @@ tmp="${here}/,versions.nix.${RANDOM}"
|
|||
libs=( symbols templates footprints packages3d )
|
||||
|
||||
get_rev() {
|
||||
if [[ ${version} == "master" ]]; then
|
||||
git ls-remote --heads "$@"
|
||||
else
|
||||
git ls-remote --tags "$@"
|
||||
fi
|
||||
git ls-remote "$@"
|
||||
}
|
||||
|
||||
gitlab="https://gitlab.com/kicad"
|
||||
|
@ -78,13 +99,14 @@ src_pre="https://gitlab.com/api/v4/projects/kicad%2Fcode%2Fkicad/repository/arch
|
|||
lib_pre="https://gitlab.com/api/v4/projects/kicad%2Flibraries%2Fkicad-"
|
||||
lib_mid="/repository/archive.tar.gz?sha="
|
||||
|
||||
# number of items updated
|
||||
count=0
|
||||
|
||||
printf "Latest tag is\t%s\n" "${latest_tag}" >&2
|
||||
printf "Latest tag is %s\n" "${latest_tag}" >&2
|
||||
|
||||
if [[ ! -f ${file} ]]; then
|
||||
echo "No existing file, generating from scratch" >&2
|
||||
check_stable=1; check_unstable=1; clean=1
|
||||
check_stable=1; check_testing=1; check_unstable=1; clean=1
|
||||
fi
|
||||
|
||||
printf "Writing %s\n" "${tmp}" >&2
|
||||
|
@ -97,32 +119,58 @@ printf "{\n"
|
|||
|
||||
for version in "${all_versions[@]}"; do
|
||||
|
||||
src_version=${version};
|
||||
lib_version=${version};
|
||||
# testing is the stable branch on the main repo
|
||||
# but the libraries don't have such a branch
|
||||
# only the latest release tag and a master branch
|
||||
if [[ ${version} == "testing" ]]; then
|
||||
src_version=${testing_branch};
|
||||
lib_version=${latest_tag};
|
||||
fi
|
||||
|
||||
if [[ ${version} == "master" ]]; then
|
||||
pname="kicad-unstable"
|
||||
today="${now}"
|
||||
elif [[ ${version} == "testing" ]]; then
|
||||
pname="kicad-testing"
|
||||
else
|
||||
pname="kicad"
|
||||
today="${version}"
|
||||
fi
|
||||
|
||||
# skip a version if we don't want to check it
|
||||
if [[ (${version} != "master" && -n ${check_stable}) \
|
||||
|| (${version} == "master" && -n ${check_unstable}) ]]; then
|
||||
if [[ (-n ${check_stable} && ${version} != "master" && ${version} != "testing") \
|
||||
|| (-n ${check_testing} && ${version} == "testing") \
|
||||
|| (-n ${check_unstable} && ${version} == "master" ) ]]; then
|
||||
|
||||
now=$(commit_date "${src_version}")
|
||||
|
||||
if [[ ${version} == "master" ]]; then
|
||||
pname="kicad-unstable"
|
||||
new_version="${now}"
|
||||
elif [[ ${version} == "testing" ]]; then
|
||||
pname="kicad-testing"
|
||||
new_version="${testing_branch}-${now}"
|
||||
else
|
||||
pname="kicad"
|
||||
new_version="${version}"
|
||||
fi
|
||||
|
||||
printf "\nChecking %s\n" "${pname}" >&2
|
||||
|
||||
printf "%2s\"%s\" = {\n" "" "${pname}"
|
||||
printf "%4skicadVersion = {\n" ""
|
||||
printf "%6sversion =\t\t\t\"%s\";\n" "" "${today}"
|
||||
printf "%6sversion =\t\t\t\"%s\";\n" "" "${new_version}"
|
||||
printf "%6ssrc = {\n" ""
|
||||
|
||||
echo "Checking src" >&2
|
||||
scratch="$(get_rev "${gitlab}"/code/kicad.git "${version}")"
|
||||
scratch="$(get_rev "${gitlab}"/code/kicad.git "${src_version}")"
|
||||
src_rev="$(cut -f1 <<< "${scratch}")"
|
||||
has_rev="$(grep -sm 1 "\"${pname}\"" -A 4 "${file}" | grep -sm 1 "${src_rev}" || true)"
|
||||
has_hash="$(grep -sm 1 "\"${pname}\"" -A 5 "${file}" | grep -sm 1 "sha256" || true)"
|
||||
old_version="$(grep -sm 1 "\"${pname}\"" -A 3 "${file}" | grep -sm 1 "version" | awk -F "\"" '{print $2}' || true)"
|
||||
|
||||
if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
|
||||
echo "Reusing old ${pname}.src.sha256, already latest .rev" >&2
|
||||
echo "Reusing old ${pname}.src.sha256, already latest .rev at ${old_version}" >&2
|
||||
scratch=$(grep -sm 1 "\"${pname}\"" -A 5 "${file}")
|
||||
grep -sm 1 "rev" -A 1 <<< "${scratch}"
|
||||
else
|
||||
|
@ -135,19 +183,19 @@ for version in "${all_versions[@]}"; do
|
|||
printf "%4s};\n" ""
|
||||
|
||||
printf "%4slibVersion = {\n" ""
|
||||
printf "%6sversion =\t\t\t\"%s\";\n" "" "${today}"
|
||||
printf "%6sversion =\t\t\t\"%s\";\n" "" "${new_version}"
|
||||
printf "%6slibSources = {\n" ""
|
||||
|
||||
for lib in "${libs[@]}"; do
|
||||
echo "Checking ${lib}" >&2
|
||||
url="${gitlab}/libraries/kicad-${lib}.git"
|
||||
scratch="$(get_rev "${url}" "${version}")"
|
||||
scratch="$(get_rev "${url}" "${lib_version}")"
|
||||
scratch="$(cut -f1 <<< "${scratch}")"
|
||||
lib_rev="$(tail -n1 <<< "${scratch}")"
|
||||
has_rev="$(grep -sm 1 "\"${pname}\"" -A 19 "${file}" | grep -sm 1 "${lib_rev}" || true)"
|
||||
has_hash="$(grep -sm 1 "\"${pname}\"" -A 20 "${file}" | grep -sm 1 "${lib}.sha256" || true)"
|
||||
if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
|
||||
echo "Reusing old kicad-${lib}-${today}.src.sha256, already latest .rev" >&2
|
||||
echo "Reusing old kicad-${lib}-${new_version}.src.sha256, already latest .rev" >&2
|
||||
scratch="$(grep -sm 1 "\"${pname}\"" -A 20 "${file}")"
|
||||
grep -sm 1 "${lib}" -A 1 <<< "${scratch}"
|
||||
else
|
||||
|
@ -191,3 +239,22 @@ if [[ ${count} -gt 0 ]]; then
|
|||
else
|
||||
echo "No changes, those checked are up to date" >&2
|
||||
fi
|
||||
|
||||
# using UPDATE_NIX_ATTR_PATH to detect if this is being called from update.nix
|
||||
# and output JSON to describe the changes
|
||||
if [[ -n ${UPDATE_NIX_ATTR_PATH} ]]; then
|
||||
|
||||
if [[ ${count} -eq 0 ]]; then echo "[{}]"; exit 0; fi
|
||||
|
||||
jq -n \
|
||||
--arg attrpath "${UPDATE_NIX_PNAME}" \
|
||||
--arg oldversion "${old_version}" \
|
||||
--arg newversion "${new_version}" \
|
||||
--arg file "${file}" \
|
||||
'[{
|
||||
"attrPath": $attrpath,
|
||||
"oldVersion": $oldversion,
|
||||
"newVersion": $newversion,
|
||||
"files": [ $file ]
|
||||
}]'
|
||||
fi
|
||||
|
|
|
@ -23,6 +23,28 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
"kicad-testing" = {
|
||||
kicadVersion = {
|
||||
version = "7.0-2024-01-07";
|
||||
src = {
|
||||
rev = "ace6439758f8d211001235f36f02a60488337e41";
|
||||
sha256 = "0z4p2srz9rld7mq6k2y5fipz8mgsdhh2506wam4388nklzzkrccr";
|
||||
};
|
||||
};
|
||||
libVersion = {
|
||||
version = "7.0-2024-01-07";
|
||||
libSources = {
|
||||
symbols.rev = "eedf6c9ddac2816023e817d4dc91032f9d7390b9";
|
||||
symbols.sha256 = "0nlgmxf9z1vf4g350dfkxql1dawgmw275wqxkgszsfxmhdfpmi9v";
|
||||
templates.rev = "9ce98cc45f3778e05c404edebf0f98de5c247ffe";
|
||||
templates.sha256 = "0mykfwwik7472i4r0isc5szj3dnmvd0538p0vlmzh4rcgj3pj3vm";
|
||||
footprints.rev = "7061fc9847ecc1b838e60dc6826db534028494f6";
|
||||
footprints.sha256 = "1az6fzh1lma71mj12bc4bblnmzjayrxhkb8w9rjvlhvvgv33cdmy";
|
||||
packages3d.rev = "d7345b34daaa23acf0d4506ed937fb424b5b18cd";
|
||||
packages3d.sha256 = "0xzyi4mgyifwc6dppdzh6jq294mkj0a71cwkqw2ymz1kfbksw626";
|
||||
};
|
||||
};
|
||||
};
|
||||
"kicad-unstable" = {
|
||||
kicadVersion = {
|
||||
version = "2023-08-15";
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "gh";
|
||||
version = "2.40.1";
|
||||
version = "2.41.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cli";
|
||||
repo = "cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-KdJZHouMTbbD/8k2VGFvRits7grbbVNUmCM6dSiJXBc=";
|
||||
hash = "sha256-GkrEirunY17WgAv4XOreG+JwPQn7cRTmr7hJ3/2tSrY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-jM9nwTMOTh+eXztLvHIwwH4qu3ZIMOtBrPEtByB9Ry8=";
|
||||
vendorHash = "sha256-XBoC1sHfxInkamSHNm7Vb3AKCgIch6uYx0jJWqN7PN8=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
|
|
@ -1,27 +1,38 @@
|
|||
{ lib, stdenv, fetchurl
|
||||
, pkg-config, openssl, libbsd, libevent, libuuid, libossp_uuid, libmd, zlib, ncurses, bison
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, pkg-config
|
||||
, openssl
|
||||
, libbsd
|
||||
, libevent
|
||||
, libuuid
|
||||
, libossp_uuid
|
||||
, libmd
|
||||
, zlib
|
||||
, ncurses
|
||||
, bison
|
||||
, autoPatchelfHook
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "got";
|
||||
version = "0.94";
|
||||
version = "0.95";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://gameoftrees.org/releases/portable/got-portable-${version}.tar.gz";
|
||||
hash = "sha256-hG0/a+sk6uZCxR908YfZCW44qx/SIwwGO9mUaxxHZ3k=";
|
||||
url = "https://gameoftrees.org/releases/portable/got-portable-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-5on9ff76OAFmoaKTwVM0hUCGLiAZGJzt6+jCx2Nygg4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config bison ]
|
||||
++ lib.optionals stdenv.isLinux [ autoPatchelfHook ];
|
||||
|
||||
buildInputs = [ openssl libbsd libevent libuuid libmd zlib ncurses ]
|
||||
++ lib.optionals stdenv.isDarwin [ libossp_uuid ];
|
||||
++ lib.optionals stdenv.isDarwin [ libossp_uuid ];
|
||||
|
||||
configureFlags = [ "--enable-gotd" ];
|
||||
|
||||
preConfigure = lib.optionalString stdenv.isDarwin ''
|
||||
# The configure script assumes dependencies on Darwin are install via
|
||||
# The configure script assumes dependencies on Darwin are installed via
|
||||
# Homebrew or MacPorts and hardcodes assumptions about the paths of
|
||||
# dependencies which fails the nixpkgs configurePhase.
|
||||
substituteInPlace configure --replace 'xdarwin' 'xhomebrew'
|
||||
|
@ -38,7 +49,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
installCheckPhase = ''
|
||||
runHook preInstallCheck
|
||||
test "$($out/bin/got --version)" = '${pname} ${version}'
|
||||
test "$($out/bin/got --version)" = "${finalAttrs.pname} ${finalAttrs.version}"
|
||||
runHook postInstallCheck
|
||||
'';
|
||||
|
||||
|
@ -59,4 +70,4 @@ stdenv.mkDerivation rec {
|
|||
platforms = platforms.linux ++ platforms.darwin;
|
||||
maintainers = with maintainers; [ abbe afh ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
buildKodiAddon rec {
|
||||
pname = "arteplussept";
|
||||
namespace = "plugin.video.arteplussept";
|
||||
version = "1.4.1";
|
||||
version = "1.4.2";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://mirrors.kodi.tv/addons/nexus/${namespace}/${namespace}-${version}.zip";
|
||||
hash = "sha256-4lPJIFBF4zXr1bEyv9tVUPXw9JFt2by/tcOwihib6aQ=";
|
||||
hash = "sha256-dqxGKaOnEYOI33Aw76zbjma5z7MqOUh367dFsV87olU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -48,21 +48,24 @@
|
|||
, asio
|
||||
, decklinkSupport ? false
|
||||
, blackmagic-desktop-video
|
||||
, libdatachannel
|
||||
, libvpl
|
||||
, qrcodegencpp
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (lib) optional optionals;
|
||||
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "obs-studio";
|
||||
version = "29.1.3";
|
||||
version = "30.0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "obsproject";
|
||||
repo = "obs-studio";
|
||||
rev = version;
|
||||
sha256 = "sha256-D0DPueMtopwz5rLgM8QcPT7DgTKcJKQHnst69EY9V6Q=";
|
||||
repo = finalAttrs.pname;
|
||||
rev = finalAttrs.version;
|
||||
sha256 = "sha256-8pX1kqibrtDIaE1+/Pey1A5bu6MwFTXLrBOah4rsF+4=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -108,6 +111,9 @@ stdenv.mkDerivation rec {
|
|||
nlohmann_json
|
||||
websocketpp
|
||||
asio
|
||||
libdatachannel
|
||||
libvpl
|
||||
qrcodegencpp
|
||||
]
|
||||
++ optionals scriptingSupport [ luajit python3 ]
|
||||
++ optional alsaSupport alsa-lib
|
||||
|
@ -127,7 +133,7 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
"-DOBS_VERSION_OVERRIDE=${version}"
|
||||
"-DOBS_VERSION_OVERRIDE=${finalAttrs.version}"
|
||||
"-Wno-dev" # kill dev warnings that are useless for packaging
|
||||
# Add support for browser source
|
||||
"-DBUILD_BROWSER=ON"
|
||||
|
@ -159,7 +165,7 @@ stdenv.mkDerivation rec {
|
|||
addOpenGLRunpath $out/lib/obs-plugins/*.so
|
||||
|
||||
# Link libcef again after patchelfing other libs
|
||||
ln -s ${libcef}/lib/libcef.so $out/lib/obs-plugins/libcef.so
|
||||
ln -s ${libcef}/lib/* $out/lib/obs-plugins/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -170,9 +176,9 @@ stdenv.mkDerivation rec {
|
|||
video content, efficiently
|
||||
'';
|
||||
homepage = "https://obsproject.com";
|
||||
maintainers = with maintainers; [ jb55 MP2E materus ];
|
||||
maintainers = with maintainers; [ jb55 MP2E materus fpletz ];
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
|
||||
mainProgram = "obs";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
|
@ -33,6 +33,5 @@ stdenv.mkDerivation rec {
|
|||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ algram ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
broken = true; # Not compatible with qt6 yet but required by OBS28
|
||||
};
|
||||
}
|
||||
|
|
|
@ -27,10 +27,6 @@ stdenv.mkDerivation rec {
|
|||
"-Wno-dev"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
cp ${obs-studio.src}/cmake/external/ObsPluginHelpers.cmake cmake/FindLibObs.cmake
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Audio device and application capture for OBS Studio using PipeWire";
|
||||
homepage = "https://github.com/dimtpap/obs-pipewire-audio-capture";
|
||||
|
|
|
@ -28,6 +28,9 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
# obs_frontend_add_dock() deprecated in obs 30
|
||||
env.NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
|
||||
|
||||
patches = [
|
||||
# fix build with qt 6.6.0
|
||||
# treewide: replace deprecated qAsConst with std::as_const()
|
||||
|
@ -36,6 +39,11 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
url = "https://github.com/univrsal/tuna/commit/0d570e771f8d8e6ae7c85bd2b86bbf59c264789e.patch";
|
||||
hash = "sha256-A5idhMiM9funqhTm5XMIBqwy+FO1SaNPtgZjo+Vws6k=";
|
||||
})
|
||||
# fix build with obs 30
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/univrsal/tuna/commit/723bd3c7b4e257cf0997611426e555068de77ae7.patch";
|
||||
hash = "sha256-MF5vghGYknL6q+A8BJ1yrQcEKIu9I+PWk+RZNYg3fRU=";
|
||||
})
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
|
|
|
@ -1,72 +0,0 @@
|
|||
{ lib
|
||||
, cni-plugins
|
||||
, buildGoModule
|
||||
, firecracker
|
||||
, containerd
|
||||
, runc
|
||||
, makeWrapper
|
||||
, fetchFromGitHub
|
||||
, git
|
||||
}:
|
||||
|
||||
buildGoModule rec{
|
||||
pname = "ignite";
|
||||
version = "0.10.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "weaveworks";
|
||||
repo = "ignite";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-WCgNh+iLtxLslzcHuIwVLZpUEhvBJFe1Y84PaPtbtcY=";
|
||||
leaveDotGit = true;
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
doCheck = false;
|
||||
|
||||
postPatch = ''
|
||||
# ignite tries to run cni-plugins programs from /opt/cni/bin
|
||||
substituteInPlace pkg/constants/dependencies.go \
|
||||
--replace "/opt/cni/bin/loopback" ${cni-plugins}/bin/loopback \
|
||||
--replace "/opt/cni/bin/bridge" ${cni-plugins}/bin/bridge
|
||||
|
||||
# ignite tries to run cni-plugins programs from /opt/cni/bin
|
||||
substituteInPlace pkg/network/cni/cni.go \
|
||||
--replace "/opt/cni/bin" ${cni-plugins}/bin
|
||||
|
||||
# fetchgit doesn't fetch tags from git repository so it's necessary to force IGNITE_GIT_VERSION to be ${version}
|
||||
# also forcing git state to be clean because if it's dirty ignite will try to fetch the image weaveworks/ignite:dev
|
||||
# which is not in docker.io, we want it to fetch the image weaveworks/ignite:v${version}
|
||||
substituteInPlace hack/ldflags.sh \
|
||||
--replace '$(git describe --tags --abbrev=14 "''${IGNITE_GIT_COMMIT}^{commit}" 2>/dev/null)' "v${version}" \
|
||||
--replace 'IGNITE_GIT_TREE_STATE="dirty"' 'IGNITE_GIT_TREE_STATE="clean"'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
git
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
firecracker
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
patchShebangs ./hack/ldflags.sh
|
||||
export buildFlagsArray+=("-ldflags=$(./hack/ldflags.sh)")
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
for prog in hack ignite ignited ignite-spawn; do
|
||||
wrapProgram "$out/bin/$prog" --prefix PATH : ${lib.makeBinPath [ cni-plugins firecracker containerd runc ]}
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Ignite a Firecracker microVM";
|
||||
homepage = "https://github.com/weaveworks/ignite";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ tfmoraes ];
|
||||
};
|
||||
}
|
|
@ -23,6 +23,7 @@
|
|||
, cephSupport ? false, ceph
|
||||
, glusterfsSupport ? false, glusterfs, libuuid
|
||||
, openGLSupport ? sdlSupport, mesa, libepoxy, libdrm
|
||||
, rutabagaSupport ? openGLSupport && !toolsOnly, rutabaga_gfx
|
||||
, virglSupport ? openGLSupport, virglrenderer
|
||||
, libiscsiSupport ? !toolsOnly, libiscsi
|
||||
, smbdSupport ? false, samba
|
||||
|
@ -98,6 +99,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
++ lib.optionals cephSupport [ ceph ]
|
||||
++ lib.optionals glusterfsSupport [ glusterfs libuuid ]
|
||||
++ lib.optionals openGLSupport [ mesa libepoxy libdrm ]
|
||||
++ lib.optionals rutabagaSupport [ rutabaga_gfx ]
|
||||
++ lib.optionals virglSupport [ virglrenderer ]
|
||||
++ lib.optionals libiscsiSupport [ libiscsi ]
|
||||
++ lib.optionals smbdSupport [ samba ]
|
||||
|
@ -133,6 +135,11 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
sha256 = "sha256-oC+bRjEHixv1QEFO9XAm4HHOwoiT+NkhknKGPydnZ5E=";
|
||||
revert = true;
|
||||
})
|
||||
# Fix display issues when using virtio-gpu on 8.2.0 https://gitlab.com/qemu-project/qemu/-/issues/2051
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/9d5b42beb6978dc6219d5dc029c9d453c6b8d503.diff";
|
||||
sha256 = "sha256-NknkH/gFTsMcdq8/ArwM4+qrpU+ZHd+xVMFUuMJTtf0=";
|
||||
})
|
||||
]
|
||||
++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
, pango
|
||||
, pciutils
|
||||
, systemd
|
||||
, tomlplusplus
|
||||
, udis86
|
||||
, wayland
|
||||
, wayland-protocols
|
||||
|
@ -42,13 +43,13 @@ assert lib.assertMsg (!enableNvidiaPatches) "The option `enableNvidiaPatches` ha
|
|||
assert lib.assertMsg (!hidpiXWayland) "The option `hidpiXWayland` has been removed. Please refer https://wiki.hyprland.org/Configuring/XWayland";
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "hyprland" + lib.optionalString debug "-debug";
|
||||
version = "0.33.1";
|
||||
version = "0.34.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hyprwm";
|
||||
repo = finalAttrs.pname;
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-p7el5oQZPy9l1zyIrlHu6nA4BAu59eLoSqBjhkw2jaw=";
|
||||
hash = "sha256-WSrjBI3k2dM/kGF20At0E6NlrJSB4+pE+WGJ6dFzWEs=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -66,6 +67,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
--replace "@HASH@" '${finalAttrs.src.rev}' \
|
||||
--replace "@BRANCH@" "" \
|
||||
--replace "@MESSAGE@" "" \
|
||||
--replace "@DATE@" "2024-01-01" \
|
||||
--replace "@TAG@" "" \
|
||||
--replace "@DIRTY@" ""
|
||||
'';
|
||||
|
@ -100,6 +102,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
wayland-protocols
|
||||
pango
|
||||
pciutils
|
||||
tomlplusplus
|
||||
wlroots
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isMusl [ libexecinfo ]
|
||||
|
|
|
@ -80,7 +80,7 @@ stdenv.mkDerivation {
|
|||
cp -L "$libblas" $out/lib/libblas${canonicalExtension}
|
||||
chmod +w $out/lib/libblas${canonicalExtension}
|
||||
|
||||
'' + (if stdenv.hostPlatform.parsed.kernel.execFormat.name == "elf" then ''
|
||||
'' + (if stdenv.hostPlatform.isElf then ''
|
||||
patchelf --set-soname libblas${canonicalExtension} $out/lib/libblas${canonicalExtension}
|
||||
patchelf --set-rpath "$(patchelf --print-rpath $out/lib/libblas${canonicalExtension}):${lib.getLib blasProvider'}/lib" $out/lib/libblas${canonicalExtension}
|
||||
'' else lib.optionalString (stdenv.hostPlatform.isDarwin) ''
|
||||
|
@ -112,7 +112,7 @@ EOF
|
|||
cp -L "$libcblas" $out/lib/libcblas${canonicalExtension}
|
||||
chmod +w $out/lib/libcblas${canonicalExtension}
|
||||
|
||||
'' + (if stdenv.hostPlatform.parsed.kernel.execFormat.name == "elf" then ''
|
||||
'' + (if stdenv.hostPlatform.isElf then ''
|
||||
patchelf --set-soname libcblas${canonicalExtension} $out/lib/libcblas${canonicalExtension}
|
||||
patchelf --set-rpath "$(patchelf --print-rpath $out/lib/libcblas${canonicalExtension}):${lib.getLib blasProvider'}/lib" $out/lib/libcblas${canonicalExtension}
|
||||
'' else lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
|
|
|
@ -57,7 +57,7 @@ stdenv.mkDerivation {
|
|||
cp -L "$liblapack" $out/lib/liblapack${canonicalExtension}
|
||||
chmod +w $out/lib/liblapack${canonicalExtension}
|
||||
|
||||
'' + (lib.optionalString (stdenv.hostPlatform.parsed.kernel.execFormat.name == "elf") ''
|
||||
'' + (lib.optionalString stdenv.hostPlatform.isElf ''
|
||||
patchelf --set-soname liblapack${canonicalExtension} $out/lib/liblapack${canonicalExtension}
|
||||
patchelf --set-rpath "$(patchelf --print-rpath $out/lib/liblapack${canonicalExtension}):${lapackProvider'}/lib" $out/lib/liblapack${canonicalExtension}
|
||||
'') + ''
|
||||
|
@ -86,7 +86,7 @@ EOF
|
|||
cp -L "$liblapacke" $out/lib/liblapacke${canonicalExtension}
|
||||
chmod +w $out/lib/liblapacke${canonicalExtension}
|
||||
|
||||
'' + (lib.optionalString (stdenv.hostPlatform.parsed.kernel.execFormat.name == "elf") ''
|
||||
'' + (lib.optionalString stdenv.hostPlatform.isElf ''
|
||||
patchelf --set-soname liblapacke${canonicalExtension} $out/lib/liblapacke${canonicalExtension}
|
||||
patchelf --set-rpath "$(patchelf --print-rpath $out/lib/liblapacke${canonicalExtension}):${lib.getLib lapackProvider'}/lib" $out/lib/liblapacke${canonicalExtension}
|
||||
'') + ''
|
||||
|
|
|
@ -191,7 +191,21 @@ let
|
|||
# sddm places XAUTHORITY in /tmp
|
||||
if [[ "$XAUTHORITY" == /tmp/* ]]; then
|
||||
x11_args+=(--ro-bind-try "$XAUTHORITY" "$XAUTHORITY")
|
||||
fi''}
|
||||
fi
|
||||
|
||||
# dbus-run-session puts the socket in /tmp
|
||||
IFS=";" read -ra addrs <<<"$DBUS_SESSION_BUS_ADDRESS"
|
||||
for addr in "''${addrs[@]}"; do
|
||||
[[ "$addr" == unix:* ]] || continue
|
||||
IFS="," read -ra parts <<<"''${addr#unix:}"
|
||||
for part in "''${parts[@]}"; do
|
||||
printf -v part '%s' "''${part//\\/\\\\}"
|
||||
printf -v part '%b' "''${part//%/\\x}"
|
||||
[[ "$part" == path=/tmp/* ]] || continue
|
||||
x11_args+=(--ro-bind-try "''${part#path=}" "''${part#path=}")
|
||||
done
|
||||
done
|
||||
''}
|
||||
|
||||
cmd=(
|
||||
${bubblewrap}/bin/bwrap
|
||||
|
|
|
@ -1,40 +1,53 @@
|
|||
{ pkgs }:
|
||||
{ lib
|
||||
, buildPackages
|
||||
}:
|
||||
|
||||
let
|
||||
# rudimentary support for cross-compiling
|
||||
# see: https://github.com/NixOS/nixpkgs/pull/279487#discussion_r1444449726
|
||||
inherit (buildPackages)
|
||||
mktemp
|
||||
rsync
|
||||
;
|
||||
in
|
||||
|
||||
rec {
|
||||
/* Prepare a derivation for local builds.
|
||||
*
|
||||
* This function prepares checkpoint builds by provinding,
|
||||
* containing the build output and the sources for cross checking.
|
||||
* This function prepares checkpoint builds by storing
|
||||
* the build output and the sources for cross checking.
|
||||
* The build output can be used later to allow checkpoint builds
|
||||
* by passing the derivation output to the `mkCheckpointBuild` function.
|
||||
*
|
||||
* To build a project with checkpoints follow these steps:
|
||||
* - run prepareIncrementalBuild on the desired derivation
|
||||
* e.G `incrementalBuildArtifacts = (pkgs.checkpointBuildTools.prepareCheckpointBuild pkgs.virtualbox);`
|
||||
* - change something you want in the sources of the package( e.G using source override)
|
||||
* changedVBox = pkgs.virtuabox.overrideAttrs (old: {
|
||||
* src = path/to/vbox/sources;
|
||||
* }
|
||||
* - use `mkCheckpointedBuild changedVBox buildOutput`
|
||||
* To build a project with checkpoints, follow these steps:
|
||||
* - run `prepareCheckpointBuild` on the desired derivation, e.g.
|
||||
* checkpointArtifacts = prepareCheckpointBuild virtualbox;
|
||||
* - change something you want in the sources of the package,
|
||||
* e.g. using source override:
|
||||
* changedVBox = pkgs.virtuabox.overrideAttrs (old: {
|
||||
* src = path/to/vbox/sources;
|
||||
* };
|
||||
* - use `mkCheckpointBuild changedVBox checkpointArtifacts`
|
||||
* - enjoy shorter build times
|
||||
*/
|
||||
prepareCheckpointBuild = drv: drv.overrideAttrs (old: {
|
||||
outputs = [ "out" ];
|
||||
name = drv.name + "-checkpointArtifacts";
|
||||
# To determine differences between the state of the build directory
|
||||
# from an earlier build and a later one we store the state of the build
|
||||
# from an earlier build and a later one we store the state of the build
|
||||
# directory before build, but after patch phases.
|
||||
# This way, the same derivation can be used multiple times and only changes are detected.
|
||||
# Additionally Removed files are handled correctly in later builds.
|
||||
# Additionally, removed files are handled correctly in later builds.
|
||||
preBuild = (old.preBuild or "") + ''
|
||||
mkdir -p $out/sources
|
||||
cp -r ./* $out/sources/
|
||||
'';
|
||||
|
||||
# After the build the build directory is copied again
|
||||
# After the build, the build directory is copied again
|
||||
# to get the output files.
|
||||
# We copy the complete build folder, to take care for
|
||||
# Build tools, building in the source directory, instead of
|
||||
# having a build root directory, e.G the Linux kernel.
|
||||
# We copy the complete build folder, to take care of
|
||||
# build tools that build in the source directory, instead of
|
||||
# having a separate build directory such as the Linux kernel.
|
||||
installPhase = ''
|
||||
runHook preCheckpointInstall
|
||||
mkdir -p $out/outputs
|
||||
|
@ -44,26 +57,34 @@ rec {
|
|||
});
|
||||
|
||||
/* Build a derivation based on the checkpoint output generated by
|
||||
* the `prepareCheckpointBuild function.
|
||||
* the `prepareCheckpointBuild` function.
|
||||
*
|
||||
* Usage:
|
||||
* let
|
||||
* checkpointArtifacts = prepareCheckpointBuild drv
|
||||
* in mkCheckpointedBuild drv checkpointArtifacts
|
||||
* checkpointArtifacts = prepareCheckpointBuild drv;
|
||||
* in mkCheckpointBuild drv checkpointArtifacts
|
||||
*/
|
||||
mkCheckpointedBuild = drv: previousBuildArtifacts: drv.overrideAttrs (old: {
|
||||
mkCheckpointBuild = drv: checkpointArtifacts: drv.overrideAttrs (old: {
|
||||
# The actual checkpoint build phase.
|
||||
# We compare the changed sources from a previous build with the current and create a patch
|
||||
# Afterwards we clean the build directory to copy the previous output files (Including the sources)
|
||||
# The source difference patch is applied to get the latest changes again to allow short build times.
|
||||
# We compare the changed sources from a previous build with the current and create a patch.
|
||||
# Afterwards we clean the build directory and copy the previous output files (including the sources).
|
||||
# The source difference patch is then applied to get the latest changes again to allow short build times.
|
||||
preBuild = (old.preBuild or "") + ''
|
||||
set +e
|
||||
diff -ur ${previousBuildArtifacts}/sources ./ > sourceDifference.patch
|
||||
sourceDifferencePatchFile=$(${mktemp}/bin/mktemp)
|
||||
diff -ur ${checkpointArtifacts}/sources ./ > "$sourceDifferencePatchFile"
|
||||
set -e
|
||||
shopt -s extglob dotglob
|
||||
rm -r !("sourceDifference.patch")
|
||||
${pkgs.rsync}/bin/rsync -cutU --chown=$USER:$USER --chmod=+w -r ${previousBuildArtifacts}/outputs/* .
|
||||
patch -p 1 -i sourceDifference.patch
|
||||
shopt -s dotglob
|
||||
rm -r *
|
||||
${rsync}/bin/rsync \
|
||||
--checksum --times --atimes --chown=$USER:$USER --chmod=+w \
|
||||
-r ${checkpointArtifacts}/outputs/ .
|
||||
patch -p 1 -i "$sourceDifferencePatchFile"
|
||||
rm "$sourceDifferencePatchFile"
|
||||
'';
|
||||
});
|
||||
|
||||
mkCheckpointedBuild = lib.warn
|
||||
"`mkCheckpointedBuild` is deprecated, use `mkCheckpointBuild` instead!"
|
||||
mkCheckpointBuild;
|
||||
}
|
||||
|
|
|
@ -14,16 +14,16 @@ let
|
|||
in
|
||||
buildGoModule rec {
|
||||
pname = "centrifugo";
|
||||
version = "5.1.2";
|
||||
version = "5.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "centrifugal";
|
||||
repo = "centrifugo";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-p0OUzbI5ldl0XBU80nrgK1rfYc11Sij2S2ibfp9xmZ4=";
|
||||
hash = "sha256-lD7hUCXHH1nUN58rbn/p8BnVahEwF/jKrAtjwuXB4PM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-/uWFkLk2RTtGK4CWKZF52jgRHrh5mZLSUoVoe4cUhgk=";
|
||||
vendorHash = "sha256-s92P4PoYN2/L7pwGT0d/0E/KUNR1GT9DUhtHjAncNf4=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
, SDL2_net
|
||||
, alsa-lib
|
||||
, copyDesktopItems
|
||||
, darwin
|
||||
, fluidsynth
|
||||
, glib
|
||||
, gtest
|
||||
|
@ -57,6 +58,39 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
hash = "sha256-WtTVSWWSlfXrdPVsnlDe4P5K/Fnj4QsOzx3Wo/Kusmg=";
|
||||
includes = [ "src/gui/meson.build" ];
|
||||
})
|
||||
]
|
||||
# Pagesize detection via syscall; remove when next stable version arrives
|
||||
++ [
|
||||
(fetchpatch {
|
||||
# Added as a parent commit of 7e20f6e
|
||||
# Fix ppc64le backend and 64K page size support (#2828)
|
||||
name = "meson-add-ppc64.patch";
|
||||
url = "https://github.com/dosbox-staging/dosbox-staging/commit/765bcc2b1d87050a4ea366bf22e1db075ad5660b.patch";
|
||||
hash = "sha256-RtkidyF7w6RrPmCKK4Bd+3FtAn/+/38xk2cl32+yzxw=";
|
||||
includes = [ "meson.build" ];
|
||||
})
|
||||
(fetchpatch {
|
||||
# Added as a parent commit of 7e20f6e
|
||||
# Account for debian powerpc prefix (instead of ppc)
|
||||
name = "meson-powerpc64le.patch";
|
||||
url = "https://github.com/dosbox-staging/dosbox-staging/commit/d44aa7441cd871ffac08974f22af7a735a839288.patch";
|
||||
hash = "sha256-oMZtfmB1CRlDWyXwEWc3XzC+XxKazXDgo+jUiNBoJDw=";
|
||||
includes = [ "meson.build" ];
|
||||
})
|
||||
(fetchpatch {
|
||||
# Added as a parent commit of 7e20f6e
|
||||
# Restore the PowerPC dynrec core to working order
|
||||
name = "meson-option-write-or-execute.patch";
|
||||
url = "https://github.com/dosbox-staging/dosbox-staging/commit/ef86642de390839afc77b2b591a6ea9ac43909b3.patch";
|
||||
hash = "sha256-htOKEaXRRy28XNMX/t6uFTBLCkTr7YPtfmI9UyIBiz4=";
|
||||
includes = [ "meson_options.txt" ];
|
||||
})
|
||||
(fetchpatch {
|
||||
# Use a system call to detect the page size
|
||||
name = "meson-detect-pagesize-by-syscall.patch";
|
||||
url = "https://github.com/dosbox-staging/dosbox-staging/commit/7e20f6e401956a7a308f1b3462294d7ac9fa5db8.patch";
|
||||
hash = "sha256-QW9lpHWCYSlQFgTqX/UxHAAWisz4wfPrdjLqROn/wR0=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -69,7 +103,6 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
];
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
fluidsynth
|
||||
glib
|
||||
iir1
|
||||
|
@ -87,7 +120,13 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
SDL2_image
|
||||
SDL2_net
|
||||
speexdsp
|
||||
];
|
||||
] ++ lib.optionals stdenv.isLinux [
|
||||
alsa-lib
|
||||
] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
|
||||
AudioUnit
|
||||
Carbon
|
||||
Cocoa
|
||||
]);
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
|
|
13
pkgs/by-name/ed/eduvpn-client/nix-python-prefix.patch
Normal file
13
pkgs/by-name/ed/eduvpn-client/nix-python-prefix.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
diff --git a/eduvpn/utils.py b/eduvpn/utils.py
|
||||
index db0bf0c..76fc52a 100644
|
||||
--- a/eduvpn/utils.py
|
||||
+++ b/eduvpn/utils.py
|
||||
@@ -69,7 +69,7 @@ def get_prefix() -> str:
|
||||
"""
|
||||
target = "share/eduvpn/builder/mainwindow.ui"
|
||||
local = path.dirname(path.dirname(path.abspath(__file__)))
|
||||
- options = [local, path.expanduser("~/.local"), "/usr/local", prefix]
|
||||
+ options = ["@out@"]
|
||||
for option in options:
|
||||
logger.debug(f"looking for '{target}' in '{option}'")
|
||||
if path.isfile(path.join(option, target)):
|
60
pkgs/by-name/ed/eduvpn-client/package.nix
Normal file
60
pkgs/by-name/ed/eduvpn-client/package.nix
Normal file
|
@ -0,0 +1,60 @@
|
|||
{ lib
|
||||
, fetchurl
|
||||
, gdk-pixbuf
|
||||
, gobject-introspection
|
||||
, gtk3
|
||||
, libnotify
|
||||
, libsecret
|
||||
, networkmanager
|
||||
, python3Packages
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "eduvpn-client";
|
||||
version = "4.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/eduvpn/python-${pname}/releases/download/${version}/python-${pname}-${version}.tar.xz";
|
||||
hash = "sha256-W5z0ykrwWANZmW+lQt6m+BmYPI0cutsamx8V2JrpeHA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
gdk-pixbuf
|
||||
gobject-introspection
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
libnotify
|
||||
libsecret
|
||||
networkmanager
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
eduvpn-common
|
||||
pygobject3
|
||||
setuptools
|
||||
];
|
||||
|
||||
patches = [ ./nix-python-prefix.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace eduvpn/utils.py --subst-var-by out $out
|
||||
'';
|
||||
|
||||
checkInputs = with python3Packages; [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://raw.githubusercontent.com/eduvpn/python-eduvpn-client/${version}/CHANGES.md";
|
||||
description = "Linux client for eduVPN";
|
||||
homepage = "https://github.com/eduvpn/python-eduvpn-client";
|
||||
license = licenses.gpl3Plus;
|
||||
mainProgram = "eduvpn-gui";
|
||||
maintainers = with maintainers; [ benneti jwijenbergh ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
24
pkgs/by-name/fi/fileinfo/package.nix
Normal file
24
pkgs/by-name/fi/fileinfo/package.nix
Normal file
|
@ -0,0 +1,24 @@
|
|||
{ lib
|
||||
, python3Packages
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
python3Packages.buildPythonApplication {
|
||||
pname = "fileinfo";
|
||||
version = "unstable-2022-09-16";
|
||||
src = fetchFromGitHub {
|
||||
owner = "sdushantha";
|
||||
repo = "fileinfo";
|
||||
rev = "503f26189ad5043bad3fe71333dd5ba3ffbce485";
|
||||
hash = "sha256-tEmCsR3LmTxeDZAbMvbIwqp/6uaGNUhgGlm18gdsnOw=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [ requests ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/sdushantha/fileinfo";
|
||||
description = "A file extension metadata lookup tool";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ h7x4 ];
|
||||
mainProgram = "fileinfo";
|
||||
};
|
||||
}
|
51
pkgs/by-name/gt/gtkclipblock/package.nix
Normal file
51
pkgs/by-name/gt/gtkclipblock/package.nix
Normal file
|
@ -0,0 +1,51 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, meson
|
||||
, cmake
|
||||
, ninja
|
||||
, pkg-config
|
||||
, gtk2
|
||||
, gtk3
|
||||
, gtk4
|
||||
}:
|
||||
|
||||
let
|
||||
distorm-src = fetchFromGitHub {
|
||||
owner = "gdabah";
|
||||
repo = "distorm";
|
||||
rev = "3.5.2b";
|
||||
hash = "sha256-2ftEV3TMS3HT7f96k+Pwt3Mm31fVEXcHpcbbz05jycU=";
|
||||
};
|
||||
pname = "gtkclipblock";
|
||||
version = "0.2.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "notpeelz";
|
||||
repo = "gtkclipblock";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ok/D7M0KekN8zf8AzhcOLtedbYVRHHv3m9zEHsJfcPM=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit pname version src;
|
||||
|
||||
nativeBuildInputs = [ meson cmake ninja pkg-config ];
|
||||
|
||||
buildInputs = [ gtk2 gtk3 gtk4 ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace subprojects/funchook-helper/subprojects/funchook/CMakeLists.txt \
|
||||
--replace "GIT_REPOSITORY https://github.com/gdabah/distorm.git" "SOURCE_DIR ${distorm-src}"
|
||||
'';
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A LD_PRELOAD hack to prevent GTK programs from interacting with the primary clipboard";
|
||||
license = licenses.lgpl3Only;
|
||||
maintainers = with maintainers; [ uartman ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
|
@ -4,25 +4,26 @@
|
|||
, cmake
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "iir1";
|
||||
version = "1.9.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "berndporr";
|
||||
repo = "iir1";
|
||||
rev = version;
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-T8gl51IkZIGq+6D5ge4Kb3wm5aw7Rhphmnf6TTGwHbs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://berndporr.github.io/iir1/";
|
||||
description = "A DSP IIR realtime filter library written in C++";
|
||||
downloadPage = "https://github.com/berndporr/iir1";
|
||||
homepage = "http://berndporr.github.io/iir1/";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.AndersonTorres ];
|
||||
changelog = "https://github.com/berndporr/iir1/releases/tag/${finalAttrs.src.rev}";
|
||||
license = with lib.licenses; [ mit ];
|
||||
maintainers = with lib.maintainers; [ AndersonTorres ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
})
|
29
pkgs/by-name/ka/kas/package.nix
Normal file
29
pkgs/by-name/ka/kas/package.nix
Normal file
|
@ -0,0 +1,29 @@
|
|||
{ lib, fetchFromGitHub, python3, testers, kas }:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "kas";
|
||||
version = "4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "siemens";
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-EYz9V45b7fSKoI8w9X0LcSTojErpJHfzxcdE4I4qD2k=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [ setuptools kconfiglib jsonschema distro pyyaml ];
|
||||
|
||||
# Tests require network as they try to clone repos
|
||||
doCheck = false;
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = kas;
|
||||
command = "${pname} --version";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/siemens/kas";
|
||||
description = "Setup tool for bitbake based projects";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ bachp ];
|
||||
};
|
||||
}
|
|
@ -70,6 +70,10 @@ stdenv.mkDerivation (finalAttrs: {
|
|||
(lib.mesonEnable "xwayland" true)
|
||||
];
|
||||
|
||||
passthru = {
|
||||
providedSessions = [ "labwc" ];
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/labwc/labwc";
|
||||
description = "A Wayland stacking compositor, inspired by Openbox";
|
||||
|
|
37
pkgs/by-name/li/libeduvpn-common/package.nix
Normal file
37
pkgs/by-name/li/libeduvpn-common/package.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{ lib
|
||||
, buildGoModule
|
||||
, fetchurl
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "libeduvpn-common";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/eduvpn/eduvpn-common/releases/download/${version}/eduvpn-common-${version}.tar.xz";
|
||||
hash = "sha256-CqpOgvGGD6pW03fvKUzgoeCz6YgnzuYK2u5Zbw+/Ks4=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
go build -o ${pname}-${version}.so -buildmode=c-shared -tags=release ./exports
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
install -Dt $out/lib ${pname}-${version}.so
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://raw.githubusercontent.com/eduvpn/eduvpn-common/${version}/CHANGES.md";
|
||||
description = "Code to be shared between eduVPN clients";
|
||||
homepage = "https://github.com/eduvpn/eduvpn-common";
|
||||
maintainers = with maintainers; [ benneti jwijenbergh ];
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
41
pkgs/by-name/li/libvpl/package.nix
Normal file
41
pkgs/by-name/li/libvpl/package.nix
Normal file
|
@ -0,0 +1,41 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, pkg-config
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libvpl";
|
||||
version = "2.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "intel";
|
||||
repo = finalAttrs.pname;
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-2yfJo4iwI/h0CJ+mJJ3cAyG5S7KksUibwJHebF3MR+E=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DENABLE_DRI3=ON"
|
||||
"-DENABLE_DRM=ON"
|
||||
"-DENABLE_VA=ON"
|
||||
"-DENABLE_WAYLAND=ON"
|
||||
"-DENABLE_X11=ON"
|
||||
"-DINSTALL_EXAMPLE_CODE=OFF"
|
||||
"-DBUILD_TOOLS=OFF"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Intel Video Processing Library";
|
||||
homepage = "https://intel.github.io/libvpl/";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
})
|
37
pkgs/by-name/nc/ncdc/package.nix
Normal file
37
pkgs/by-name/nc/ncdc/package.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, ncurses
|
||||
, zlib
|
||||
, bzip2
|
||||
, sqlite
|
||||
, pkg-config
|
||||
, glib
|
||||
, gnutls
|
||||
, perl
|
||||
, libmaxminddb
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ncdc";
|
||||
version = "1.24";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://dev.yorhel.nl/download/ncdc-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-IzUQ1TVfxy/a01eOvIqzXR2pWyHSd0mQ86E1a3ES2h4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ perl pkg-config ];
|
||||
buildInputs = [ ncurses zlib bzip2 sqlite glib gnutls libmaxminddb ];
|
||||
|
||||
configureFlags = [ "--with-geoip" ];
|
||||
|
||||
meta = {
|
||||
changelog = "https://dev.yorhel.nl/ncdc/changes";
|
||||
description = "Modern and lightweight direct connect client with a friendly ncurses interface";
|
||||
homepage = "https://dev.yorhel.nl/ncdc";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ ehmry ];
|
||||
mainProgram = "ncdc";
|
||||
};
|
||||
})
|
32
pkgs/by-name/qr/qrcodegencpp/package.nix
Normal file
32
pkgs/by-name/qr/qrcodegencpp/package.nix
Normal file
|
@ -0,0 +1,32 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, qrcodegen
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "qrcodegencpp";
|
||||
version = qrcodegen.version;
|
||||
|
||||
src = qrcodegen.src;
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/cpp";
|
||||
|
||||
nativeBuildInputs = lib.optionals stdenv.cc.isClang [
|
||||
stdenv.cc.cc.libllvm.out
|
||||
];
|
||||
|
||||
makeFlags = lib.optionals stdenv.cc.isClang [ "AR=llvm-ar" ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dt $out/lib/ libqrcodegencpp.a
|
||||
install -Dt $out/include/qrcodegen/ qrcodegen.hpp
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
inherit (qrcodegen.meta) description homepage license maintainers platforms;
|
||||
};
|
||||
})
|
|
@ -6,14 +6,14 @@
|
|||
|
||||
python3.pkgs.buildPythonApplication {
|
||||
pname = "renode-dts2repl";
|
||||
version = "unstable-2024-01-06";
|
||||
version = "unstable-2024-01-09";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "antmicro";
|
||||
repo = "dts2repl";
|
||||
rev = "0813251eb3c016fc7688c1e81981213d980fc5ab";
|
||||
hash = "sha256-2EePYirk3IKFaJSiWVebB9Moz6FYBEwymo32NYIyMtE=";
|
||||
rev = "429ebc65e0bcbd967ccfe1f9a970abd5b5b6258f";
|
||||
hash = "sha256-/62KAVIMCM6VNhW4rDqnKXOFrAO0cHpybGS3lconCqY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
|
|||
cmake
|
||||
gfortran
|
||||
pkg-config
|
||||
];
|
||||
] ++ lib.optional (gpuBackend == "cuda") cudaPackages.cuda_nvcc;
|
||||
|
||||
buildInputs = [
|
||||
blas
|
||||
|
@ -72,8 +72,12 @@ stdenv.mkDerivation rec {
|
|||
eigen
|
||||
libvdwxc
|
||||
]
|
||||
++ lib.optional (gpuBackend == "cuda") cudaPackages.cudatoolkit
|
||||
++ lib.optionals (gpuBackend == "rocm") [
|
||||
++ lib.optionals (gpuBackend == "cuda") [
|
||||
cudaPackages.cuda_cudart
|
||||
cudaPackages.cuda_profiler_api
|
||||
cudaPackages.cudatoolkit
|
||||
cudaPackages.libcublas
|
||||
] ++ lib.optionals (gpuBackend == "rocm") [
|
||||
rocmPackages.clr
|
||||
rocmPackages.rocblas
|
||||
] ++ lib.optional stdenv.isDarwin llvmPackages.openmp
|
||||
|
|
|
@ -34,13 +34,14 @@ stdenv.mkDerivation rec {
|
|||
nativeBuildInputs = [
|
||||
cmake
|
||||
gfortran
|
||||
];
|
||||
] ++ lib.optional (gpuBackend == "cuda") cudaPackages.cuda_nvcc;
|
||||
|
||||
buildInputs = [
|
||||
fftw
|
||||
]
|
||||
++ lib.optional (gpuBackend == "cuda") cudaPackages.cudatoolkit
|
||||
++ lib.optionals (gpuBackend == "rocm") [
|
||||
] ++ lib.optionals (gpuBackend == "cuda") [
|
||||
cudaPackages.libcufft
|
||||
cudaPackages.cuda_cudart
|
||||
] ++ lib.optionals (gpuBackend == "rocm") [
|
||||
rocmPackages.clr
|
||||
rocmPackages.rocfft
|
||||
rocmPackages.hipfft
|
||||
|
|
|
@ -7,13 +7,13 @@
|
|||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "sx";
|
||||
version = "2.1.7";
|
||||
version = "3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "earnestly";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0xv15m30nhcknasqiybj5wwf7l91q4a4jf6xind8x5x00c6br6nl";
|
||||
hash = "sha256-hKoz7Kuus8Yp7D0F05wCOQs6BvV0NkRM9uUXTntLJxQ=";
|
||||
};
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
|
@ -33,8 +33,8 @@ stdenvNoCC.mkDerivation rec {
|
|||
description = "Simple alternative to both xinit and startx for starting a Xorg server";
|
||||
homepage = "https://github.com/earnestly/sx";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ figsoda thiagokokada ];
|
||||
mainProgram = "sx";
|
||||
maintainers = with maintainers; [ figsoda thiagokokada ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
4910
pkgs/by-name/tr/treedome/Cargo.lock
generated
Normal file
4910
pkgs/by-name/tr/treedome/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load diff
68
pkgs/by-name/tr/treedome/package.json
Normal file
68
pkgs/by-name/tr/treedome/package.json
Normal file
|
@ -0,0 +1,68 @@
|
|||
{
|
||||
"name": "treedome",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "tsc && vite build",
|
||||
"preview": "vite preview",
|
||||
"tauri": "tauri",
|
||||
"clean": "rm -rf node_modules",
|
||||
"prettier-format": "prettier --config .prettierrc 'src/**/*.ts*' --write"
|
||||
},
|
||||
"resolutions": {
|
||||
"@types/react": "^17.0.1",
|
||||
"@types/react-dom": "^17.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@emotion/react": "^11.11.1",
|
||||
"@emotion/styled": "^11.11.0",
|
||||
"@fontsource/noto-sans": "^5.0.8",
|
||||
"@fontsource/noto-sans-mono": "^5.0.8",
|
||||
"@leeoniya/ufuzzy": "^1.0.8",
|
||||
"@mantine/core": "^6.0.16",
|
||||
"@mantine/form": "^6.0.16",
|
||||
"@mantine/hooks": "^6.0.16",
|
||||
"@mantine/modals": "^6.0.16",
|
||||
"@mantine/notifications": "^6.0.16",
|
||||
"@mantine/spotlight": "^6.0.17",
|
||||
"@mantine/tiptap": "^6.0.16",
|
||||
"@minoru/react-dnd-treeview": "^3.4.4",
|
||||
"@mui/icons-material": "^5.14.0",
|
||||
"@mui/material": "^5.14.0",
|
||||
"@tabler/icons-react": "^2.28.0",
|
||||
"@tauri-apps/api": "^1.4.0",
|
||||
"@tiptap/extension-code-block-lowlight": "^2.0.4",
|
||||
"@tiptap/extension-highlight": "^2.0.4",
|
||||
"@tiptap/extension-image": "^2.0.4",
|
||||
"@tiptap/extension-link": "^2.0.4",
|
||||
"@tiptap/extension-placeholder": "^2.0.4",
|
||||
"@tiptap/extension-subscript": "^2.0.4",
|
||||
"@tiptap/extension-superscript": "^2.0.4",
|
||||
"@tiptap/extension-text-align": "^2.0.4",
|
||||
"@tiptap/extension-underline": "^2.0.4",
|
||||
"@tiptap/pm": "^2.0.4",
|
||||
"@tiptap/react": "^2.0.4",
|
||||
"@tiptap/starter-kit": "^2.0.4",
|
||||
"@types/lodash": "^4.14.195",
|
||||
"jotai": "^2.2.2",
|
||||
"lodash": "^4.17.21",
|
||||
"lowlight": "^2.9.0",
|
||||
"rc-tree": "^5.7.8",
|
||||
"react": "^18.2.0",
|
||||
"react-dnd": "^16.0.1",
|
||||
"react-dom": "^18.2.0",
|
||||
"wouter": "^2.11.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tauri-apps/cli": "^1.4.0",
|
||||
"@types/node": "^20.4.4",
|
||||
"@types/react": "^18.2.15",
|
||||
"@types/react-dom": "^18.2.7",
|
||||
"@vitejs/plugin-react": "^4.0.3",
|
||||
"prettier": "^3.0.0",
|
||||
"typescript": "^5.1.6",
|
||||
"vite": "^4.4.6"
|
||||
}
|
||||
}
|
144
pkgs/by-name/tr/treedome/package.nix
Normal file
144
pkgs/by-name/tr/treedome/package.nix
Normal file
|
@ -0,0 +1,144 @@
|
|||
{ lib
|
||||
, cargo-tauri
|
||||
, cmake
|
||||
, dbus
|
||||
, fetchFromGitea
|
||||
, fetchYarnDeps
|
||||
, freetype
|
||||
, gsettings-desktop-schemas
|
||||
, gtk3
|
||||
, libsoup
|
||||
, mkYarnPackage
|
||||
, openssl
|
||||
, pkg-config
|
||||
, rustPlatform
|
||||
, webkitgtk
|
||||
, wrapGAppsHook
|
||||
, sqlite
|
||||
}:
|
||||
|
||||
let
|
||||
pname = "treedome";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "solver-orgz";
|
||||
repo = "treedome";
|
||||
rev = version;
|
||||
sha256 = "sha256-492EAKCXyc4s9FvkpqppZ/GllYuYe0YsXgbRl/oQBgE=";
|
||||
};
|
||||
|
||||
frontend-build = mkYarnPackage {
|
||||
inherit version src;
|
||||
pname = "treedome-ui";
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
yarnLock = "${src}/yarn.lock";
|
||||
sha256 = "sha256-rV5jKKnbMutaG5o8gRKgs/uoKwbIkxAPIcx6VWG7mm4=";
|
||||
};
|
||||
|
||||
packageJSON = ./package.json;
|
||||
|
||||
configurePhase = ''
|
||||
ln -s $node_modules node_modules
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
export HOME=$(mktemp -d)
|
||||
yarn --offline run build
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/dist
|
||||
cp -r dist/** $out/dist
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
doDist = false;
|
||||
};
|
||||
in
|
||||
rustPlatform.buildRustPackage {
|
||||
inherit version pname src;
|
||||
sourceRoot = "${src.name}/src-tauri";
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"fix-path-env-0.0.0" = "sha256-ewE3CwqLC8dvi94UrQsWbp0mjmrzEJIGPDYtdmQ/sGs=";
|
||||
};
|
||||
};
|
||||
|
||||
preConfigure = ''
|
||||
mkdir -p dist
|
||||
cp -R ${frontend-build}/dist/** dist
|
||||
'';
|
||||
|
||||
# copy the frontend static resources to final build directory
|
||||
# Also modify tauri.conf.json so that it expects the resources at the new location
|
||||
postPatch = ''
|
||||
substituteInPlace ./tauri.conf.json \
|
||||
--replace '"distDir": "../dist",' '"distDir": "dist",' \
|
||||
--replace '"beforeBuildCommand": "yarn run build",' '"beforeBuildCommand": "",'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
cargo-tauri
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dbus
|
||||
openssl
|
||||
freetype
|
||||
libsoup
|
||||
gtk3
|
||||
webkitgtk
|
||||
gsettings-desktop-schemas
|
||||
sqlite
|
||||
];
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
cargo tauri build
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin/
|
||||
mkdir -p $out/share/
|
||||
|
||||
cp target/release/bundle/deb/treedome_0.0.0_amd64/data/usr/bin/treedome $out/bin/treedome
|
||||
cp -R target/release/bundle/deb/treedome_0.0.0_amd64/data/usr/share/** $out/share/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
# WEBKIT_DISABLE_COMPOSITING_MODE essential in NVIDIA + compositor https://github.com/NixOS/nixpkgs/issues/212064#issuecomment-1400202079
|
||||
postFixup = ''
|
||||
wrapProgram "$out/bin/treedome" \
|
||||
--set WEBKIT_DISABLE_COMPOSITING_MODE 1
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A local-first, encrypted, note taking application with tree-like structures, all written and saved in markdown";
|
||||
homepage = " https://codeberg.org/solver-orgz/treedome";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = [ "x86_64-linux" ];
|
||||
mainProgram = "treedome";
|
||||
maintainers = with maintainers; [ tengkuizdihar ];
|
||||
};
|
||||
}
|
80
pkgs/by-name/we/weasis/package.nix
Normal file
80
pkgs/by-name/we/weasis/package.nix
Normal file
|
@ -0,0 +1,80 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchzip
|
||||
, jre
|
||||
, copyDesktopItems
|
||||
, makeDesktopItem
|
||||
}:
|
||||
|
||||
let
|
||||
throwSystem = throw "Unsupported system: ${stdenv.system}";
|
||||
platform = {
|
||||
"x86_64-linux" = "linux-x86-64";
|
||||
}.${stdenv.system} or throwSystem;
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "weasis";
|
||||
version = "4.2.1";
|
||||
|
||||
# Their build instructions indicate to use the packaging script
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nroduit/Weasis/releases/download/v${version}/weasis-native.zip";
|
||||
hash = "sha256-HDlylpe8cHZRaIXndfGh6XmUn8o2PQB1Av7hLCp679U=";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
copyDesktopItems
|
||||
];
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "DICOMizer";
|
||||
exec = "Dicomizer";
|
||||
icon = "Dicomizer";
|
||||
desktopName = "DICOMizer";
|
||||
comment = "Convert standard images into DICOM";
|
||||
})
|
||||
(makeDesktopItem {
|
||||
name = "Weasis";
|
||||
exec = "Weasis";
|
||||
icon = "Weasis";
|
||||
desktopName = "Weasis";
|
||||
comment = meta.description;
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs ./build/script/package-weasis.sh
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
./build/script/package-weasis.sh --no-installer --jdk ${jre}
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/{applications,pixmaps}
|
||||
|
||||
mv weasis-${platform}-jdk${lib.versions.major jre.version}-${version}/Weasis/* $out/
|
||||
mv $out/lib/*.png $out/share/pixmaps/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Multipurpose standalone and web-based DICOM viewer with a highly modular architecture";
|
||||
homepage = "https://weasis.org";
|
||||
# Using changelog from releases as it is more accurate
|
||||
changelog = "https://github.com/nroduit/Weasis/releases/tag/v${version}";
|
||||
license = with lib.licenses; [ asl20 epl20 ];
|
||||
maintainers = [ lib.maintainers.wolfangaukang ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
mainProgram = "Weasis";
|
||||
};
|
||||
}
|
|
@ -1,14 +1,18 @@
|
|||
{ lib, fetchFromGitHub, stdenvNoCC }:
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, stdenvNoCC
|
||||
, nix-update-script
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "material-design-icons";
|
||||
version = "7.3.67";
|
||||
version = "7.4.47";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Templarian";
|
||||
repo = "MaterialDesign-Webfont";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-gQT+5MqYo1qUiLJTzlhF5dB5BZMtr34JWn9rMa9MJvQ=";
|
||||
sha256 = "sha256-7t3i3nPJZ/tRslLBfY+9kXH8TR145GC2hPFYJeMHRL8=";
|
||||
sparseCheckout = [ "fonts" ];
|
||||
};
|
||||
|
||||
|
@ -24,6 +28,8 @@ stdenvNoCC.mkDerivation rec {
|
|||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "7000+ Material Design Icons from the Community";
|
||||
longDescription = ''
|
||||
|
|
|
@ -1,31 +1,49 @@
|
|||
{ lib, stdenv
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, unzip
|
||||
, jdk8
|
||||
, ant
|
||||
, jdk8
|
||||
, makeWrapper
|
||||
, canonicalize-jars-hook
|
||||
, callPackage
|
||||
}:
|
||||
|
||||
let jre = jdk8.jre; jdk = jdk8; in
|
||||
stdenv.mkDerivation rec {
|
||||
let
|
||||
jdk = jdk8;
|
||||
jre = jdk8.jre;
|
||||
|
||||
in stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "jasmin";
|
||||
version = "2.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/jasmin/jasmin-${version}/jasmin-${version}.zip";
|
||||
sha256 = "17a41vr96glcdrdbk88805wwvv1r6w8wg7if23yhd0n6rrl0r8ga";
|
||||
url = "mirror://sourceforge/jasmin/jasmin-${finalAttrs.version}.zip";
|
||||
hash = "sha256-6qEMaM7Gggb9EC6exxE3OezNeQEIoblabow+k/IORJ0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip jdk ant makeWrapper ];
|
||||
nativeBuildInputs = [
|
||||
unzip
|
||||
ant
|
||||
jdk
|
||||
makeWrapper
|
||||
canonicalize-jars-hook
|
||||
];
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
ant all
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
buildPhase = "ant all";
|
||||
installPhase =
|
||||
''
|
||||
install -Dm644 jasmin.jar $out/share/java/jasmin.jar
|
||||
mkdir -p $out/bin
|
||||
makeWrapper ${jre}/bin/java $out/bin/jasmin \
|
||||
--add-flags "-jar $out/share/java/jasmin.jar"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.tests = {
|
||||
|
@ -34,11 +52,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
description = "An assembler for the Java Virtual Machine";
|
||||
homepage = "https://jasmin.sourceforge.net/";
|
||||
downloadPage = "https://sourceforge.net/projects/jasmin/files/latest/download";
|
||||
homepage = "https://jasmin.sourceforge.net/";
|
||||
license = licenses.bsd3;
|
||||
mainProgram = "jasmin";
|
||||
maintainers = with maintainers; [ fgaz ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
||||
})
|
||||
|
|
|
@ -98,8 +98,7 @@ rustPlatform.buildRustPackage.override {
|
|||
# Disable check phase as there are failures (4 tests fail)
|
||||
doCheck = false;
|
||||
|
||||
doInstallCheck = !stdenv.hostPlatform.isStatic &&
|
||||
stdenv.hostPlatform.parsed.kernel.execFormat == lib.systems.parse.execFormats.elf;
|
||||
doInstallCheck = !stdenv.hostPlatform.isStatic && stdenv.hostPlatform.isElf;
|
||||
installCheckPhase = ''
|
||||
runHook preInstallCheck
|
||||
readelf -a $out/bin/.cargo-wrapped | grep -F 'Shared library: [libcurl.so'
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "9.1.10";
|
||||
version = "9.1.21";
|
||||
packInstall = swiplPath: pack:
|
||||
''${swiplPath}/bin/swipl -g "pack_install(${pack}, [package_directory(\"${swiplPath}/lib/swipl/pack\"), silent(true), interactive(false)])." -t "halt."
|
||||
'';
|
||||
|
@ -47,7 +47,7 @@ stdenv.mkDerivation {
|
|||
owner = "SWI-Prolog";
|
||||
repo = "swipl-devel";
|
||||
rev = "V${version}";
|
||||
sha256 = "sha256-hr9cI0Ww6RfZs99iM1hFVw4sOYZFZWr8Vzv6dognCTQ=";
|
||||
hash = "sha256-c4OSntnwIzo6lGhpyNVtNM4el5FGrn8kcz8WkDRfQhU=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ elfHasDynamicSection() {
|
|||
autoAddCudaCompatRunpathPhase() (
|
||||
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
|
||||
find "${outputPaths[@]}" -type f -print0 | while IFS= read -rd "" f; do
|
||||
if isELF "$f"; then
|
||||
# patchelf returns an error on statically linked ELF files
|
||||
if elfHasDynamicSection "$f" ; then
|
||||
|
|
|
@ -9,7 +9,7 @@ elfHasDynamicSection() {
|
|||
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
|
||||
find "${outputPaths[@]}" -type f -print0 | while IFS= read -rd "" f; do
|
||||
if isELF "$f"; then
|
||||
# patchelf returns an error on statically linked ELF files
|
||||
if elfHasDynamicSection "$f" ; then
|
||||
|
|
|
@ -229,11 +229,7 @@ self: super: builtins.intersectAttrs super {
|
|||
# hledger* overrides
|
||||
inherit (
|
||||
let
|
||||
# Copy hledger man pages from the source tarball into the proper place.
|
||||
# It always contains the relevant man page(s) at the top level. For
|
||||
# hledger it additionally has all the other man pages in embeddedfiles/
|
||||
# which we ignore.
|
||||
installHledgerManPages = overrideCabal (drv: {
|
||||
installHledgerExtraFiles = overrideCabal (drv: {
|
||||
buildTools = drv.buildTools or [] ++ [
|
||||
pkgs.buildPackages.installShellFiles
|
||||
];
|
||||
|
@ -243,6 +239,10 @@ self: super: builtins.intersectAttrs super {
|
|||
done
|
||||
|
||||
install -v -Dm644 *.info* -t "$out/share/info/"
|
||||
|
||||
if [ -e shell-completion/hledger-completion.bash ]; then
|
||||
installShellCompletion --name hledger shell-completion/hledger-completion.bash
|
||||
fi
|
||||
'';
|
||||
});
|
||||
|
||||
|
@ -254,15 +254,15 @@ self: super: builtins.intersectAttrs super {
|
|||
});
|
||||
in
|
||||
{
|
||||
hledger = installHledgerManPages super.hledger;
|
||||
hledger-web = installHledgerManPages (hledgerWebTestFix super.hledger-web);
|
||||
hledger-ui = installHledgerManPages super.hledger-ui;
|
||||
hledger = installHledgerExtraFiles super.hledger;
|
||||
hledger-web = installHledgerExtraFiles (hledgerWebTestFix super.hledger-web);
|
||||
hledger-ui = installHledgerExtraFiles super.hledger-ui;
|
||||
|
||||
hledger_1_30_1 = installHledgerManPages
|
||||
hledger_1_30_1 = installHledgerExtraFiles
|
||||
(doDistribute (super.hledger_1_30_1.override {
|
||||
hledger-lib = self.hledger-lib_1_30;
|
||||
}));
|
||||
hledger-web_1_30 = installHledgerManPages (hledgerWebTestFix
|
||||
hledger-web_1_30 = installHledgerExtraFiles (hledgerWebTestFix
|
||||
(doDistribute (super.hledger-web_1_30.override {
|
||||
hledger = self.hledger_1_30_1;
|
||||
hledger-lib = self.hledger-lib_1_30;
|
||||
|
|
|
@ -125,6 +125,9 @@ let
|
|||
extension = self: super: {
|
||||
foobar = super.numpy;
|
||||
};
|
||||
# `pythonInterpreters.pypy39_prebuilt` does not expose an attribute
|
||||
# name (is not present in top-level `pkgs`).
|
||||
is_prebuilt = python: python.pythonAttr == null;
|
||||
in lib.optionalAttrs (python.isPy3k) ({
|
||||
test-packageOverrides = let
|
||||
myPython = let
|
||||
|
@ -138,7 +141,10 @@ let
|
|||
# test-overrideScope = let
|
||||
# myPackages = python.pkgs.overrideScope extension;
|
||||
# in assert myPackages.foobar == myPackages.numpy; myPackages.python.withPackages(ps: with ps; [ foobar ]);
|
||||
} // lib.optionalAttrs (python ? pythonAttr) {
|
||||
#
|
||||
# Have to skip prebuilt python as it's not present in top-level
|
||||
# `pkgs` as an attribute.
|
||||
} // lib.optionalAttrs (python ? pythonAttr && !is_prebuilt python) {
|
||||
# Test applying overrides using pythonPackagesOverlays.
|
||||
test-pythonPackagesExtensions = let
|
||||
pkgs_ = pkgs.extend(final: prev: {
|
||||
|
|
33
pkgs/development/libraries/aemu/default.nix
Normal file
33
pkgs/development/libraries/aemu/default.nix
Normal file
|
@ -0,0 +1,33 @@
|
|||
{ lib, stdenv, fetchFromGitiles, cmake, darwin }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "aemu";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitiles {
|
||||
url = "https://android.googlesource.com/platform/hardware/google/aemu";
|
||||
rev = "07ccc3ded3357e67e39104f18f35feaf8b3b6a0e";
|
||||
hash = "sha256-H3IU9aTFSzUAqYgrtHd4F18hbhZsbOJGC4K5JwMQOOw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.Cocoa
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DAEMU_COMMON_GEN_PKGCONFIG=ON"
|
||||
"-DAEMU_COMMON_BUILD_CONFIG=gfxstream"
|
||||
# "-DENABLE_VKCEREAL_TESTS=OFF"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://android.googlesource.com/platform/hardware/google/aemu";
|
||||
description = "Android emulation utilities library";
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
# The BSD license comes from host-common/VpxFrameParser.cpp, which
|
||||
# incorporates some code from libvpx, which uses the 3-clause BSD license.
|
||||
license = with licenses; [ asl20 mit bsd3 ];
|
||||
platforms = platforms.darwin ++ platforms.linux;
|
||||
};
|
||||
}
|
|
@ -1,49 +0,0 @@
|
|||
diff --git a/./CMake/FindLLVM.cmake b/../Beignet-1.1.2-Source_new/CMake/FindLLVM.cmake
|
||||
index a148321..96cafb8 100644
|
||||
--- a/./CMake/FindLLVM.cmake
|
||||
+++ b/../Beignet-1.1.2-Source_new/CMake/FindLLVM.cmake
|
||||
@@ -22,6 +22,7 @@ if (LLVM_CONFIG_EXECUTABLE)
|
||||
else (LLVM_CONFIG_EXECUTABLE)
|
||||
message(FATAL_ERROR "Could NOT find LLVM executable, please add -DLLVM_INSTALL_DIR=/path/to/llvm-config/ in cmake command")
|
||||
endif (LLVM_CONFIG_EXECUTABLE)
|
||||
+
|
||||
execute_process(
|
||||
COMMAND ${LLVM_CONFIG_EXECUTABLE} --version
|
||||
OUTPUT_VARIABLE LLVM_VERSION
|
||||
@@ -44,10 +45,16 @@ if (LLVM_FIND_VERSION_MAJOR AND LLVM_FIND_VERSION_MINOR)
|
||||
endif (LLVM_VERSION_NODOT VERSION_LESS LLVM_FIND_VERSION_NODOT)
|
||||
endif (LLVM_FIND_VERSION_MAJOR AND LLVM_FIND_VERSION_MINOR)
|
||||
|
||||
-if (LLVM_INSTALL_DIR)
|
||||
+if (CLANG_INSTALL_DIR)
|
||||
find_program(CLANG_EXECUTABLE
|
||||
NAMES clang-${LLVM_VERSION_NODOT} clang-${LLVM_VERSION_NOPATCH} clang
|
||||
- PATHS ${LLVM_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
+ PATHS ${CLANG_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
+else (CLANG_INSTALL_DIR)
|
||||
+ find_program(CLANG_EXECUTABLE
|
||||
+ NAMES clang-${LLVM_VERSION_NODOT} clang-${LLVM_VERSION_NOPATCH} clang)
|
||||
+endif (CLANG_INSTALL_DIR)
|
||||
+
|
||||
+if (LLVM_INSTALL_DIR)
|
||||
find_program(LLVM_AS_EXECUTABLE
|
||||
NAMES llvm-as-${LLVM_VERSION_NODOT} llvm-as-${LLVM_VERSION_NOPATCH} llvm-as
|
||||
PATHS ${LLVM_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
@@ -55,8 +62,6 @@ if (LLVM_INSTALL_DIR)
|
||||
NAMES llvm-link-${LLVM_VERSION_NODOT} llvm-link-${LLVM_VERSION_NOPATCH} llvm-link
|
||||
PATHS ${LLVM_INSTALL_DIR} NO_DEFAULT_PATH)
|
||||
else (LLVM_INSTALL_DIR)
|
||||
- find_program(CLANG_EXECUTABLE
|
||||
- NAMES clang-${LLVM_VERSION_NODOT} clang-${LLVM_VERSION_NOPATCH} clang)
|
||||
find_program(LLVM_AS_EXECUTABLE
|
||||
NAMES llvm-as-${LLVM_VERSION_NODOT} llvm-as-${LLVM_VERSION_NOPATCH} llvm-as)
|
||||
find_program(LLVM_LINK_EXECUTABLE
|
||||
@@ -105,7 +110,7 @@ endif (LLVM_VERSION_NODOT VERSION_GREATER 34)
|
||||
macro(add_one_lib name)
|
||||
FIND_LIBRARY(CLANG_LIB
|
||||
NAMES ${name}
|
||||
- PATHS ${LLVM_LIBRARY_DIR} NO_DEFAULT_PATH)
|
||||
+ PATHS ${CLANG_LIBRARY_DIR} NO_DEFAULT_PATH)
|
||||
set(CLANG_LIBRARIES ${CLANG_LIBRARIES} ${CLANG_LIB})
|
||||
unset(CLANG_LIB CACHE)
|
||||
endmacro()
|
|
@ -1,112 +0,0 @@
|
|||
{ lib, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, pkg-config
|
||||
, libclang
|
||||
, libllvm
|
||||
, libdrm
|
||||
, libX11
|
||||
, libpthreadstubs
|
||||
, libXdmcp
|
||||
, libXdamage
|
||||
, libXext
|
||||
, python3
|
||||
, ocl-icd
|
||||
, libGL
|
||||
, makeWrapper
|
||||
, beignet
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "beignet";
|
||||
version = "unstable-2018.08.20";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "intel";
|
||||
repo = "beignet";
|
||||
rev = "fc5f430cb7b7a8f694d86acbb038bd5b38ec389c";
|
||||
sha256 = "1z64v69w7f52jrskh1jfyh1x46mzfhjrqxj9hhgzh3xxv9yla32h";
|
||||
};
|
||||
|
||||
patches = [ ./clang_llvm.patch ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace CMakeLists.txt --replace /etc/OpenCL/vendors "\''${CMAKE_INSTALL_PREFIX}/etc/OpenCL/vendors"
|
||||
patchShebangs src/git_sha1.sh
|
||||
'';
|
||||
|
||||
cmakeFlags = [ "-DCLANG_LIBRARY_DIR=${libclang.lib}/lib" ];
|
||||
|
||||
buildInputs = [
|
||||
libllvm
|
||||
libclang
|
||||
libX11
|
||||
libXext
|
||||
libpthreadstubs
|
||||
libdrm
|
||||
libXdmcp
|
||||
libXdamage
|
||||
ocl-icd
|
||||
libGL
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
python3
|
||||
];
|
||||
|
||||
passthru.utests = stdenv.mkDerivation {
|
||||
pname = "beignet-utests";
|
||||
inherit version src;
|
||||
|
||||
preConfigure = ''
|
||||
cd utests
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
python3
|
||||
pkg-config
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
ocl-icd
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
wrapBin() {
|
||||
install -Dm755 "$1" "$out/bin/$(basename "$1")"
|
||||
wrapProgram "$out/bin/$(basename "$1")" \
|
||||
--set OCL_BITCODE_LIB_PATH ${beignet}/lib/beignet/beignet.bc \
|
||||
--set OCL_HEADER_FILE_DIR "${beignet}/lib/beignet/include" \
|
||||
--set OCL_PCH_PATH "${beignet}/lib/beignet/beignet.pch" \
|
||||
--set OCL_GBE_PATH "${beignet}/lib/beignet/libgbe.so" \
|
||||
--set OCL_INTERP_PATH "${beignet}/lib/beignet/libgbeinterp.so" \
|
||||
--set OCL_KERNEL_PATH "$out/lib/beignet/kernels" \
|
||||
--set OCL_IGNORE_SELF_TEST 1
|
||||
}
|
||||
|
||||
install -Dm755 libutests.so $out/lib/libutests.so
|
||||
wrapBin utest_run
|
||||
wrapBin flat_address_space
|
||||
mkdir $out/lib/beignet
|
||||
cp -r ../../kernels $out/lib/beignet
|
||||
'';
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://cgit.freedesktop.org/beignet/";
|
||||
description = "OpenCL Library for Intel Ivy Bridge and newer GPUs";
|
||||
longDescription = ''
|
||||
The package provides an open source implementation of the OpenCL specification for Intel GPUs.
|
||||
It supports the Intel OpenCL runtime library and compiler.
|
||||
'';
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = with maintainers; [ artuuge zimbatm ];
|
||||
platforms = platforms.linux;
|
||||
# Requires libdrm_intel
|
||||
badPlatforms = [ "aarch64-linux" ];
|
||||
};
|
||||
}
|
|
@ -73,8 +73,7 @@ let
|
|||
else if stdenv.hostPlatform.parsed.cpu.name == "s390x" then "s390x"
|
||||
else toString stdenv.hostPlatform.parsed.cpu.family}"
|
||||
# env in host triplet for Mach-O is "macho", but boost binary format for Mach-O is "mach-o"
|
||||
"binary-format=${if stdenv.hostPlatform.parsed.kernel.execFormat == lib.systems.parse.execFormats.macho
|
||||
then "mach-o"
|
||||
"binary-format=${if stdenv.hostPlatform.isMacho then "mach-o"
|
||||
else toString stdenv.hostPlatform.parsed.kernel.execFormat.name}"
|
||||
"target-os=${toString stdenv.hostPlatform.parsed.kernel.name}"
|
||||
|
||||
|
|
|
@ -24,13 +24,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ctranslate2";
|
||||
version = "3.23.0";
|
||||
version = "3.24.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OpenNMT";
|
||||
repo = "CTranslate2";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-jqeLNKOGdGtAVx7ExGGDxxgi5zDmQgmJ6bxIuguaM3k=";
|
||||
hash = "sha256-RK5GQymtaYOM6HK2eRK5Rbz6NZva3Jt7lTPTUbSQXxI=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
34
pkgs/development/libraries/gfxstream/default.nix
Normal file
34
pkgs/development/libraries/gfxstream/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
|||
{ lib, stdenv, fetchFromGitiles, meson, ninja, pkg-config, python3
|
||||
, aemu, libdrm, libglvnd, vulkan-headers, vulkan-loader, xorg
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "gfxstream";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitiles {
|
||||
url = "https://android.googlesource.com/platform/hardware/google/gfxstream";
|
||||
rev = "a29282666c0e2fdbb2c98cfe68a7c0677163ef91";
|
||||
hash = "sha256-IYXkaHZPEYIE9KW731GN6x6yRS+FYtP1zyHcaSofhIM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja pkg-config python3 ];
|
||||
buildInputs = [ aemu libglvnd vulkan-headers vulkan-loader xorg.libX11 ]
|
||||
++ lib.optional (lib.meta.availableOn stdenv.hostPlatform libdrm) libdrm;
|
||||
|
||||
# dlopens libvulkan.
|
||||
#
|
||||
# XXX: Unsure if this is required on Darwin. If it is, it probably
|
||||
# needs to be done using install_name_tool.
|
||||
preConfigure = lib.optionalString (!stdenv.isDarwin) ''
|
||||
mesonFlagsArray=(-Dcpp_link_args="-Wl,--push-state -Wl,--no-as-needed -lvulkan -Wl,--pop-state")
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://android.googlesource.com/platform/hardware/google/gfxstream";
|
||||
description = "Graphics Streaming Kit";
|
||||
license = licenses.free; # https://android.googlesource.com/platform/hardware/google/gfxstream/+/refs/heads/main/LICENSE
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
platforms = platforms.darwin ++ platforms.linux;
|
||||
};
|
||||
}
|
|
@ -23,20 +23,21 @@
|
|||
, which
|
||||
, xvfb-run
|
||||
, nixosTests
|
||||
, installTests ? true
|
||||
}:
|
||||
|
||||
let
|
||||
testDeps = [
|
||||
gtk3 atk pango.out gdk-pixbuf harfbuzz
|
||||
];
|
||||
in stdenv.mkDerivation rec {
|
||||
in stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gjs";
|
||||
version = "1.78.0";
|
||||
|
||||
outputs = [ "out" "dev" "installedTests" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
url = "mirror://gnome/sources/gjs/${lib.versions.majorMinor finalAttrs.version}/gjs-${finalAttrs.version}.tar.xz";
|
||||
sha256 = "sha256-+6og4JF2aIMIAPkpUWiPn8CPASlq/9XNtLNfdQvifck=";
|
||||
};
|
||||
|
||||
|
@ -107,12 +108,12 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
postInstall = ''
|
||||
# TODO: make the glib setup hook handle moving the schemas in other outputs.
|
||||
installedTestsSchemaDatadir="$installedTests/share/gsettings-schemas/${pname}-${version}"
|
||||
installedTestsSchemaDatadir="$installedTests/share/gsettings-schemas/gjs-${finalAttrs.version}"
|
||||
mkdir -p "$installedTestsSchemaDatadir"
|
||||
mv "$installedTests/share/glib-2.0" "$installedTestsSchemaDatadir"
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
postFixup = lib.optionalString installTests ''
|
||||
wrapProgram "$installedTests/libexec/installed-tests/gjs/minijasmine" \
|
||||
--prefix XDG_DATA_DIRS : "$installedTestsSchemaDatadir" \
|
||||
--prefix GI_TYPELIB_PATH : "${lib.makeSearchPath "lib/girepository-1.0" testDeps}"
|
||||
|
@ -145,4 +146,4 @@ in stdenv.mkDerivation rec {
|
|||
maintainers = teams.gnome.members;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
|
@ -234,7 +234,7 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
doInstallCheck = (lib.elem "webp" selectedPlugins) && !stdenv.hostPlatform.isStatic &&
|
||||
stdenv.hostPlatform.parsed.kernel.execFormat == lib.systems.parse.execFormats.elf;
|
||||
stdenv.hostPlatform.isElf;
|
||||
installCheckPhase = ''
|
||||
runHook preInstallCheck
|
||||
readelf -a $out/lib/gstreamer-1.0/libgstrswebp.so | grep -F 'Shared library: [libwebpdemux.so'
|
||||
|
|
|
@ -30,6 +30,10 @@
|
|||
}:
|
||||
|
||||
let
|
||||
gl_rpath = lib.makeLibraryPath [
|
||||
stdenv.cc.cc.lib
|
||||
];
|
||||
|
||||
rpath = lib.makeLibraryPath [
|
||||
glib
|
||||
nss
|
||||
|
@ -92,7 +96,11 @@ stdenv.mkDerivation rec {
|
|||
mkdir -p $out/lib/ $out/share/cef/
|
||||
cp libcef_dll_wrapper/libcef_dll_wrapper.a $out/lib/
|
||||
cp ../Release/libcef.so $out/lib/
|
||||
cp ../Release/libEGL.so $out/lib/
|
||||
cp ../Release/libGLESv2.so $out/lib/
|
||||
patchelf --set-rpath "${rpath}" $out/lib/libcef.so
|
||||
patchelf --set-rpath "${gl_rpath}" $out/lib/libEGL.so
|
||||
patchelf --set-rpath "${gl_rpath}" $out/lib/libGLESv2.so
|
||||
cp ../Release/*.bin $out/share/cef/
|
||||
cp -r ../Resources/* $out/share/cef/
|
||||
cp -r ../include $out/
|
||||
|
|
|
@ -93,7 +93,7 @@ let
|
|||
else if stdenv.hostPlatform.isBSD
|
||||
then if stdenv.hostPlatform.isx86_64 then "./Configure BSD-x86_64"
|
||||
else if stdenv.hostPlatform.isx86_32
|
||||
then "./Configure BSD-x86" + lib.optionalString (stdenv.hostPlatform.parsed.kernel.execFormat.name == "elf") "-elf"
|
||||
then "./Configure BSD-x86" + lib.optionalString stdenv.hostPlatform.isElf "-elf"
|
||||
else "./Configure BSD-generic${toString stdenv.hostPlatform.parsed.cpu.bits}"
|
||||
else if stdenv.hostPlatform.isMinGW
|
||||
then "./Configure mingw${lib.optionalString
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "fastjet-contrib";
|
||||
version = "1.052";
|
||||
version = "1.053";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://fastjet.hepforge.org/contrib/downloads/fjcontrib-${version}.tar.gz";
|
||||
sha256 = "sha256-veY8KMvfmSvt6k3e38PNUsn+wkGnZ8xFXdStEOghDDk=";
|
||||
sha256 = "sha256-sSokjgsUOTTJnjt8jdgyZRIvbGwJUzwqA99E9e/x5vo=";
|
||||
};
|
||||
|
||||
buildInputs = [ fastjet ];
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "herwig";
|
||||
version = "7.2.3";
|
||||
version = "7.3.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.hepforge.org/archive/herwig/Herwig-${version}.tar.bz2";
|
||||
hash = "sha256-VZmJk3mwGwnjMaJCbXjTm39uwSbbJUPp00Cu/mqlD4Q=";
|
||||
hash = "sha256-JiSBnS3/EFupUuobXPEutvSSbUlRd0pBkHaZ4vVnaGw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoconf automake libtool gfortran ];
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue