Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2024-04-09 00:13:19 +00:00 committed by GitHub
commit 9a82281fca
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
201 changed files with 15718 additions and 992 deletions

View File

@ -0,0 +1,24 @@
name: "Check cherry-picks"
on:
pull_request_target:
branches:
- 'release-*'
- 'staging-*'
permissions: {}
jobs:
check:
runs-on: ubuntu-latest
if: github.repository_owner == 'NixOS'
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
fetch-depth: 0
filter: blob:none
- name: Check cherry-picks
env:
BASE_SHA: ${{ github.event.pull_request.base.sha }}
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
run: |
./maintainers/scripts/check-cherry-picks.sh "$BASE_SHA" "$HEAD_SHA"

View File

@ -797,7 +797,7 @@ A shell array containing additional arguments passed to the configure script. Yo
##### `dontAddPrefix` {#var-stdenv-dontAddPrefix}
By default, the flag `--prefix=$prefix` is added to the configure flags. If this is undesirable, set this variable to true.
By default, `./configure` is passed the concatenation of [`prefixKey`](#var-stdenv-prefixKey) and [`prefix`](#var-stdenv-prefix) on the command line. Disable this by setting `dontAddPrefix` to `true`.
##### `prefix` {#var-stdenv-prefix}
@ -805,7 +805,7 @@ The prefix under which the package must be installed, passed via the `--prefix`
##### `prefixKey` {#var-stdenv-prefixKey}
The key to use when specifying the prefix. By default, this is set to `--prefix=` as that is used by the majority of packages.
The key to use when specifying the installation [`prefix`](#var-stdenv-prefix). By default, this is set to `--prefix=` as that is used by the majority of packages. Other packages may need `--prefix ` (with a trailing space) or `PREFIX=`.
##### `dontAddStaticConfigureFlags` {#var-stdenv-dontAddStaticConfigureFlags}

View File

@ -93,12 +93,12 @@ in mkLicense lset) ({
url = "https://aomedia.org/license/patent-license/";
};
apsl10 = {
apple-psl10 = {
spdxId = "APSL-1.0";
fullName = "Apple Public Source License 1.0";
};
apsl20 = {
apple-psl20 = {
spdxId = "APSL-2.0";
fullName = "Apple Public Source License 2.0";
};
@ -1272,6 +1272,18 @@ in mkLicense lset) ({
};
} // {
# TODO: remove legacy aliases
apsl10 = {
# deprecated for consistency with `apple-psl20`; use `apple-psl10`
spdxId = "APSL-1.0";
fullName = "Apple Public Source License 1.0";
deprecated = true;
};
apsl20 = {
# deprecated due to confusion with Apache-2.0; use `apple-psl20`
spdxId = "APSL-2.0";
fullName = "Apple Public Source License 2.0";
deprecated = true;
};
gpl2 = {
spdxId = "GPL-2.0";
fullName = "GNU General Public License v2.0";

View File

@ -224,6 +224,12 @@
githubId = 12578560;
name = "Quinn Bohner";
};
_8aed = {
email = "8aed@riseup.net";
github = "8aed";
githubId = 140662578;
name = "Huit Aed";
};
_8-bit-fox = {
email = "sebastian@markwaerter.de";
github = "8-bit-fox";
@ -5782,6 +5788,12 @@
githubId = 122112154;
name = "Edgar Lee";
};
elrohirgt = {
email = "elrohirgt@gmail.com";
github = "ElrohirGT";
githubId = 45268815;
name = "Flavio Galán";
};
elvishjerricco = {
email = "elvishjerricco@gmail.com";
matrix = "@elvishjerricco:matrix.org";
@ -8527,6 +8539,12 @@
fingerprint = "F5B2 BE1B 9AAD 98FE 2916 5597 3665 FFF7 9D38 7BAA";
}];
};
imrying = {
email = "philiprying@gmail.com";
github = "imrying";
githubId = 36996706;
name = "Philip Rying";
};
imuli = {
email = "i@imu.li";
github = "imuli";
@ -9612,6 +9630,12 @@
githubId = 51028009;
name = "John Rodewald";
};
johnrtitor = {
email = "masumrezarock100@gmail.com";
github = "johnrtitor";
githubId = 50095635;
name = "Masum Reza";
};
john-shaffer = {
email = "jdsha@proton.me";
github = "john-shaffer";

View File

@ -0,0 +1,92 @@
#!/usr/bin/env bash
# Find alleged cherry-picks
set -e
if [ $# != "2" ] ; then
echo "usage: check-cherry-picks.sh base_rev head_rev"
exit 2
fi
PICKABLE_BRANCHES=${PICKABLE_BRANCHES:-master staging release-??.?? staging-??.??}
problem=0
while read new_commit_sha ; do
if [ "$GITHUB_ACTIONS" = 'true' ] ; then
echo "::group::Commit $new_commit_sha"
else
echo "================================================="
fi
git rev-list --max-count=1 --format=medium "$new_commit_sha"
echo "-------------------------------------------------"
original_commit_sha=$(
git rev-list --max-count=1 --format=format:%B "$new_commit_sha" \
| grep -Ei -m1 "cherry.*[0-9a-f]{40}" \
| grep -Eoi -m1 '[0-9a-f]{40}'
)
if [ "$?" != "0" ] ; then
echo " ? Couldn't locate original commit hash in message"
[ "$GITHUB_ACTIONS" = 'true' ] && echo ::endgroup::
continue
fi
set -f # prevent pathname expansion of patterns
for branch_pattern in $PICKABLE_BRANCHES ; do
set +f # re-enable pathname expansion
while read -r picked_branch ; do
if git merge-base --is-ancestor "$original_commit_sha" "$picked_branch" ; then
echo "$original_commit_sha present in branch $picked_branch"
range_diff_common='git range-diff
--no-notes
--creation-factor=100
'"$original_commit_sha~..$original_commit_sha"'
'"$new_commit_sha~..$new_commit_sha"'
'
if $range_diff_common --no-color | grep -E '^ {4}[+-]{2}' > /dev/null ; then
if [ "$GITHUB_ACTIONS" = 'true' ] ; then
echo ::endgroup::
echo -n "::warning ::"
else
echo -n " ⚠ "
fi
echo "Difference between $new_commit_sha and original $original_commit_sha may warrant inspection:"
$range_diff_common --color
problem=1
else
echo "$original_commit_sha highly similar to $new_commit_sha"
$range_diff_common --color
[ "$GITHUB_ACTIONS" = 'true' ] && echo ::endgroup::
fi
# move on to next commit
continue 3
fi
done <<< "$(
git for-each-ref \
--format="%(refname)" \
"refs/remotes/origin/$branch_pattern"
)"
done
if [ "$GITHUB_ACTIONS" = 'true' ] ; then
echo ::endgroup::
echo -n "::error ::"
else
echo -n " ✘ "
fi
echo "$original_commit_sha not found in any pickable branch"
problem=1
done <<< "$(
git rev-list \
-E -i --grep="cherry.*[0-9a-f]{40}" --reverse \
"$1..$2"
)"
exit $problem

View File

@ -26,8 +26,8 @@ To create a new key without a passphrase you can do:
```ShellSession
$ ssh-keygen -t ed25519 -P '' -f example-key
Generating public/private ed25519 key pair.
Your identification has been saved in test-key
Your public key has been saved in test-key.pub
Your identification has been saved in example-key
Your public key has been saved in example-key.pub
The key fingerprint is:
SHA256:yjxl3UbTn31fLWeyLYTAKYJPRmzknjQZoyG8gSNEoIE my-user@workstation
```

View File

@ -513,6 +513,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- The `krb5` module has been rewritten and moved to `security.krb5`, moving all options but `security.krb5.enable` and `security.krb5.package` into `security.krb5.settings`.
- `services.soju` now has a wrapper for the `sojuctl` command, pointed at the service config file. It also has the new option `adminSocket.enable`, which creates a unix admin socket at `/run/soju/admin`.
- Gitea 1.21 upgrade has several breaking changes, including:
- Custom themes and other assets that were previously stored in `custom/public/*` now belong in `custom/public/assets/*`
- New instances of Gitea using MySQL now ignore the `[database].CHARSET` config option and always use the `utf8mb4` charset, existing instances should migrate via the `gitea doctor convert` CLI command.

View File

@ -525,4 +525,9 @@ in rec {
)}
'';
# The maximum number of characters allowed in a GPT partition label. This
# limit is specified by UEFI and enforced by systemd-repart.
# Corresponds to GPT_LABEL_MAX from systemd's gpt.h.
GPTMaxLabelLength = 36;
}

View File

@ -41,6 +41,25 @@
}:
let
systemdArch = let
inherit (stdenvNoCC) hostPlatform;
in
if hostPlatform.isAarch32 then "arm"
else if hostPlatform.isAarch64 then "arm64"
else if hostPlatform.isx86_32 then "x86"
else if hostPlatform.isx86_64 then "x86-64"
else if hostPlatform.isMips32 then "mips-le"
else if hostPlatform.isMips64 then "mips64-le"
else if hostPlatform.isPower then "ppc"
else if hostPlatform.isPower64 then "ppc64"
else if hostPlatform.isRiscV32 then "riscv32"
else if hostPlatform.isRiscV64 then "riscv64"
else if hostPlatform.isS390 then "s390"
else if hostPlatform.isS390x then "s390x"
else if hostPlatform.isLoongArch64 then "loongarch64"
else if hostPlatform.isAlpha then "alpha"
else hostPlatform.parsed.cpu.name;
amendRepartDefinitions = runCommand "amend-repart-definitions.py"
{
# TODO: ruff does not splice properly in nativeBuildInputs
@ -99,6 +118,7 @@ in
finalRepartDefinitions = "repart.d";
systemdRepartFlags = [
"--architecture=${systemdArch}"
"--dry-run=no"
"--size=auto"
"--seed=${seed}"

View File

@ -6,6 +6,8 @@
let
cfg = config.image.repart;
inherit (utils.systemdUtils.lib) GPTMaxLabelLength;
partitionOptions = {
options = {
storePaths = lib.mkOption {
@ -224,6 +226,42 @@ in
config = {
assertions = lib.mapAttrsToList (fileName: partitionConfig:
let
inherit (partitionConfig) repartConfig;
labelLength = builtins.stringLength repartConfig.Label;
in
{
assertion = repartConfig ? Label -> GPTMaxLabelLength >= labelLength;
message = ''
The partition label '${repartConfig.Label}'
defined for '${fileName}' is ${toString labelLength} characters long,
but the maximum label length supported by UEFI is ${toString
GPTMaxLabelLength}.
'';
}
) cfg.partitions;
warnings = lib.filter (v: v != null) (lib.mapAttrsToList (fileName: partitionConfig:
let
inherit (partitionConfig) repartConfig;
suggestedMaxLabelLength = GPTMaxLabelLength - 2;
labelLength = builtins.stringLength repartConfig.Label;
in
if (repartConfig ? Label && labelLength >= suggestedMaxLabelLength) then ''
The partition label '${repartConfig.Label}'
defined for '${fileName}' is ${toString labelLength} characters long.
The suggested maximum label length is ${toString
suggestedMaxLabelLength}.
If you use sytemd-sysupdate style A/B updates, this might
not leave enough space to increment the version number included in
the label in a future release. For example, if your label is
${toString GPTMaxLabelLength} characters long (the maximum enforced by UEFI) and
you're at version 9, you cannot increment this to 10.
'' else null
) cfg.partitions);
image.repart =
let
version = config.image.repart.version;

View File

@ -55,6 +55,8 @@ in {
then [ package ] ++ extraPackages
else [ package32 ] ++ extraPackages32;
in prevLibs ++ additionalLibs;
# ensure font packages are picked up by Steam
extraPkgs = (prev.extraPkgs or []) ++ config.fonts.packages;
} // optionalAttrs (cfg.gamescopeSession.enable && gamescopeCfg.capSysNice)
{
buildFHSEnv = pkgs.buildFHSEnv.override {

View File

@ -40,6 +40,7 @@ in
"--"
cfg.lockerCommand
]);
serviceConfig.Restart = "always";
};
};
}

View File

@ -170,7 +170,7 @@ in {
breeze.qt5
plasma-integration.qt5
pkgs.plasma5Packages.kwayland-integration
pkgs.plasma5Packages.kio
(pkgs.plasma5Packages.kio.override { withKcms = false; })
kio-extras-kf5
]
# Optional hardware support features

View File

@ -15,6 +15,22 @@ in
services.ollama = {
enable = lib.mkEnableOption "ollama server for local large language models";
package = lib.mkPackageOption pkgs "ollama" { };
home = lib.mkOption {
type = types.str;
default = "%S/ollama";
example = "/home/foo";
description = ''
The home directory that the ollama service is started in.
'';
};
models = lib.mkOption {
type = types.str;
default = "%S/ollama/models";
example = "/path/to/ollama/models";
description = ''
The directory that the ollama service will read models from and download new models to.
'';
};
listenAddress = lib.mkOption {
type = types.str;
default = "127.0.0.1:11434";
@ -58,8 +74,8 @@ in
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
environment = cfg.environmentVariables // {
HOME = "%S/ollama";
OLLAMA_MODELS = "%S/ollama/models";
HOME = cfg.home;
OLLAMA_MODELS = cfg.models;
OLLAMA_HOST = cfg.listenAddress;
};
serviceConfig = {

View File

@ -121,7 +121,7 @@ in
package = mkPackageOption pkgs "bind" { };
cacheNetworks = mkOption {
default = [ "127.0.0.0/24" ];
default = [ "127.0.0.0/24" "::1/128" ];
type = types.listOf types.str;
description = lib.mdDoc ''
What networks are allowed to use us as a resolver. Note

View File

@ -5,7 +5,10 @@ with lib;
let
cfg = config.services.soju;
stateDir = "/var/lib/soju";
listenCfg = concatMapStringsSep "\n" (l: "listen ${l}") cfg.listen;
runtimeDir = "/run/soju";
listen = cfg.listen
++ optional cfg.adminSocket.enable "unix+admin://${runtimeDir}/admin";
listenCfg = concatMapStringsSep "\n" (l: "listen ${l}") listen;
tlsCfg = optionalString (cfg.tlsCertificate != null)
"tls ${cfg.tlsCertificate} ${cfg.tlsCertificateKey}";
logCfg = optionalString cfg.enableMessageLogging
@ -22,6 +25,10 @@ let
${cfg.extraConfig}
'';
sojuctl = pkgs.writeShellScriptBin "sojuctl" ''
exec ${cfg.package}/bin/sojuctl --config ${configFile} "$@"
'';
in
{
###### interface
@ -29,6 +36,8 @@ in
options.services.soju = {
enable = mkEnableOption (lib.mdDoc "soju");
package = mkPackageOption pkgs "soju" { };
listen = mkOption {
type = types.listOf types.str;
default = [ ":6697" ];
@ -66,6 +75,14 @@ in
description = lib.mdDoc "Whether to enable message logging.";
};
adminSocket.enable = mkOption {
type = types.bool;
default = true;
description = lib.mdDoc ''
Listen for admin connections from sojuctl at /run/soju/admin.
'';
};
httpOrigins = mkOption {
type = types.listOf types.str;
default = [];
@ -107,6 +124,8 @@ in
}
];
environment.systemPackages = [ sojuctl ];
systemd.services.soju = {
description = "soju IRC bouncer";
wantedBy = [ "multi-user.target" ];
@ -115,8 +134,9 @@ in
serviceConfig = {
DynamicUser = true;
Restart = "always";
ExecStart = "${pkgs.soju}/bin/soju -config ${configFile}";
ExecStart = "${cfg.package}/bin/soju -config ${configFile}";
StateDirectory = "soju";
RuntimeDirectory = "soju";
};
};
};

View File

@ -784,7 +784,7 @@ in
# onboarding files:
WorkingDirectory = "${cfg.package}/share/outline";
# In case this directory is not in /var/lib/outline, it needs to be made writable explicitly
ReadWritePaths = [ cfg.storage.localRootDir ];
ReadWritePaths = lib.mkIf (cfg.storage.storageType == "local") [ cfg.storage.localRootDir ];
};
};
};

View File

@ -13,14 +13,14 @@ let
partitionAssertions = lib.mapAttrsToList (fileName: definition:
let
maxLabelLength = 36; # GPT_LABEL_MAX defined in systemd's gpt.h
inherit (utils.systemdUtils.lib) GPTMaxLabelLength;
labelLength = builtins.stringLength definition.Label;
in
{
assertion = definition ? Label -> maxLabelLength >= labelLength;
assertion = definition ? Label -> GPTMaxLabelLength >= labelLength;
message = ''
The partition label '${definition.Label}' defined for '${fileName}' is ${toString labelLength}
characters long, but the maximum label length supported by systemd is ${toString maxLabelLength}.
characters long, but the maximum label length supported by systemd is ${toString GPTMaxLabelLength}.
'';
}
) cfg.partitions;

View File

@ -576,6 +576,8 @@ in
copy_bin_and_libs ${cfgZfs.package}/sbin/zfs
copy_bin_and_libs ${cfgZfs.package}/sbin/zdb
copy_bin_and_libs ${cfgZfs.package}/sbin/zpool
copy_bin_and_libs ${cfgZfs.package}/lib/udev/vdev_id
copy_bin_and_libs ${cfgZfs.package}/lib/udev/zvol_id
'';
extraUtilsCommandsTest =
mkIf (!config.boot.initrd.systemd.enable) ''
@ -632,7 +634,12 @@ in
zfs = "${cfgZfs.package}/sbin/zfs";
awk = "${pkgs.gawk}/bin/awk";
};
storePaths = [
"${cfgZfs.package}/lib/udev/vdev_id"
"${cfgZfs.package}/lib/udev/zvol_id"
];
};
services.udev.packages = [cfgZfs.package]; # to hook zvol naming, in stage 1
};
systemd.shutdownRamfs.contents."/etc/systemd/system-shutdown/zpool".source = pkgs.writeShellScript "zpool-sync-shutdown" ''

View File

@ -826,6 +826,7 @@ in {
soapui = handleTest ./soapui.nix {};
soft-serve = handleTest ./soft-serve.nix {};
sogo = handleTest ./sogo.nix {};
soju = handleTest ./soju.nix {};
solanum = handleTest ./solanum.nix {};
sonarr = handleTest ./sonarr.nix {};
sonic-server = handleTest ./sonic-server.nix {};

View File

@ -178,6 +178,14 @@ in {
"docker load --input='${examples.bashUncompressed}'",
"docker rmi ${examples.bashUncompressed.imageName}",
)
docker.succeed(
"docker load --input='${examples.bashLayeredUncompressed}'",
"docker rmi ${examples.bashLayeredUncompressed.imageName}",
)
docker.succeed(
"docker load --input='${examples.bashLayeredZstdCompressed}'",
"docker rmi ${examples.bashLayeredZstdCompressed.imageName}",
)
with subtest(
"Check if the nix store is correctly initialized by listing "

31
nixos/tests/soju.nix Normal file
View File

@ -0,0 +1,31 @@
import ./make-test-python.nix ({ pkgs, lib, ... }:
let
certs = import ./common/acme/server/snakeoil-certs.nix;
domain = certs.domain;
user = "testuser";
pass = "hunter2";
in
{
name = "soju";
meta.maintainers = with lib.maintainers; [ Benjamin-L ];
nodes.machine = { ... }: {
services.soju = {
enable = true;
adminSocket.enable = true;
hostName = domain;
tlsCertificate = certs.${domain}.cert;
tlsCertificateKey = certs.${domain}.key;
};
};
testScript = ''
start_all()
machine.wait_for_unit("soju")
machine.wait_for_file("/run/soju/admin")
machine.succeed("sojuctl user create -username ${user} -password ${pass}")
'';
})

View File

@ -14,7 +14,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "soundtracker";
version = "1.0.4";
version = "1.0.5";
src = fetchzip {
# Past releases get moved to the "old releases" directory.
@ -22,7 +22,7 @@ stdenv.mkDerivation (finalAttrs: {
# Nonetheless, only the name of the file seems to affect which file is
# downloaded, so this path should be fine both for old and current releases.
url = "mirror://sourceforge/soundtracker/soundtracker-${finalAttrs.version}.tar.xz";
hash = "sha256-kNt0BSRaEQY+oa1xbuZ1l6nCqXhcktVugxzcC3ZDaX0=";
hash = "sha256-g96Z1SdFGMq7WFI6x+UtmAHPZF0C+tHUOjNhmK2ld8I=";
};
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
@ -75,5 +75,6 @@ stdenv.mkDerivation (finalAttrs: {
license = licenses.gpl2Plus;
maintainers = with maintainers; [ fgaz ];
platforms = platforms.all;
hydraPlatforms = platforms.linux; # sdl-config times out on darwin
};
})

View File

@ -45,7 +45,7 @@ in
stdenv.mkDerivation rec {
pname = "touchosc";
version = "1.2.9.200";
version = "1.3.0.202";
suffix = {
aarch64-linux = "linux-arm64";
@ -56,9 +56,9 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://hexler.net/pub/${pname}/${pname}-${version}-${suffix}.deb";
hash = {
aarch64-linux = "sha256-JrpwD4xD4t9e3qmBCl6hfHv/InnRBRsYIsNNrxwQojo=";
armv7l-linux = "sha256-8e50jznyHUJt9aL5K/emp0T8VSLdXMuBl6KCMot8kIY=";
x86_64-linux = "sha256-lQi1HFW53LdS6Q86s0exp0WmTMTz4g48yZC73DaM2lo=";
aarch64-linux = "sha256-qsjZ/oo2V6mknrMktuTP188hp57oiPxO/iwp3G57JXU=";
armv7l-linux = "sha256-33SnAYumfnZlxKms3fANt9wRJghaQHUstZbKqTxBF3Q=";
x86_64-linux = "sha256-4SE2iw45sLyapYLCd31xT/aZMTmetsjmgfWFf0FrluI=";
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};

View File

@ -6,15 +6,15 @@
, unstableGitUpdater
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation {
pname = "btcdeb";
version = "0.3.20-unstable-2024-02-06";
version = "0.3.20-unstable-2024-03-26";
src = fetchFromGitHub {
owner = "bitcoin-core";
repo = "btcdeb";
rev = "b9288fc3371eb1d9be0cae2549be25de66659be8";
hash = "sha256-IieLNMA3m6g2Kn7g3iewmUL9c+meMR4hrrwVYqNZoh8=";
rev = "675b7820f0eec8a76f68ade7ea35974a561d49dd";
hash = "sha256-J9E0edRbFONMut1/ZFaUqgWAtEUifc+pmGypeUQ0m4c=";
};
nativeBuildInputs = [ pkg-config autoreconfHook ];

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "openvi";
version = "7.4.27";
version = "7.5.28";
src = fetchFromGitHub {
owner = "johnsonjh";
repo = "OpenVi";
rev = version;
hash = "sha256-3cqe6woJvJt0ckI3aOhF0gARKy8VMCfWxIiiglkHBTo=";
hash = "sha256-6FP56tlPQXbphyJBDct5hBK81XsU6TJjKDZM4eHqitQ=";
};
buildInputs = [ ncurses perl ];

View File

@ -11,7 +11,11 @@ stdenv.mkDerivation rec {
buildInputs = [ libX11 libXt ];
configureFlags = [ "--prefix=$(out)" ];
env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
"-Wno-error=implicit-int"
"-Wno-error=implicit-function-declaration"
"-Wno-error=incompatible-function-pointer-types"
]);
preInstall = ''
mkdir -p $out/bin

View File

@ -1,23 +1,41 @@
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config, makeWrapper, freetype, SDL2
, glib, pcre2, openal, rtmidi, fluidsynth, jack2, alsa-lib, qt5, libvncserver
, discord-gamesdk, libpcap, libslirp
{
stdenv,
lib,
fetchFromGitHub,
cmake,
pkg-config,
makeWrapper,
freetype,
SDL2,
glib,
pcre2,
openal,
rtmidi,
fluidsynth,
jack2,
alsa-lib,
qt5,
libvncserver,
discord-gamesdk,
libpcap,
libslirp,
, enableDynarec ? with stdenv.hostPlatform; isx86 || isAarch
, enableNewDynarec ? enableDynarec && stdenv.hostPlatform.isAarch
, enableVncRenderer ? false
, unfreeEnableDiscord ? false
, unfreeEnableRoms ? false
enableDynarec ? with stdenv.hostPlatform; isx86 || isAarch,
enableNewDynarec ? enableDynarec && stdenv.hostPlatform.isAarch,
enableVncRenderer ? false,
unfreeEnableDiscord ? false,
unfreeEnableRoms ? false,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "86Box";
version = "4.1";
version = "4.1.1";
src = fetchFromGitHub {
owner = "86Box";
repo = "86Box";
rev = "v${finalAttrs.version}";
hash = "sha256-JYOJFXiUTLRs6AEMYNx88PwcVw13ChQzV1ZE5OtX6Ds=";
hash = "sha256-ioE0EVIXv/biXXvLqwhmtZ/RJM0nLqcE+i+CU+WXBY4=";
};
nativeBuildInputs = [
@ -40,54 +58,54 @@ stdenv.mkDerivation (finalAttrs: {
libslirp
qt5.qtbase
qt5.qttools
] ++ lib.optional stdenv.isLinux alsa-lib
++ lib.optional enableVncRenderer libvncserver;
] ++ lib.optional stdenv.isLinux alsa-lib ++ lib.optional enableVncRenderer libvncserver;
cmakeFlags = lib.optional stdenv.isDarwin "-DCMAKE_MACOSX_BUNDLE=OFF"
cmakeFlags =
lib.optional stdenv.isDarwin "-DCMAKE_MACOSX_BUNDLE=OFF"
++ lib.optional enableNewDynarec "-DNEW_DYNAREC=ON"
++ lib.optional enableVncRenderer "-DVNC=ON"
++ lib.optional (!enableDynarec) "-DDYNAREC=OFF"
++ lib.optional (!unfreeEnableDiscord) "-DDISCORD=OFF";
postInstall = lib.optionalString stdenv.isLinux ''
install -Dm644 -t $out/share/applications $src/src/unix/assets/net.86box.86Box.desktop
postInstall =
lib.optionalString stdenv.isLinux ''
install -Dm644 -t $out/share/applications $src/src/unix/assets/net.86box.86Box.desktop
for size in 48 64 72 96 128 192 256 512; do
install -Dm644 -t $out/share/icons/hicolor/"$size"x"$size"/apps \
$src/src/unix/assets/"$size"x"$size"/net.86box.86Box.png
done;
''
+ lib.optionalString unfreeEnableRoms ''
mkdir -p $out/share/86Box
ln -s ${finalAttrs.passthru.roms} $out/share/86Box/roms
'';
for size in 48 64 72 96 128 192 256 512; do
install -Dm644 -t $out/share/icons/hicolor/"$size"x"$size"/apps \
$src/src/unix/assets/"$size"x"$size"/net.86box.86Box.png
done;
''
+ lib.optionalString unfreeEnableRoms ''
mkdir -p $out/share/86Box
ln -s ${finalAttrs.passthru.roms} $out/share/86Box/roms
'';
passthru = {
roms = fetchFromGitHub {
owner = "86Box";
repo = "roms";
rev = "v${finalAttrs.version}";
hash = "sha256-1HtoizO0QIGNjQTW0clzRp40h1ulw55+iTYz12UJSms=";
hash = "sha256-58nNTOLund/KeDlNwzwwihjFVigs/P0K8SN07zExE2c=";
};
};
# Some libraries are loaded dynamically, but QLibrary doesn't seem to search
# the runpath, so use a wrapper instead.
preFixup = let
libPath = lib.makeLibraryPath ([
libpcap
] ++ lib.optional unfreeEnableDiscord discord-gamesdk);
libPathVar = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
in ''
makeWrapperArgs+=(--prefix ${libPathVar} : "${libPath}")
'';
preFixup =
let
libPath = lib.makeLibraryPath ([ libpcap ] ++ lib.optional unfreeEnableDiscord discord-gamesdk);
libPathVar = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
in
''
makeWrapperArgs+=(--prefix ${libPathVar} : "${libPath}")
'';
meta = with lib; {
description = "Emulator of x86-based machines based on PCem.";
mainProgram = "86Box";
homepage = "https://86box.net/";
license = with licenses; [ gpl2Only ]
++ optional (unfreeEnableDiscord || unfreeEnableRoms) unfree;
license = with licenses; [ gpl2Only ] ++ optional (unfreeEnableDiscord || unfreeEnableRoms) unfree;
maintainers = [ maintainers.jchw ];
platforms = platforms.linux;
};

View File

@ -8,7 +8,6 @@
, doxygen
, fetchFromGitHub
, ffmpeg
, freeimage
, libmediainfo
, libraw
, libsodium
@ -28,13 +27,13 @@
}:
mkDerivation rec {
pname = "megasync";
version = "4.9.0.0";
version = "4.9.1.0";
src = fetchFromGitHub {
owner = "meganz";
repo = "MEGAsync";
rev = "v${version}_Linux";
sha256 = "sha256-s0E8kJ4PJmhaxVcWPCyCk/KbcX4V3IESdZhSosPlZuM=";
sha256 = "sha256-Y1nfY5iP64iSCYwzqxbjZAQNHyj4yVbSudSInm+yJzY=";
fetchSubmodules = true;
};
@ -54,7 +53,6 @@ mkDerivation rec {
cryptopp
curl
ffmpeg
freeimage
libmediainfo
libraw
libsodium
@ -72,7 +70,6 @@ mkDerivation rec {
./noinstall-distro-version.patch
# megasync target is not part of the install rule thanks to a commented block
./install-megasync.patch
./ffmpeg_44.patch
];
postPatch = ''
@ -98,7 +95,7 @@ mkDerivation rec {
"--with-cryptopp"
"--with-curl"
"--with-ffmpeg"
"--with-freeimage"
"--without-freeimage"
"--without-readline"
"--without-termcap"
"--with-sodium"
@ -111,10 +108,10 @@ mkDerivation rec {
'';
preBuild = ''
qmake CONFIG+="release" MEGA.pro
qmake CONFIG+="nofreeimage release" MEGA.pro
pushd MEGASync
lrelease MEGASync.pro
DESKTOP_DESTDIR="$out" qmake PREFIX="$out" -o Makefile MEGASync.pro CONFIG+=release
DESKTOP_DESTDIR="$out" qmake PREFIX="$out" -o Makefile MEGASync.pro CONFIG+="nofreeimage release"
popd
'';
@ -124,6 +121,6 @@ mkDerivation rec {
homepage = "https://mega.nz/";
license = licenses.unfree;
platforms = [ "i686-linux" "x86_64-linux" ];
maintainers = [ maintainers.michojel ];
maintainers = [ ];
};
}

View File

@ -1,14 +0,0 @@
Index: megasync-4.6.1.0/src/MEGASync/mega/src/gfx/freeimage.cpp
===================================================================
--- megasync-4.6.1.0.orig/src/MEGASync/mega/src/gfx/freeimage.cpp
+++ megasync-4.6.1.0/src/MEGASync/mega/src/gfx/freeimage.cpp
@@ -253,7 +253,8 @@ bool GfxProcFreeImage::readbitmapFfmpeg(
// Force seeking to key frames
formatContext->seek2any = false;
- videoStream->skip_to_keyframe = true;
+ // no longer exposed in ffmpeg 4.4; the line above should be sufficient
+ //videoStream->skip_to_keyframe = true;
if (decoder->capabilities & CAP_TRUNCATED)
{
codecContext->flags |= CAP_TRUNCATED;

View File

@ -29,13 +29,13 @@ let
};
in stdenv.mkDerivation rec {
pname = "organicmaps";
version = "2024.03.18-5";
version = "2024.03.31-8";
src = fetchFromGitHub {
owner = "organicmaps";
repo = "organicmaps";
rev = "${version}-android";
hash = "sha256-KoQlS2dW0tTZSDnGKF2F0+JeqMb0Fm0brz1gVCC8xY4=";
hash = "sha256-U8tKrL5tnhT/RMvxROk8Q4lO22ylqiMM1QonZ1Rn+CY=";
fetchSubmodules = true;
};

View File

@ -27,11 +27,11 @@
stdenvNoCC.mkDerivation {
pname = "parsec-bin";
version = "150_91a";
version = "150_93b";
src = fetchurl {
url = "https://web.archive.org/web/20231209190803if_/https://builds.parsec.app/package/parsec-linux.deb";
sha256 = "sha256-/qugI7k0NYpq7p9l9auD2Pp+SFoFZ9jAZswpreVfgO4=";
url = "https://web.archive.org/web/20240329180120/https://builds.parsec.app/package/parsec-linux.deb";
sha256 = "sha256-wfsauQMubnGKGfL9c0Zee5g3nn0eEnOFalQNL3d4weE=";
};
unpackPhase = ''

View File

@ -12,13 +12,13 @@ let
in
stdenv.mkDerivation rec {
pname = "passky-desktop";
version = "8.1.1";
version = "8.1.2";
src = fetchFromGitHub {
owner = "Rabbit-Company";
repo = "Passky-Desktop";
rev = "refs/tags/v${version}";
sha256 = "1ma8s1bngjdzclcc4m5pcmavk38sidaskmz7dgfnv84y35si18dr";
sha256 = "sha256-QQ0+qIkDPNCHeWmcF6FkbDrrt/r3fIkNi0dv6XlV1rc=";
};
nativeBuildInputs = [

View File

@ -15,13 +15,13 @@ let
in
stdenv.mkDerivation rec {
pname = "xmrig";
version = "6.21.1";
version = "6.21.2";
src = fetchFromGitHub {
owner = "xmrig";
repo = "xmrig";
rev = "v${version}";
hash = "sha256-xMfNWqr43Gxu+ET8oP9l97+tBsL/b6DNuFU4j9wy0UA=";
hash = "sha256-0ej2+g+B9K50JIs0wi1SfLBsaYTsk+0/cImLLZLNtmc=";
};
patches = [

View File

@ -176,12 +176,12 @@ stdenv.mkDerivation rec {
--prefix PATH : ${binpath}
--suffix PATH : ${lib.makeBinPath [ xdg-utils coreutils ]}
${optionalString (enableFeatures != []) ''
--add-flags "--enable-features=${strings.concatStringsSep "," enableFeatures}"
--add-flags "--enable-features=${strings.concatStringsSep "," enableFeatures}\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+,WaylandWindowDecorations}}"
''}
${optionalString (disableFeatures != []) ''
--add-flags "--disable-features=${strings.concatStringsSep "," disableFeatures}"
''}
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto}}"
${optionalString vulkanSupport ''
--prefix XDG_DATA_DIRS : "${addOpenGLRunpath.driverLink}/share"
''}

View File

@ -51,11 +51,11 @@ let
in
stdenv.mkDerivation rec {
pname = "opera";
version = "108.0.5067.29";
version = "109.0.5097.38";
src = fetchurl {
url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb";
hash = "sha256-lPazFtTWb/AbK/5H5MQK+dn0imJqUHiL6/KRq1CNxfo=";
hash = "sha256-eljVXaHN7gPqpoL3z+Fz/BH6b+1qxSHtFln6NCxl9tc=";
};
unpackPhase = "dpkg-deb -x $src .";

View File

@ -1,13 +1,13 @@
{ buildGoModule, lib, fetchFromGitHub }:
buildGoModule rec {
pname = "tfswitch";
version = "1.0.0";
version = "1.0.2";
src = fetchFromGitHub {
owner = "warrensbox";
repo = "terraform-switcher";
rev = version;
sha256 = "sha256-zUFnJCYh6XM0HiET45ZRa/ESS/n3XdYKkUJuLiDDRAg=";
sha256 = "sha256-Gp7+TEE7rmlabZhley/crpYZiqiKcc6uqSr6leZsmgU=";
};
vendorHash = "sha256-DsC9djgt7Er2m2TacUldpJP43jC0IBklPnu41Saf4DY=";

View File

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "werf";
version = "1.2.301";
version = "1.2.305";
src = fetchFromGitHub {
owner = "werf";
repo = "werf";
rev = "v${version}";
hash = "sha256-w7gHcHXvCWGzIiq4NvKjha/gs7W8fmNnZPe99lHstIg=";
hash = "sha256-WbSGbwm3/GXRZBvnleJYXxXBhIj+NwKAMLBZdUkf4PE=";
};
vendorHash = "sha256-pPWX9KtWDgJrQKt9PX1gb0v/DCop8lOxJyAjFZr3RpI=";
vendorHash = "sha256-BN2baLI91tJyGFEuuS9lAzKsKwPPpKm0eUK7Hxwbvkk=";
proxyVendor = true;

View File

@ -5,6 +5,8 @@
, nixosTests
, gettext
, python3
, giflib
, darwin
, ghostscript
, imagemagickBig
, jbig2enc
@ -22,16 +24,32 @@
}:
let
version = "2.7.1";
version = "2.7.2";
src = fetchFromGitHub {
owner = "paperless-ngx";
repo = "paperless-ngx";
rev = "refs/tags/v${version}";
hash = "sha256-k19dQeXuPwggTfrsxL4oesExAz4tkT/GN6lt7sLU3Nk=";
hash = "sha256-vXW2d45Mth3Y95xPPH8bFjVLWVdUl+WuvSXJyPD3FyU=";
};
# subpath installation is broken with uvicorn >= 0.26
# https://github.com/NixOS/nixpkgs/issues/298719
# https://github.com/paperless-ngx/paperless-ngx/issues/5494
python = python3.override {
packageOverrides = self: super: {
uvicorn = super.uvicorn.overridePythonAttrs (oldAttrs: {
version = "0.25.0";
src = fetchFromGitHub {
owner = "encode";
repo = "uvicorn";
rev = "0.25.0";
hash = "sha256-ng98DTw49zyFjrPnEwfnPfONyjKKZYuLl0qduxSppYk=";
};
});
};
};
python = python3;
path = lib.makeBinPath [
ghostscript
@ -64,6 +82,9 @@ let
buildInputs = [
pango
] ++ lib.optionals stdenv.isDarwin [
giflib
darwin.apple_sdk.frameworks.CoreText
];
CYPRESS_INSTALL_BINARY = "0";

View File

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "seqkit";
version = "2.8.0";
version = "2.8.1";
src = fetchFromGitHub {
owner = "shenwei356";
repo = "seqkit";
rev = "v${version}";
sha256 = "sha256-JsrmRUbSNCFJ58tIblKq+VRXCD1mBeCAcosDGiVb5Gs=";
sha256 = "sha256-LtPf99spy2ByTnSMJ5k1mWkh+Nct3Fg4Y9mXARxuXlA=";
};
vendorHash = "sha256-0//kySYhNmfiwiys/Ku0/8RzKpnxO0+byD8pcIkvDY0=";

View File

@ -14,14 +14,11 @@
, ninja
, ant
, openjdk
, perl536Packages
, perl
, perlPackages
, makeWrapper
}:
let
# log says: polymake does not work with perl 5.37 or newer;
perlPackages = perl536Packages;
inherit (perlPackages) perl;
in
# polymake compiles its own version of sympol and atint because we
# don't have those packages. other missing optional dependencies:
# javaview, libnormaliz, scip, soplex, jreality.

View File

@ -9,14 +9,14 @@
buildLua (finalAttrs: {
pname = "uosc";
version = "5.1.1";
version = "5.2.0";
scriptPath = "src/uosc";
src = fetchFromGitHub {
owner = "tomasklaen";
repo = "uosc";
rev = finalAttrs.version;
hash = "sha256-+4k8T1yX3IRXK3XkUShsuJSH9w1Zla7CaRENcIqX4iM=";
hash = "sha256-0GPDna9uOuhFDhA9A1fbkoKkgSB76qiDzJVQ9gjGcWo=";
};
passthru.updateScript = gitUpdater {};
@ -26,15 +26,6 @@ buildLua (finalAttrs: {
vendorHash = "sha256-nkY0z2GiDxfNs98dpe+wZNI3dAXcuHaD/nHiZ2XnZ1Y=";
};
# Patch lua script to get the path to its `ziggy` binary form the environment
patches = [
# uosc#814: Support overriding `ziggy_path` via environment variable
(fetchpatch {
url = "https://github.com/tomasklaen/uosc/commit/4fdf68a1bcb510824d66f35ecc7672a6452a44b2.patch";
hash = "sha256-igUqFf8e7LVIIjGxACdIWAeZxjF/yqaCL4QRXrzNQXk=";
})
];
# the script uses custom "texture" fonts as the background for ui elements.
# In order for mpv to find them, we need to adjust the fontconfig search path.
postInstall = "cp -r src/fonts $out/share";

View File

@ -7,19 +7,19 @@
rustPlatform.buildRustPackage rec {
pname = "conmon-rs";
version = "0.6.1";
version = "0.6.2";
src = fetchFromGitHub {
owner = "containers";
repo = pname;
rev = "v${version}";
sha256 = "sha256-B8uloch+ucOLIIR64GE5Z8ahe2NLqPmDGcugQVSqpl4=";
hash = "sha256-+htd9RJGSFzzyEQSBJGIzurQDQgpJ+sJHLPe3aPH0cg=";
};
nativeBuildInputs = [ capnproto protobuf ];
doCheck = false;
cargoHash = "sha256-hEhAnNppiyY6EcdHfri534ih8VUfpT7lO9L4mFJ6Caw=";
cargoHash = "sha256-CcWji/qMd7eX0O3cR9/FLID17WpSfz4kEAhDgKb3jds=";
meta = with lib; {
description = "An OCI container runtime monitor written in Rust";

View File

@ -517,7 +517,7 @@ rec {
buildLayeredImage = lib.makeOverridable ({ name, compressor ? "gz", ... }@args:
let
stream = streamLayeredImage args;
stream = streamLayeredImage (builtins.removeAttrs args ["compressor"]);
compress = compressorForImage compressor name;
in
runCommand "${baseNameOf name}.tar${compress.ext}"
@ -1287,7 +1287,7 @@ rec {
# Wrapper around streamNixShellImage to build an image from the result
buildNixShellImage = { drv, compressor ? "gz", ... }@args:
let
stream = streamNixShellImage args;
stream = streamNixShellImage (builtins.removeAttrs args ["compressor"]);
compress = compressorForImage compressor drv.name;
in
runCommand "${drv.name}-env.tar${compress.ext}"

View File

@ -509,7 +509,23 @@ rec {
contents = pkgs.bashInteractive;
};
# buildImage without explicit tag
# buildLayeredImage without compression
bashLayeredUncompressed = pkgs.dockerTools.buildLayeredImage {
name = "bash-layered-uncompressed";
tag = "latest";
compressor = "none";
contents = pkgs.bashInteractive;
};
# buildLayeredImage with zstd compression
bashLayeredZstdCompressed = pkgs.dockerTools.buildLayeredImage {
name = "bash-layered-zstd";
tag = "latest";
compressor = "zstd";
contents = pkgs.bashInteractive;
};
# streamLayeredImage without explicit tag
bashNoTagStreamLayered = pkgs.dockerTools.streamLayeredImage {
name = "bash-no-tag-stream-layered";
contents = pkgs.bashInteractive;

View File

@ -1,24 +1,23 @@
{ lib
, python3Packages
, python312Packages
, fetchFromGitHub
, nix-update-script
, ...
}:
python3Packages.buildPythonPackage rec {
python312Packages.buildPythonPackage rec {
pname = "ark-pixel-font";
version = "2023.11.26";
version = "2024.04.05";
src = fetchFromGitHub {
owner = "TakWolf";
repo = pname;
rev = version;
hash = "sha256-6a9wNmcXlEesPthpMt+GrWyO3x6WVtemVTXP8rbWmLk=";
hash = "sha256-G34cu/mSt/p8UPJt+Q1T2qy6d9LGgT1Jslt9syRz5eo=";
};
format = "other";
nativeBuildInputs = with python3Packages; [
nativeBuildInputs = with python312Packages; [
pixel-font-builder
unidata-blocks
character-encoding-utils

View File

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec {
pname = "ast-grep";
version = "0.20.2";
version = "0.20.3";
src = fetchFromGitHub {
owner = "ast-grep";
repo = "ast-grep";
rev = version;
hash = "sha256-hq5C6VMnkJ/Y75y7i5ipTUE7s5HsLnmomyFZJlQp/5Y=";
hash = "sha256-R8xzj6QcLXdttk7fxqLmJht3vSGryWKf2/Swod4R23w=";
};
cargoHash = "sha256-klQa8LB473tB3slDfA7p3SSzXBnzhCRZWeIeHskm71c=";
cargoHash = "sha256-490NoWXvGv8vvW0oHYlal/dIPq9y99At9mepDTcEWko=";
nativeBuildInputs = [ installShellFiles ];

View File

@ -5,16 +5,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-expand";
version = "1.0.81";
version = "1.0.82";
src = fetchFromGitHub {
owner = "dtolnay";
repo = pname;
rev = version;
hash = "sha256-ZOoMWvtuLDhbJu+qzVPHGTCqh2b3PHUggfxNtUW1DoU=";
hash = "sha256-3NukL5DyyBMR1yiSP7SWhREP/vFl+Zd2gsGxC//7edI=";
};
cargoHash = "sha256-cTz9ZR+79yPqTaDqXjSlqXd7NxHDl6Q75N26z+vi7ck=";
cargoHash = "sha256-niKg9IxNranrm52bXbp231cx/47kY+fd2ycdkudAWVo=";
meta = with lib; {
description = "Cargo subcommand to show result of macro expansion";

View File

@ -0,0 +1,34 @@
{ lib
, stdenv
, fetchFromGitHub
, rustPlatform
, darwin
, libiconv
}:
rustPlatform.buildRustPackage {
pname = "cargo-unfmt";
version = "0.3.3";
src = fetchFromGitHub {
owner = "fprasx";
repo = "cargo-unfmt";
rev = "0f4882f65d248e32812e0e854fa11d7db60921e7";
hash = "sha256-nvn4nZkkNQQvzShwoxtFqHeyhXQPm2GJoTKBI+MkFgM=";
};
cargoHash = "sha256-mMeHTYCUIZR3jVvTxfyH4I9wGfUdCWcyn9djnksAY8k=";
buildInputs = lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.Security ];
# Doc tests are broken on 0.3.3
doCheck = false;
meta = with lib; {
description = "Unformat code into perfect rectangles";
homepage = "https://github.com/fprasx/cargo-unfmt";
license = licenses.gpl3Plus;
mainProgram = "cargo-unfmt";
maintainers = with maintainers; [ cafkafk ];
};
}

View File

@ -19,7 +19,7 @@ buildGoModule rec {
meta = {
description = "Admin tool to view and inspect multiple x509 Certificates";
homepage = "https://github.com/mgit-at/cert-viewer";
license = lib.licenses.apsl20;
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.mkg20001 ];
mainProgram = "cert-viewer";
};

View File

@ -0,0 +1,26 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "charm-freeze";
version = "0.1.4";
src = fetchFromGitHub {
owner = "charmbracelet";
repo = "freeze";
rev = "v${version}";
hash = "sha256-ItcdgQUPrz2hpWS6nDYfnZaCdfocR3QgJTQ4TXzPQOw=";
};
vendorHash = "sha256-01tTr5NSyg52KGspYh9Rw98uQld6U+31Fy7jnyBoPx8=";
ldflags = [ "-s" "-w" "-X=main.Version=${version}" ];
meta = with lib; {
description = "A tool to generate images of code and terminal output";
mainProgram = "freeze";
homepage = "https://github.com/charmbracelet/freeze";
changelog = "https://github.com/charmbracelet/freeze/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ caarlos0 maaslalani ];
};
}

View File

@ -0,0 +1,37 @@
{ lib
, python3
, fetchFromGitHub
}:
python3.pkgs.buildPythonApplication rec {
pname = "dhcpig";
version = "1.6";
pyproject = true;
src = fetchFromGitHub {
owner = "kamorin";
repo = "DHCPig";
rev = "refs/tags/${version}";
hash = "sha256-MquLChDuJe3DdkxxKV4W0o49IIt7Am+yuhdOqUqexS8=";
};
build-system = with python3.pkgs; [
setuptools
];
dependencies = with python3.pkgs; [
scapy
];
installPhase = ''
install -Dm755 pig.py $out/bin/dhcpig
'';
meta = with lib; {
description = "Tool to perform advanced DHCP exhaustion attack";
homepage = "https://github.com/kamorin/DHCPig";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ tochiaha ];
mainProgram = "dhcpig";
};
}

View File

@ -0,0 +1,3 @@
{
"dependencies": {}
}

View File

@ -0,0 +1,34 @@
{ lib, buildDubPackage, fetchFromGitHub, clang, ldc, which }:
buildDubPackage rec {
pname = "dstep";
version = "1.0.4";
src = fetchFromGitHub {
owner = "jacob-carlborg";
repo = "dstep";
rev = "v${version}";
hash = "sha256-ZFz2+GtBk3StqXo/9x47xrDFdz5XujHR62hj0p3AjcY=";
};
dubLock = ./dub-lock.json;
nativeBuildInputs = [ ldc which clang ];
preConfigure = ''
./configure --llvm-path ${lib.getLib clang.cc}
'';
installPhase = ''
runHook preInstall
install -Dm755 bin/dstep -t $out/bin
runHook postInstall
'';
meta = with lib; {
description = "A tool for converting C and Objective-C headers to D modules";
homepage = "https://github.com/jacob-carlborg/dstep";
license = licenses.boost;
mainProgram = "dstep";
maintainers = with maintainers; [ imrying ];
};
}

View File

@ -15,7 +15,7 @@ let
canRunGitGr = stdenv.hostPlatform.emulatorAvailable buildPackages;
gitGr = "${stdenv.hostPlatform.emulator buildPackages} $out/bin/git-gr";
pname = "git-gr";
version = "1.2.1";
version = "1.4.1";
in
rustPlatform.buildRustPackage {
inherit pname version;
@ -24,12 +24,12 @@ rustPlatform.buildRustPackage {
owner = "9999years";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-5Pr1z+RmY92cfT7KtFnUKpzhniUN6RjDKBekWiYCCuU=";
hash = "sha256-8Z4ZLejNS6KQ/MXmQuZ0Tq9VmuJ5Nhxo4TS0tOlg/R4=";
};
buildFeatures = [ "clap_mangen" ];
cargoHash = "sha256-5JLTSBBTPGUbuqUql/cMJKBLlO2uzuU1EDhfScaeCUg=";
cargoHash = "sha256-REtY+UgtJCoTDgpI/+O341WsC4WJ4PS7/yFwWSVKKRo=";
OPENSSL_NO_VENDOR = true;

View File

@ -0,0 +1,50 @@
--- a/CMakeLists.txt 2023-02-01 23:55:18.171758209 +0100
+++ b/CMakeLists.txt 2023-02-02 19:32:16.574426531 +0100
@@ -23,25 +23,11 @@
set (VCFEVAL_AVAILABLE 0)
endif()
-execute_process(
- COMMAND ${CMAKE_SOURCE_DIR}/external/make_dependencies.sh
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
- RESULT_VARIABLE EXTERNAL_SUCCESS)
-if(NOT "${EXTERNAL_SUCCESS}" STREQUAL "0")
- message(FATAL_ERROR "Building external dependencies has failed")
-endif()
-
-set(Boost_USE_STATIC_LIBS ON) # only find static libs
set(Boost_USE_MULTITHREADED ON)
-set(Boost_USE_STATIC_RUNTIME ON)
# un-break library finding
-set(Boost_NO_BOOST_CMAKE ON)
-set(Boost_NO_SYSTEM_PATHS ON)
-set(BOOST_ROOT ${CMAKE_BINARY_DIR})
-message("Using our own Boost, which was built at ${HAPLOTYPES_SOURCE_DIR}/external/boost_install")
find_package(Boost 1.55.0 COMPONENTS thread iostreams regex unit_test_framework filesystem system program_options REQUIRED)
include_directories(${Boost_INCLUDE_DIRS})
@@ -51,7 +51,8 @@
link_directories (${CMAKE_BINARY_DIR}/lib)
# make sure we use the bundled zlib version
-set(ZLIB_LIBRARIES ${CMAKE_BINARY_DIR}/lib/libz.a)
+# Additional flags for nix, found by trial and error
+set(ZLIB_LIBRARIES -lz -lbz2 -lcurl -lcrypto -llzma)
include_directories (${HAPLOTYPES_SOURCE_DIR}/external/klib)
include_directories (${HAPLOTYPES_SOURCE_DIR}/external/intervaltree)
@@ -84,11 +86,6 @@
${CMAKE_THREAD_LIBS_INIT})
-execute_process(COMMAND git describe --tags --always
- OUTPUT_VARIABLE HAPLOTYPES_VERSION
- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
- OUTPUT_STRIP_TRAILING_WHITESPACE
-)
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/src/c++/include/Version.hh.in"
"${CMAKE_BINARY_DIR}/include/Version.hh")

View File

@ -0,0 +1,92 @@
{
autoconf,
bcftools,
boost,
bzip2,
cmake,
curl,
fetchFromGitHub,
htslib,
lib,
makeWrapper,
perl,
python3,
rtg-tools,
samtools,
stdenv,
xz,
zlib,
}:
let
# Bcftools needs perl
runtime = [
bcftools
htslib
my-python
perl
samtools
];
my-python-packages =
p: with p; [
bx-python
pysam
pandas
psutil
scipy
];
my-python = python3.withPackages my-python-packages;
in
stdenv.mkDerivation rec {
pname = "hap.py";
version = "0.3.15";
src = fetchFromGitHub {
owner = "Illumina";
repo = pname;
rev = "v${version}";
sha256 = "sha256-K8XXhioMGMHw56MKvp0Eo8S6R36JczBzGRaBz035zRQ=";
};
# For illumina script
BOOST_ROOT = "${boost.out}";
ZLIBSTATIC = "${zlib.static}";
# For cmake : boost lib and includedir are in differernt location
BOOST_LIBRARYDIR = "${boost.out}/lib";
BOOST_INCLUDEDIR = "${boost.dev}/include";
patches = [
# Compatibility with nix for boost and library flags : zlib, bzip2, curl, crypto, lzma
./boost-library-flags.patch
# Update to python3
./python3.patch
];
nativeBuildInputs = [
autoconf
cmake
makeWrapper
];
buildInputs = [
boost
bzip2
curl
htslib
my-python
rtg-tools
xz
zlib
];
postFixup = ''
wrapProgram $out/bin/hap.py \
--set PATH ${lib.makeBinPath runtime} \
--add-flags "--engine-vcfeval-path=${rtg-tools}/bin/rtg"
'';
meta = with lib; {
description = "Compare genetics variants against a gold dataset";
homepage = "https://github.com/Illumina/hap.py";
license = licenses.bsd2;
maintainers = with maintainers; [ apraga ];
mainProgram = "hap.py";
};
}

View File

@ -0,0 +1,342 @@
diff --git a/src/c++/lib/tools/Roc.cpp b/src/c++/lib/tools/Roc.cpp
index fabe2be..2c6bb49 100644
--- a/src/c++/lib/tools/Roc.cpp
+++ b/src/c++/lib/tools/Roc.cpp
@@ -34,6 +34,9 @@
*/
#include "helpers/Roc.hh"
+#include <stdexcept>
+#include <limits>
+
#include <algorithm>
#include <cmath>
diff --git a/src/cmake/cxx.cmake b/src/cmake/cxx.cmake
old mode 100755
new mode 100644
diff --git a/src/python/Haplo/happyroc.py b/src/python/Haplo/happyroc.py
index 152bd18..e439957 100644
--- a/src/python/Haplo/happyroc.py
+++ b/src/python/Haplo/happyroc.py
@@ -97,7 +97,7 @@ def roc(roc_table, output_path,
header = l.split("\t")
else:
rec = {}
- for k, v in itertools.izip(header, l.split("\t")):
+ for k, v in zip(header, l.split("\t")):
rec[k] = v
if filter_handling:
@@ -160,11 +160,11 @@ def roc(roc_table, output_path,
if "all" not in result:
# minimal empty DF
- minidata = [{"Type": "SNP", "Subtype": "*", "Filter": "ALL", "Genotype": "*", "Subset": "*", "QQ": "*"} for _ in xrange(2)]
+ minidata = [{"Type": "SNP", "Subtype": "*", "Filter": "ALL", "Genotype": "*", "Subset": "*", "QQ": "*"} for _ in range(2)]
minidata[1]["Type"] = "INDEL"
result["all"] = pandas.DataFrame(minidata, columns=RESULT_ALLCOLUMNS)
for i, c in enumerate(RESULT_ALLCOLUMNS):
- result["all"][c] = result["all"][c].astype(RESULT_ALLDTYPES[i], raise_on_error=False)
+ result["all"][c] = result["all"][c].astype(RESULT_ALLDTYPES[i], errors="ignore")
for k, v in result.items():
result[k] = _postprocessRocData(pandas.DataFrame(v, columns=RESULT_ALLCOLUMNS))
diff --git a/src/python/Haplo/partialcredit.py b/src/python/Haplo/partialcredit.py
index d9e22bb..0f2b2cf 100644
--- a/src/python/Haplo/partialcredit.py
+++ b/src/python/Haplo/partialcredit.py
@@ -202,7 +202,7 @@ def partialCredit(vcfname,
try:
res = runParallel(pool,
preprocessWrapper,
- itertools.izip(itertools.repeat(vcfname), locations),
+ zip(itertools.repeat(vcfname), locations),
{"reference": reference,
"decompose": decompose,
"leftshift": leftshift,
diff --git a/src/python/Haplo/quantify.py b/src/python/Haplo/quantify.py
index 042d13e..b1d362e 100755
--- a/src/python/Haplo/quantify.py
+++ b/src/python/Haplo/quantify.py
@@ -152,7 +152,7 @@ def run_quantify(filename,
run_str += " -v %s" % pipes.quote(write_vcf)
if regions:
- for k, v in regions.iteritems():
+ for k, v in regions.items():
run_str += " -R '%s:%s'" % (k, v)
if roc_regions:
diff --git a/src/python/Somatic/Mutect.py b/src/python/Somatic/Mutect.py
index 7ac923c..81f08b5 100755
--- a/src/python/Somatic/Mutect.py
+++ b/src/python/Somatic/Mutect.py
@@ -148,7 +148,7 @@ def extractMutectSNVFeatures(vcfname, tag, avg_depth=None):
n_allele_alt_count = 0
else:
n_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
n_allele_alt_count += float(rec[n_sample + "AD"][a + 1])
if n_allele_alt_count + n_allele_ref_count == 0:
@@ -163,7 +163,7 @@ def extractMutectSNVFeatures(vcfname, tag, avg_depth=None):
t_allele_alt_count = 0
else:
t_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
t_allele_alt_count += float(rec[t_sample + "AD"][a + 1])
if t_allele_alt_count + t_allele_ref_count == 0:
@@ -344,7 +344,7 @@ def extractMutectIndelFeatures(vcfname, tag, avg_depth=None):
n_allele_alt_count = 0
else:
n_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
n_allele_alt_count += float(rec[n_sample + "AD"][a + 1])
if n_allele_alt_count + n_allele_ref_count == 0:
@@ -359,7 +359,7 @@ def extractMutectIndelFeatures(vcfname, tag, avg_depth=None):
t_allele_alt_count = 0
else:
t_allele_alt_count = 0
- for a in xrange(0, len(alleles_alt)):
+ for a in range(0, len(alleles_alt)):
t_allele_alt_count += float(rec[t_sample + "AD"][a + 1])
if t_allele_alt_count + t_allele_ref_count == 0:
diff --git a/src/python/Tools/bcftools.py b/src/python/Tools/bcftools.py
index 6146b7a..6d80d14 100755
--- a/src/python/Tools/bcftools.py
+++ b/src/python/Tools/bcftools.py
@@ -128,8 +128,8 @@ def concatenateParts(output, *args):
to_delete.append(tf2.name)
to_delete.append(tf1.name + ".csi")
to_delete.append(tf2.name + ".csi")
- half1 = [tf1.name] + list(args[:len(args)/2])
- half2 = [tf2.name] + list(args[len(args)/2:])
+ half1 = [tf1.name] + list(args[:len(args)//2])
+ half2 = [tf2.name] + list(args[len(args)//2:])
concatenateParts(*half1)
runBcftools("index", tf1.name)
concatenateParts(*half2)
diff --git a/src/python/Tools/metric.py b/src/python/Tools/metric.py
index 71ccc99..372626d 100755
--- a/src/python/Tools/metric.py
+++ b/src/python/Tools/metric.py
@@ -115,7 +115,7 @@ def replaceNaNs(xobject):
if type(xobject[k]) is dict or type(xobject[k]) is list or type(xobject[k]) is float:
xobject[k] = replaceNaNs(xobject[k])
elif type(xobject) is list:
- for k in xrange(0, len(xobject)):
+ for k in range(0, len(xobject)):
if type(xobject[k]) is dict or type(xobject[k]) is list or type(xobject[k]) is float:
xobject[k] = replaceNaNs(xobject[k])
elif type(xobject) is float:
diff --git a/src/python/Tools/parallel.py b/src/python/Tools/parallel.py
index 9d49760..5fcb37e 100755
--- a/src/python/Tools/parallel.py
+++ b/src/python/Tools/parallel.py
@@ -17,9 +17,9 @@ import logging
import traceback
import subprocess
import multiprocessing
-import cPickle
+import pickle
import tempfile
-from itertools import islice, izip, repeat
+from itertools import islice, repeat
from . import LoggingWriter
@@ -93,7 +93,7 @@ def runParallel(pool, fun, par, *args, **kwargs):
"""
if pool:
- result = pool.map(parMapper, izip(par, repeat( { "fun": fun, "args": args, "kwargs": kwargs } )))
+ result = pool.map(parMapper, zip(par, repeat( { "fun": fun, "args": args, "kwargs": kwargs } )))
else:
result = []
for c in par:
diff --git a/src/python/Tools/sessioninfo.py b/src/python/Tools/sessioninfo.py
index 75650ec..b49bf59 100644
--- a/src/python/Tools/sessioninfo.py
+++ b/src/python/Tools/sessioninfo.py
@@ -34,7 +34,6 @@ def sessionInfo():
'version': version,
'runInfo': [{"key": "commandline", "value": " ".join(sys.argv)}],
'uname': " / ".join(platform.uname()),
- 'dist': " / ".join(platform.dist()),
'mac_ver': " / ".join([platform.mac_ver()[0], platform.mac_ver()[2]]),
'python_implementation': platform.python_implementation(),
'python_version': platform.python_version(),
diff --git a/src/python/Tools/vcfcallerinfo.py b/src/python/Tools/vcfcallerinfo.py
index eb7e86e..947f2c4 100755
--- a/src/python/Tools/vcfcallerinfo.py
+++ b/src/python/Tools/vcfcallerinfo.py
@@ -33,8 +33,8 @@ class CallerInfo(object):
def asDict(self):
kvd = ["name", "version", "parameters"]
- return {"aligners": [dict(y for y in itertools.izip(kvd, x)) for x in self.aligners],
- "callers": [dict(y for y in itertools.izip(kvd, x)) for x in self.callers]}
+ return {"aligners": [dict(y for y in zip(kvd, x)) for x in self.aligners],
+ "callers": [dict(y for y in zip(kvd, x)) for x in self.callers]}
def addVCF(self, vcfname):
""" Add caller versions from a VCF
diff --git a/src/python/hap.py b/src/python/hap.py
index 8045936..93279a4 100755
--- a/src/python/hap.py
+++ b/src/python/hap.py
@@ -188,7 +188,7 @@ def main():
parser.print_help()
exit(1)
- print "Hap.py %s" % Tools.version
+ print("Hap.py %s" % Tools.version)
if args.version:
exit(0)
diff --git a/src/python/ovc.py b/src/python/ovc.py
index 2837255..20b4442 100755
--- a/src/python/ovc.py
+++ b/src/python/ovc.py
@@ -34,7 +34,7 @@ lines = 1
for line in f:
l = line.split("\t")
if len(l) > 3 and (last-1) > int(l[1]):
- print "Overlap at %s:%i (line %i)" % (l[0], int(l[1]), lines)
+ print(Overlap at %s:%i (line %i)) % (l[0], int(l[1]), lines)
exit(1)
elif len(l) > 3:
last = int(l[2])
diff --git a/src/python/pre.py b/src/python/pre.py
index 5ca1644..a37a4b2 100755
--- a/src/python/pre.py
+++ b/src/python/pre.py
@@ -47,8 +47,8 @@ import Haplo.partialcredit
def hasChrPrefix(chrlist):
""" returns if list of chr names has a chr prefix or not """
- noprefix = map(str, range(23)) + ["X", "Y", "MT"]
- withprefix = ["chr" + x for x in map(str, range(23)) + ["X", "Y", "M"]]
+ noprefix = [str(x) for x in range(23)] + ["X", "Y", "MT"]
+ withprefix = ["chr" + str(x) for x in range(23)] + ["X", "Y", "M"]
count_noprefix = len(list(set(noprefix) & set(chrlist)))
count_prefix = len(list(set(withprefix) & set(chrlist)))
@@ -126,7 +126,7 @@ def preprocess(vcf_input,
if gender == "auto":
logging.info(mf)
- if "female" in mf:
+ if b"female" in mf:
gender = "female"
else:
gender = "male"
@@ -392,7 +392,7 @@ def main():
exit(0)
if args.version:
- print "pre.py %s" % Tools.version # noqa:E999
+ print(pre.py %s) % Tools.version # noqa:E999
exit(0)
args.input = args.input[0]
diff --git a/src/python/qfy.py b/src/python/qfy.py
index 4f247ee..59ed68a 100755
--- a/src/python/qfy.py
+++ b/src/python/qfy.py
@@ -203,8 +203,8 @@ def quantify(args):
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "Benchmarking Summary:"
- print essential_numbers.to_string(index=False)
+ print("Benchmarking Summary:")
+ print(essential_numbers.to_string(index=False))
# keep this for verbose output
if not args.verbose:
@@ -213,12 +213,12 @@ def quantify(args):
except:
pass
- for t in res.iterkeys():
+ for t in res.keys():
metrics_output["metrics"].append(dataframeToMetricsTable("roc." + t, res[t]))
# gzip JSON output
if args.write_json:
with gzip.open(args.reports_prefix + ".metrics.json.gz", "w") as fp:
- json.dump(metrics_output, fp)
+ fp.write(json.dumps(metrics_output, default=np_encoder).encode('ascii'))
@@ -362,7 +363,7 @@ def main():
exit(0)
if args.version:
- print "qfy.py %s" % Tools.version
+ print(qfy.py %s) % Tools.version
exit(0)
if args.fp_bedfile and args.preprocessing_truth_confregions:
diff --git a/src/python/som.py b/src/python/som.py
index e942351..c01d522 100755
--- a/src/python/som.py
+++ b/src/python/som.py
@@ -640,7 +640,7 @@ def main():
"overlap):\n" + ambie.to_string(index=False))
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "FP/ambiguity classes with info (multiple classes can " \
+ print(FP/ambiguity classes with info (multiple classes can ) \
"overlap):\n" + ambie.to_string(index=False)
ambie.to_csv(args.output + ".ambiclasses.csv")
metrics_output["metrics"].append(dataframeToMetricsTable("ambiclasses", ambie))
@@ -659,7 +659,7 @@ def main():
formatters={'reason': '{{:<{}s}}'.format(ambie['reason'].str.len().max()).format}, index=False))
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "Reasons for defining as ambiguous (multiple reasons can overlap):\n" + ambie.to_string(
+ print(Reasons for defining as ambiguous (multiple reasons can overlap):\n) + ambie.to_string(
formatters={'reason': '{{:<{}s}}'.format(ambie['reason'].str.len().max()).format}, index=False)
ambie.to_csv(args.output + ".ambireasons.csv")
metrics_output["metrics"].append(dataframeToMetricsTable("ambireasons", ambie))
@@ -936,7 +936,7 @@ def main():
logging.info("\n" + res.to_string())
# in default mode, print result summary to stdout
if not args.quiet and not args.verbose:
- print "\n" + res.to_string()
+ print(\n) + res.to_string()
res["sompyversion"] = vstring
diff --git a/src/python/qfy.py b/src/python/qfy.py
index 59ed68a..be8d7e1 100755
--- a/src/python/qfy.py
+++ b/src/python/qfy.py
@@ -33,6 +33,7 @@ import pandas
import json
import tempfile
import gzip
+import numpy as np
scriptDir = os.path.abspath(os.path.dirname(os.path.realpath(__file__)))
sys.path.append(os.path.abspath(os.path.join(scriptDir, '..', 'lib', 'python27')))
@@ -45,6 +46,10 @@ import Haplo.happyroc
import Haplo.gvcf2bed
from Tools import fastasize
+# Cannot convert data to json without a custom enconder
+def np_encoder(object):
+ if isinstance(object, np.generic):
+ return object.item()
def quantify(args):
""" Run quantify and write tables """

View File

@ -11,12 +11,12 @@
}:
flutter.buildFlutterApplication rec {
pname = "intiface-central";
version = "2.5.3";
version = "2.5.6";
src = fetchFromGitHub {
owner = "intiface";
repo = pname;
rev = "v${version}";
hash = "sha256-i0G3wCfJ9Q7DEmVMrQv2K6fy4YRWsEMNns9zMZkJxvY=";
hash = "sha256-EcOFiaWqljNZIvsCkhuCEChEC51ERxM74EYE6u7Q4U8=";
};
patches = [
./corrosion.patch
@ -28,7 +28,7 @@ flutter.buildFlutterApplication rec {
name = "${pname}-${version}-cargo-deps";
inherit src;
sourceRoot = "${src.name}/intiface-engine-flutter-bridge";
hash = "sha256-0sCHa3rMaLYaUG3E3fmsLi0dSdb9vGyv7qNR3JQkXuU=";
hash = "sha256-tkJcwT2lt8+FT9GZ0ROrm1jkOxoq875O3wZkgZl22r4=";
};
cargoRoot = "intiface-engine-flutter-bridge";

View File

@ -24,11 +24,11 @@
"dependency": "transitive",
"description": {
"name": "archive",
"sha256": "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03",
"sha256": "7b875fd4a20b165a3084bd2d210439b22ebc653f21cea4842729c0c30c82596b",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.4.6"
"version": "3.4.9"
},
"args": {
"dependency": "transitive",
@ -54,11 +54,11 @@
"dependency": "direct main",
"description": {
"name": "bloc",
"sha256": "3820f15f502372d979121de1f6b97bfcf1630ebff8fe1d52fb2b0bfa49be5b49",
"sha256": "f53a110e3b48dcd78136c10daa5d51512443cea5e1348c9d80a320095fa2db9e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "8.1.2"
"version": "8.1.3"
},
"boolean_selector": {
"dependency": "transitive",
@ -104,11 +104,11 @@
"dependency": "transitive",
"description": {
"name": "build_daemon",
"sha256": "5f02d73eb2ba16483e693f80bee4f088563a820e47d1027d4cdfe62b5bb43e65",
"sha256": "0343061a33da9c5810b2d6cee51945127d8f4c060b7fbdd9d54917f0a3feaaa1",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "4.0.0"
"version": "4.0.1"
},
"build_resolvers": {
"dependency": "transitive",
@ -154,11 +154,11 @@
"dependency": "transitive",
"description": {
"name": "built_value",
"sha256": "a8de5955205b4d1dbbbc267daddf2178bd737e4bab8987c04a500478c9651e74",
"sha256": "723b4021e903217dfc445ec4cf5b42e27975aece1fc4ebbc1ca6329c2d9fb54e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "8.6.3"
"version": "8.7.0"
},
"buttplug": {
"dependency": "direct main",
@ -274,11 +274,11 @@
"dependency": "transitive",
"description": {
"name": "dbus",
"sha256": "6f07cba3f7b3448d42d015bfd3d53fe12e5b36da2423f23838efc1d5fb31a263",
"sha256": "365c771ac3b0e58845f39ec6deebc76e3276aa9922b0cc60840712094d9047ac",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.7.8"
"version": "0.7.10"
},
"device_info_plus": {
"dependency": "direct main",
@ -410,11 +410,11 @@
"dependency": "direct dev",
"description": {
"name": "flutter_lints",
"sha256": "ad76540d21c066228ee3f9d1dad64a9f7e46530e8bb7c85011a88bc1fd874bc5",
"sha256": "e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.0"
"version": "3.0.1"
},
"flutter_local_notifications": {
"dependency": "direct main",
@ -460,21 +460,31 @@
"dependency": "direct main",
"description": {
"name": "flutter_markdown",
"sha256": "8afc9a6aa6d8e8063523192ba837149dbf3d377a37c0b0fc579149a1fbd4a619",
"sha256": "35108526a233cc0755664d445f8a6b4b61e6f8fe993b3658b80b4a26827fc196",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.6.18"
"version": "0.6.18+2"
},
"flutter_rust_bridge": {
"dependency": "direct main",
"description": {
"name": "flutter_rust_bridge",
"sha256": "e12415c3bce49bcbc3fed383f0ea41ad7d828f6cf0eccba0588ffa5a812fe522",
"sha256": "02720226035257ad0b571c1256f43df3e1556a499f6bcb004849a0faaa0e87f0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.82.1"
"version": "1.82.6"
},
"flutter_spinkit": {
"dependency": "direct main",
"description": {
"name": "flutter_spinkit",
"sha256": "b39c753e909d4796906c5696a14daf33639a76e017136c8d82bf3e620ce5bb8e",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "5.2.0"
},
"flutter_test": {
"dependency": "direct dev",
@ -502,11 +512,11 @@
"dependency": "direct main",
"description": {
"name": "github",
"sha256": "e20582edb07b859cc226ab2fd64fd246f7cdcbfc7098f46e241c03deb81b5682",
"sha256": "45d7ffc34f4958b8f9910175e10fc00f976ad0b44ca5ee06fcfd7269a2dbb77f",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "9.19.0"
"version": "9.20.0"
},
"glob": {
"dependency": "transitive",
@ -618,6 +628,36 @@
"source": "hosted",
"version": "6.7.1"
},
"leak_tracker": {
"dependency": "transitive",
"description": {
"name": "leak_tracker",
"sha256": "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "10.0.0"
},
"leak_tracker_flutter_testing": {
"dependency": "transitive",
"description": {
"name": "leak_tracker_flutter_testing",
"sha256": "b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.1"
},
"leak_tracker_testing": {
"dependency": "transitive",
"description": {
"name": "leak_tracker_testing",
"sha256": "a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.1"
},
"lints": {
"dependency": "transitive",
"description": {
@ -662,31 +702,31 @@
"dependency": "transitive",
"description": {
"name": "matcher",
"sha256": "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e",
"sha256": "d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.12.16"
"version": "0.12.16+1"
},
"material_color_utilities": {
"dependency": "transitive",
"description": {
"name": "material_color_utilities",
"sha256": "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41",
"sha256": "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.5.0"
"version": "0.8.0"
},
"meta": {
"dependency": "transitive",
"description": {
"name": "meta",
"sha256": "a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e",
"sha256": "d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.10.0"
"version": "1.11.0"
},
"mime": {
"dependency": "transitive",
@ -698,6 +738,16 @@
"source": "hosted",
"version": "1.0.4"
},
"multicast_dns": {
"dependency": "direct main",
"description": {
"name": "multicast_dns",
"sha256": "316cc47a958d4bd3c67bd238fe8b44fdfb6133bad89cb191c0c3bd3edb14e296",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.3.2+6"
},
"nested": {
"dependency": "transitive",
"description": {
@ -752,11 +802,11 @@
"dependency": "direct main",
"description": {
"name": "package_info_plus",
"sha256": "7e76fad405b3e4016cd39d08f455a4eb5199723cf594cd1b8916d47140d93017",
"sha256": "88bc797f44a94814f2213db1c9bd5badebafdfb8290ca9f78d4b9ee2a3db4d79",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "4.2.0"
"version": "5.0.1"
},
"package_info_plus_platform_interface": {
"dependency": "transitive",
@ -772,11 +822,11 @@
"dependency": "direct main",
"description": {
"name": "path",
"sha256": "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917",
"sha256": "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.8.3"
"version": "1.9.0"
},
"path_provider": {
"dependency": "direct main",
@ -792,11 +842,11 @@
"dependency": "transitive",
"description": {
"name": "path_provider_android",
"sha256": "6b8b19bd80da4f11ce91b2d1fb931f3006911477cec227cce23d3253d80df3f1",
"sha256": "e595b98692943b4881b219f0a9e3945118d3c16bd7e2813f98ec6e532d905f72",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.2.0"
"version": "2.2.1"
},
"path_provider_foundation": {
"dependency": "transitive",
@ -902,11 +952,11 @@
"dependency": "transitive",
"description": {
"name": "petitparser",
"sha256": "cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750",
"sha256": "eeb2d1428ee7f4170e2bd498827296a18d4e7fc462b71727d111c0ac7707cfa6",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "5.4.0"
"version": "6.0.1"
},
"platform": {
"dependency": "transitive",
@ -922,11 +972,11 @@
"dependency": "direct main",
"description": {
"name": "plugin_platform_interface",
"sha256": "da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d",
"sha256": "f4f88d4a900933e7267e2b353594774fc0d07fb072b47eedcd5b54e1ea3269f8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.1.6"
"version": "2.1.7"
},
"pointycastle": {
"dependency": "transitive",
@ -952,11 +1002,11 @@
"dependency": "transitive",
"description": {
"name": "provider",
"sha256": "cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f",
"sha256": "9a96a0a19b594dbc5bf0f1f27d2bc67d5f95957359b461cd9feb44ed6ae75096",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.0.5"
"version": "6.1.1"
},
"pub_semver": {
"dependency": "transitive",
@ -982,11 +1032,11 @@
"dependency": "transitive",
"description": {
"name": "puppeteer",
"sha256": "59e723cc5b69537159a7c34efd645dc08a6a1ac4647d7d7823606802c0f93cdb",
"sha256": "eedeaae6ec5d2e54f9ae22ab4d6b3dda2e8791c356cc783046d06c287ffe11d8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.2.0"
"version": "3.6.0"
},
"quiver": {
"dependency": "transitive",
@ -1022,21 +1072,21 @@
"dependency": "direct main",
"description": {
"name": "sentry",
"sha256": "830667eadc0398fea3a3424ed1b74568e2db603a42758d0922e2f2974ce55a60",
"sha256": "a460aa48568d47140dd0557410b624d344ffb8c05555107ac65035c1097cf1ad",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "7.10.1"
"version": "7.18.0"
},
"sentry_flutter": {
"dependency": "direct main",
"description": {
"name": "sentry_flutter",
"sha256": "6730f41b304c6fb0fa590dacccaf73ba11082fc64b274cfe8a79776f2b95309c",
"sha256": "3d0d1d4e0e407d276ae8128d123263ccbc37e988bae906765efd6f37d544f4c6",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "7.10.1"
"version": "7.18.0"
},
"settings_ui": {
"dependency": "direct main",
@ -1102,11 +1152,11 @@
"dependency": "transitive",
"description": {
"name": "shared_preferences_web",
"sha256": "d762709c2bbe80626ecc819143013cc820fa49ca5e363620ee20a8b15a3e3daf",
"sha256": "7b15ffb9387ea3e237bb7a66b8a23d2147663d391cafc5c8f37b2e7b4bde5d21",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.2.1"
"version": "2.2.2"
},
"shared_preferences_windows": {
"dependency": "transitive",
@ -1184,6 +1234,16 @@
"source": "hosted",
"version": "1.10.0"
},
"sprintf": {
"dependency": "transitive",
"description": {
"name": "sprintf",
"sha256": "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "7.0.0"
},
"stack_trace": {
"dependency": "transitive",
"description": {
@ -1288,91 +1348,91 @@
"dependency": "direct main",
"description": {
"name": "url_launcher",
"sha256": "47e208a6711459d813ba18af120d9663c20bdf6985d6ad39fe165d2538378d27",
"sha256": "b1c9e98774adf8820c96fbc7ae3601231d324a7d5ebd8babe27b6dfac91357ba",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.1.14"
"version": "6.2.1"
},
"url_launcher_android": {
"dependency": "transitive",
"description": {
"name": "url_launcher_android",
"sha256": "b04af59516ab45762b2ca6da40fa830d72d0f6045cd97744450b73493fa76330",
"sha256": "31222ffb0063171b526d3e569079cf1f8b294075ba323443fdc690842bfd4def",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.1.0"
"version": "6.2.0"
},
"url_launcher_ios": {
"dependency": "transitive",
"description": {
"name": "url_launcher_ios",
"sha256": "7c65021d5dee51813d652357bc65b8dd4a6177082a9966bc8ba6ee477baa795f",
"sha256": "bba3373219b7abb6b5e0d071b0fe66dfbe005d07517a68e38d4fc3638f35c6d3",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.1.5"
"version": "6.2.1"
},
"url_launcher_linux": {
"dependency": "transitive",
"description": {
"name": "url_launcher_linux",
"sha256": "b651aad005e0cb06a01dbd84b428a301916dc75f0e7ea6165f80057fee2d8e8e",
"sha256": "9f2d390e096fdbe1e6e6256f97851e51afc2d9c423d3432f1d6a02a8a9a8b9fd",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.6"
"version": "3.1.0"
},
"url_launcher_macos": {
"dependency": "transitive",
"description": {
"name": "url_launcher_macos",
"sha256": "b55486791f666e62e0e8ff825e58a023fd6b1f71c49926483f1128d3bbd8fe88",
"sha256": "b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.7"
"version": "3.1.0"
},
"url_launcher_platform_interface": {
"dependency": "transitive",
"description": {
"name": "url_launcher_platform_interface",
"sha256": "95465b39f83bfe95fcb9d174829d6476216f2d548b79c38ab2506e0458787618",
"sha256": "980e8d9af422f477be6948bdfb68df8433be71f5743a188968b0c1b887807e50",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.1.5"
"version": "2.2.0"
},
"url_launcher_web": {
"dependency": "transitive",
"description": {
"name": "url_launcher_web",
"sha256": "2942294a500b4fa0b918685aff406773ba0a4cd34b7f42198742a94083020ce5",
"sha256": "7fd2f55fe86cea2897b963e864dc01a7eb0719ecc65fcef4c1cc3d686d718bb2",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "2.0.20"
"version": "2.2.0"
},
"url_launcher_windows": {
"dependency": "transitive",
"description": {
"name": "url_launcher_windows",
"sha256": "95fef3129dc7cfaba2bc3d5ba2e16063bb561fc6d78e63eee16162bc70029069",
"sha256": "7754a1ad30ee896b265f8d14078b0513a4dba28d358eabb9d5f339886f4a1adc",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.8"
"version": "3.1.0"
},
"uuid": {
"dependency": "transitive",
"description": {
"name": "uuid",
"sha256": "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313",
"sha256": "cd210a09f7c18cbe5a02511718e0334de6559871052c90a90c0cca46a4aa81c8",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "3.0.7"
"version": "4.3.3"
},
"vector_math": {
"dependency": "transitive",
@ -1394,6 +1454,16 @@
"source": "hosted",
"version": "3.0.2"
},
"vm_service": {
"dependency": "transitive",
"description": {
"name": "vm_service",
"sha256": "b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "13.0.0"
},
"watcher": {
"dependency": "transitive",
"description": {
@ -1428,11 +1498,11 @@
"dependency": "transitive",
"description": {
"name": "win32",
"sha256": "350a11abd2d1d97e0cc7a28a81b781c08002aa2864d9e3f192ca0ffa18b06ed3",
"sha256": "7c99c0e1e2fa190b48d25c81ca5e42036d5cac81430ef249027d97b0935c553f",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "5.0.9"
"version": "5.1.0"
},
"win32_registry": {
"dependency": "transitive",
@ -1468,11 +1538,11 @@
"dependency": "transitive",
"description": {
"name": "xml",
"sha256": "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84",
"sha256": "af5e77e9b83f2f4adc5d3f0a4ece1c7f45a2467b695c2540381bac793e34e556",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "6.3.0"
"version": "6.4.2"
},
"yaml": {
"dependency": "transitive",
@ -1496,7 +1566,7 @@
}
},
"sdks": {
"dart": ">=3.2.0-194.0.dev <4.0.0",
"flutter": ">=3.13.0"
"dart": ">=3.2.0 <4.0.0",
"flutter": ">=3.16.0"
}
}

View File

@ -0,0 +1,43 @@
{ lib
, rustPlatform
, fetchFromGitHub
, pkg-config
, perl
, udev
, openssl
}:
rustPlatform.buildRustPackage rec {
pname = "koji";
version = "2.2.0";
src = fetchFromGitHub {
owner = "its-danny";
repo = "koji";
rev = version;
hash = "sha256-2kBjHX7izo4loJ8oyPjE9FtCvUODC3Sm4T8ETIdeGZM=";
};
cargoHash = "sha256-owppYDt0YdWoDvfmzVfiIPjLgTAT9eTI1LpRr4Y3XQA=";
OPENSSL_NO_VENDOR = 1;
nativeBuildInputs = [
pkg-config
perl
udev
];
buildInputs = [
openssl.dev
];
meta = with lib; {
description = "An interactive CLI for creating conventional commits";
homepage = "https://github.com/its-danny/koji";
license = with licenses; [ mit ];
maintainers = with maintainers; [ ByteSudoer ];
mainProgram = "koji";
platforms = platforms.unix;
};
}

View File

@ -35,7 +35,7 @@ rustPlatform.buildRustPackage rec {
homepage = "https://lightningcss.dev/";
changelog = "https://github.com/parcel-bundler/lightningcss/releases/tag/v${version}";
license = licenses.mpl20;
maintainers = with maintainers; [ toastal ];
maintainers = with maintainers; [ johnrtitor toastal ];
mainProgram = "lightningcss";
# never built on aarch64-linux since first introduction in nixpkgs
broken = stdenv.isLinux && stdenv.isAarch64;

View File

@ -68,7 +68,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
description = "MaaAssistantArknights stripped-down version of FastDeploy";
homepage = "https://github.com/MaaAssistantArknights/FastDeploy";
platforms = platforms.linux;
license = licenses.apsl20;
license = licenses.asl20;
broken = cudaSupport && stdenv.hostPlatform.system != "x86_64-linux";
};
})

View File

@ -9,13 +9,13 @@
python3Packages.buildPythonApplication rec {
pname = "nwg-hello";
version = "0.1.8";
version = "0.1.9";
src = fetchFromGitHub {
owner = "nwg-piotr";
repo = "nwg-hello";
rev = "refs/tags/v${version}";
hash = "sha256-WNich+DsRvYS4GiLWZLWRvvWxCAlzrK9Q7aRX7dKjeQ=";
hash = "sha256-Z5Pwn/uJERWfHELXK+1SJ2vh//ZV9gqblD/GqnznJII=";
};
nativeBuildInputs = [

View File

@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Cross platform port of the macOS CoreFoundation";
homepage = "https://github.com/gerickson/opencflite";
license = lib.licenses.apsl20;
license = lib.licenses.apple-psl20;
maintainers = with lib.maintainers; [ wegank ];
platforms = [ "x86_64-linux" ];
};

View File

@ -0,0 +1,41 @@
{ stdenv, lib, fetchgit }:
stdenv.mkDerivation {
pname = "passt";
version = "0.2023_11_10.5ec3634";
src = fetchgit {
url = "git://passt.top/passt";
rev = "5ec3634b07215337c2e69d88f9b1d74711897d7d";
hash = "sha256-76CD9PYD/NcBkmRYFSZaYl381QJjuWo0VsNdh31d6/M=";
};
nativeBuildInputs = [ ];
buildInputs = [];
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share/man/man1
cp passt pasta qrap $out/bin/
cp passt.1 pasta.1 qrap.1 $out/share/man/man1/
'' + (lib.optionalString stdenv.hostPlatform.avx2Support ''
cp passt.avx2 pasta.avx2 $out/bin/
runHook postInstall
'');
meta = with lib; {
homepage = "https://passt.top/passt/about/";
description = "Translation layer between a Layer-2 network interface and native Layer-4 sockets";
longDescription = ''
passt implements a translation layer between a Layer-2 network interface
and native Layer-4 sockets (TCP, UDP, ICMP/ICMPv6 echo) on a host.
It doesn't require any capabilities or privileges, and it can be used as
a simple replacement for Slirp.
pasta (same binary as passt, different command) offers equivalent
functionality, for network namespaces: traffic is forwarded using a tap
interface inside the namespace, without the need to create further
interfaces on the host, hence not requiring any capabilities or
privileges.
'';
license = lib.licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ _8aed ];
};
}

View File

@ -85,7 +85,9 @@ python.pkgs.buildPythonApplication rec {
]);
pythonRelaxDeps = [
"cssutils"
"django-csp"
"django-filter"
"python-dateutil"
];

View File

@ -82,6 +82,7 @@ python.pkgs.buildPythonApplication rec {
--replace-fail vat_moss_forked==2020.3.20.0.11.0 vat-moss \
--replace-fail "bleach==5.0.*" bleach \
--replace-fail "dnspython==2.6.*" dnspython \
--replace-fail "django-countries==7.5.*" django-countries \
--replace-fail "django-filter==24.1" django-filter \
--replace-fail "importlib_metadata==7.*" importlib_metadata \
--replace-fail "markdown==3.6" markdown \

View File

@ -0,0 +1,25 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "protoc-go-inject-tag";
version = "1.4.0";
src = fetchFromGitHub {
owner = "favadi";
repo = "protoc-go-inject-tag";
rev = "v${version}";
sha256 = "01jsrx83pygvjx3nzfnwvb2vn5gagl79m9i67v7cfg1lzz168spj";
};
vendorHash = "sha256-tMpcJ37yGr7i91Kwz57FmJ+u2x0CAus0+yWOR10fJLo=";
meta = with lib; {
description = "Inject custom tags to protobuf golang struct";
homepage = "https://github.com/favadi/protoc-go-inject-tag/tree/v1.4.0";
license = licenses.bsd2;
maintainers = with maintainers; [elrohirgt];
mainProgram = "protoc-go-inject-tag";
};
}

View File

@ -6,6 +6,59 @@
(fetchNuGet { pname = "ConsoleMenu-simple"; version = "2.6.1"; sha256 = "1vbi77schslq3nsardm4v8mrk0zi0phczwm2np1bl9z7c84h5cym"; })
(fetchNuGet { pname = "Crc32.NET"; version = "1.2.0"; sha256 = "0qaj3192k1vfji87zf50rhydn5mrzyzybrs2k4v7ap29k8i0vi5h"; })
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
(fetchNuGet { pname = "NETStandard.Library"; version = "2.0.0"; sha256 = "1bc4ba8ahgk15m8k4nd7x406nhi0kwqzbgjk2dmw52ss553xz7iy"; })
(fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.3"; sha256 = "0xrwysmrn4midrjal8g2hr1bbg38iyisl0svamb11arqws4w2bw7"; })
(fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
(fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; })
(fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; })
(fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; })
(fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; })
(fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf"; })
(fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl"; })
(fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b"; })
(fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; })
(fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; })
(fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; })
(fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "0lqhgqi0i8194ryqq6v2gqx0fb86db2gqknbm0aq31wb378j7ip8"; })
(fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; })
(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"; })
(fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; })
(fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; })
(fetchNuGet { pname = "runtime.native.System.IO.Compression"; version = "4.3.0"; sha256 = "1vvivbqsk6y4hzcid27pqpm5bsi6sc50hvqwbcx8aap5ifrxfs8d"; })
(fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; })
(fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; })
(fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; })
(fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; })
(fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; })
(fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
(fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
(fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; })
(fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; sha256 = "14nbkhvs7sji5r1saj2x8daz82rnf9kx28d3v2qss34qbr32dzix"; })
(fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
(fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
(fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
(fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
(fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
(fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
(fetchNuGet { pname = "System.IO.Compression"; version = "4.3.0"; sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz"; })
(fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.3.0"; sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar"; })
(fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; })
(fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; })
(fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
(fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
(fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
(fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
(fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
(fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
]

View File

@ -12,13 +12,13 @@
buildDotnetModule rec {
pname = "pupdate";
version = "3.9.1";
version = "3.10.1";
src = fetchFromGitHub {
owner = "mattpannella";
repo = "${pname}";
rev = "${version}";
hash = "sha256-3Bts/jTyivZ+ch7UjFo3oGVRmVK2QhCYh8NkeQhDYDY=";
hash = "sha256-xr5XD0V3kt4fDm8GNotGuttAeWwwlAr2iFA/RezvC4w=";
};
buildInputs = [

View File

@ -0,0 +1,58 @@
{ lib
, stdenv
, python3
, fetchFromGitHub
, makeWrapper
, gdb
}:
let
pwndbg-py = python3.pkgs.pwndbg;
pythonPath = python3.pkgs.makePythonPath [ pwndbg-py ];
binPath = lib.makeBinPath ([
python3.pkgs.pwntools # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/wrappers/checksec.py#L8
] ++ lib.optionals stdenv.isLinux [
python3.pkgs.ropper # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/commands/ropper.py#L30
python3.pkgs.ropgadget # ref: https://github.com/pwndbg/pwndbg/blob/2022.12.19/pwndbg/commands/rop.py#L32
]);
in
stdenv.mkDerivation rec {
pname = "pwndbg";
version = lib.getVersion pwndbg-py;
format = "other";
inherit (pwndbg-py) src;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
runHook preInstall
mkdir -p $out/share/pwndbg
cp gdbinit.py $out/share/pwndbg
chmod +x $out/share/pwndbg/gdbinit.py
# Don't require an in-package venv
touch $out/share/pwndbg/.skip-venv
makeWrapper ${gdb}/bin/gdb $out/bin/pwndbg \
--add-flags "-q -x $out/share/pwndbg/gdbinit.py" \
--prefix PATH : ${binPath} \
--set PYTHONPATH ${pythonPath} \
runHook postInstall
'';
meta = with lib; {
description = "Exploit Development and Reverse Engineering with GDB Made Easy";
mainProgram = "pwndbg";
homepage = "https://github.com/pwndbg/pwndbg";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ mic92 patryk4815 msanft ];
# not supported on aarch64-darwin see: https://inbox.sourceware.org/gdb/3185c3b8-8a91-4beb-a5d5-9db6afb93713@Spark/
broken = stdenv.isDarwin && stdenv.isAarch64;
};
}

View File

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "simdutf";
version = "5.2.0";
version = "5.2.3";
src = fetchFromGitHub {
owner = "simdutf";
repo = "simdutf";
rev = "v${finalAttrs.version}";
hash = "sha256-4yo962iiwSPW1JeQq5mLse5DJUub7AWqMDA+AdpsRBo=";
hash = "sha256-aGuztJLHfC/GZuvZSieWOOYN5VyvxYCZKGX1nQQDvxo=";
};
# Fix build on darwin

View File

@ -0,0 +1,40 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, ncurses
, SDL2
}:
stdenv.mkDerivation {
pname = "tangerine";
version = "unstable-2024-04-05";
src = fetchFromGitHub {
owner = "Aeva";
repo = "tangerine";
rev = "a628e95d181d396246214df5194ac6b18698d811";
hash = "sha256-vn4/eH5o0UhTNfN2UB4r0eKNn90PbH3UPfarHsnQPIk=";
};
patches = [
(fetchpatch {
name = "no-install-during-build.patch";
url = "https://github.com/Aeva/tangerine/pull/12/commits/2d7d1ae1e21e8fe52df2c4a33e947b2ff6b07812.patch";
hash = "sha256-zLAx5FOvtUsUZM/nUCFW8Z1Xe3+oV95Nv1s3GaNcV/c=";
})
];
nativeBuildInputs = [ cmake ];
buildInputs = [ ncurses SDL2 ];
meta = with lib; {
description = "A system for creating 3D models procedurally from a set of Signed Distance Function (SDF) primitive shapes and combining operators";
homepage = "https://github.com/Aeva/tangerine";
license = licenses.asl20;
maintainers = [ maintainers.viraptor ];
broken = stdenv.isDarwin; # third_party/naive-surface-nets doesn't find std::execution
};
}

View File

@ -0,0 +1,46 @@
{
stdenv,
lib,
autoreconfHook,
fetchFromGitHub,
autoconf-archive,
pkg-config,
openssl,
tpm2-tss,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "tpm2-openssl";
version = "1.2.0";
src = fetchFromGitHub {
owner = "tpm2-software";
repo = "tpm2-openssl";
rev = finalAttrs.version;
hash = "sha256-mZ4Z/GxJFwwfyFd1SAiVlQqOjkFSzsZePeuEZtq8Mcg=";
};
nativeBuildInputs = [
autoreconfHook
autoconf-archive
pkg-config
];
buildInputs = [
openssl
tpm2-tss
];
configureFlags = [ "--with-modulesdir=$$out/lib/ossl-modules" ];
postPatch = ''
echo ${finalAttrs.version} > VERSION
'';
meta = with lib; {
description = "OpenSSL Provider for TPM2 integration";
homepage = "https://github.com/tpm2-software/tpm2-openssl";
license = licenses.bsd3;
maintainers = with maintainers; [ stv0g ];
platforms = platforms.linux;
};
})

View File

@ -4,16 +4,16 @@
}:
rustPlatform.buildRustPackage rec {
pname = "typos-lsp";
version = "0.1.16";
version = "0.1.17";
src = fetchFromGitHub {
owner = "tekumara";
repo = "typos-lsp";
rev = "refs/tags/v${version}";
hash = "sha256-wXwdAPaj2dY6R6rUl/3WGeUwV+/waQdHv1dmzTqFNow=";
hash = "sha256-Q/V9WabxtsUQ69r7qHzslko8anWyuB3VqVRQJ6gl9O8=";
};
cargoHash = "sha256-qXQPxMlBwLb2NVae+vKZPzufNrQeuz0cAdMflpsjDf4=";
cargoHash = "sha256-Rus79FpYBgz1CPK4n805Au0ncom8rhD3zD82a2DyR3k=";
# fix for compilation on aarch64
# see https://github.com/NixOS/nixpkgs/issues/145726

View File

@ -14,16 +14,16 @@
rustPlatform.buildRustPackage rec {
pname = "uiua";
version = "0.10.0";
version = "0.10.1";
src = fetchFromGitHub {
owner = "uiua-lang";
repo = "uiua";
rev = version;
hash = "sha256-fiMTLdJqyZEC9LEbVYCnN5WncLxjpXmxCXSd0ZMvHNY=";
hash = "sha256-gHEv8o1reKh7FfPQ2vettGy1Mvl6iVAoh6YL06iVFHs=";
};
cargoHash = "sha256-L8hA6s+/IJeH+6d6ZvHhgne5NsN6QBqZJSAfaVnwBYQ=";
cargoHash = "sha256-bUwwHdhZD7ga+u1VNBfR5nEEnHrCXV6kcQgdOL10hGM=";
nativeBuildInputs = lib.optionals stdenv.isDarwin [
rustPlatform.bindgenHook

View File

@ -0,0 +1,70 @@
{
lib,
formats,
stdenvNoCC,
fetchFromGitHub,
qt6,
libsForQt5,
variants ? [ "qt6" ],
/*
An example of how you can override the background on the NixOS logo
environment.systemPackages = [
(pkgs.where-is-my-sddm-theme.override {
themeConfig.General = {
background = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
backgroundMode = "none";
};
})
];
*/
themeConfig ? null,
}:
let
user-cfg = (formats.ini { }).generate "theme.conf.user" themeConfig;
validVariants = [
"qt5"
"qt6"
];
in
lib.checkListOfEnum "where-is-my-sddm-theme: variant" validVariants variants
stdenvNoCC.mkDerivation rec {
pname = "where-is-my-sddm-theme";
version = "1.8.0";
src = fetchFromGitHub {
owner = "stepanzubkov";
repo = pname;
rev = "v${version}";
hash = "sha256-/D3i4QcE5+GbiAw32bFYJ7UxW/5NAl9FqQfiQc4akzI=";
};
propagatedUserEnvPkgs =
[ ]
++ lib.optional (lib.elem "qt5" variants) [ libsForQt5.qtgraphicaleffects ]
++ lib.optional (lib.elem "qt6" variants) [ qt6.qt5compat ];
installPhase =
''
mkdir -p $out/share/sddm/themes/
''
+ lib.optionalString (lib.elem "qt6" variants) ''
cp -r where_is_my_sddm_theme/ $out/share/sddm/themes/
''
+ lib.optionalString (lib.elem "qt5" variants) ''
cp -r where_is_my_sddm_theme_qt5/ $out/share/sddm/themes/
''
+ lib.optionalString (lib.isAttrs themeConfig) ''
ln -sf ${user-cfg} $out/share/sddm/themes/where_is_my_sddm_theme/theme.conf.user
'';
meta = with lib; {
description = "The most minimalistic SDDM theme among all themes";
homepage = "https://github.com/stepanzubkov/where-is-my-sddm-theme";
license = licenses.mit;
maintainers = with maintainers; [ name-snrl ];
};
}

12753
pkgs/by-name/ze/zed-editor/Cargo.lock generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,207 @@
{
lib,
rustPlatform,
fetchFromGitHub,
copyDesktopItems,
curl,
pkg-config,
protobuf,
xcbuild,
fontconfig,
freetype,
libgit2,
openssl,
sqlite,
zlib,
zstd,
alsa-lib,
libxkbcommon,
wayland,
xorg,
stdenv,
darwin,
makeFontsConf,
vulkan-loader,
makeDesktopItem,
}:
rustPlatform.buildRustPackage rec {
pname = "zed";
version = "0.129.2";
src = fetchFromGitHub {
owner = "zed-industries";
repo = "zed";
rev = "refs/tags/v${version}";
hash = "sha256-5VNPgZR1E/s5mpwU46zG640KucdyS+vnieveMzVdPNs=";
fetchSubmodules = true;
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"async-pipe-0.1.3" = "sha256-g120X88HGT8P6GNCrzpS5SutALx5H+45Sf4iSSxzctE=";
"blade-graphics-0.3.0" = "sha256-0TmunFnq9MBxm4TrAkI0PxB58qJEf7oWLWhHq5cVsQ8=";
"bromberg_sl2-0.6.0" = "sha256-+bwdnk3EgYEAxQSP4KpEPicCfO+r2er1DRZjvfF4jSM=";
"font-kit-0.11.0" = "sha256-+4zMzjFyMS60HfLMEXGfXqKn6P+pOngLA45udV09DM8=";
"lsp-types-0.94.1" = "sha256-kplgPsafrgZFMI1D9pQCwmg+FKMn5HNWLbcgdXHUFVU=";
"nvim-rs-0.6.0-pre" = "sha256-bdWWuCsBv01mnPA5e5zRpq48BgOqaqIcAu+b7y1NnM8=";
"pathfinder_simd-0.5.3" = "sha256-bakBcAQZJdHQPXybe0zoMzE49aOHENQY7/ZWZUMt+pM=";
"taffy-0.3.11" = "sha256-0hXOEj6IjSW8e1t+rvxBFX6V9XRum3QO2Des1XlHJEw=";
"tree-sitter-0.20.100" = "sha256-k8au4++UJyaOCNo0cqokaQ5Is3BmIiCBSxiUkbrzhFQ=";
"tree-sitter-bash-0.20.4" = "sha256-VP7rJfE/k8KV1XN1w5f0YKjCnDMYU1go/up0zj1mabM=";
"tree-sitter-c-sharp-0.20.0" = "sha256-DlnGIky33CuRKkVVS+tOTBLVOVzASXqdaUrZawh6LZc=";
"tree-sitter-clojure-0.0.9" = "sha256-H0OEnsoJxcDqlJ32ac7KCS2stT02XKrZ/v4mGMoN2EI=";
"tree-sitter-cpp-0.20.0" = "sha256-2QYEFkpwcRmh2kf4qEAL2a5lGSa316CetOhF73e7rEM=";
"tree-sitter-css-0.19.0" = "sha256-5Qti/bFac2A1PJxqZEOuSLK3GGKYwPDKAp3OOassBxU=";
"tree-sitter-dart-0.0.1" = "sha256-FE6zXy0lAUWWayrM3urZFnQaEYBcnmaVANcUUnvw1q4=";
"tree-sitter-elixir-0.1.0" = "sha256-hBHqQ3eBjknRPJjP+lQJU6NPFhUMtiv4FbKsTw28Bog=";
"tree-sitter-elm-5.6.4" = "sha256-0LpuyebOB5ew9fULBcaw8aUbF7HM5sXQpv+Jroz4tXg=";
"tree-sitter-glsl-0.1.4" = "sha256-TRuiT3ndCeDCsCFokAN8cosNKccB0NjWVRiBJuBJXZw=";
"tree-sitter-go-0.19.1" = "sha256-5+L5QqVjZyeh+sKfxKZWrjIBFE5xM9KZlHcLiHzJCIA=";
"tree-sitter-gomod-1.0.2" = "sha256-OPtqXe6OMC9c5dgFH8Msj+6DU01LvLKVbCzGLj0PnLI=";
"tree-sitter-gowork-0.0.1" = "sha256-lM4L4Ap/c8uCr4xUw9+l/vaGb3FxxnuZI0+xKYFDPVg=";
"tree-sitter-hcl-0.0.1" = "sha256-saVKSYUJY7OuIuNm9EpQnhFO/vQGKxCXuv3EKYOJzfs=";
"tree-sitter-heex-0.0.1" = "sha256-6LREyZhdTDt3YHVRPDyqCaDXqcsPlHOoMFDb2B3+3xM=";
"tree-sitter-jsdoc-0.20.0" = "sha256-fKscFhgZ/BQnYnE5EwurFZgiE//O0WagRIHVtDyes/Y=";
"tree-sitter-json-0.20.0" = "sha256-fZNftzNavJQPQE4S1VLhRyGQRoJgbWA5xTPa8ZI5UX4=";
"tree-sitter-markdown-0.0.1" = "sha256-F8VVd7yYa4nCrj/HEC13BTC7lkV3XSb2Z3BNi/VfSbs=";
"tree-sitter-nix-0.0.1" = "sha256-+o+f1TlhcrcCB3TNw1RyCjVZ+37e11nL+GWBPo0Mxxg=";
"tree-sitter-nu-0.0.1" = "sha256-V6EZfba5e0NdOG4n3DNI25luNXfcCN3+/vNYuz9llUk=";
"tree-sitter-ocaml-0.20.4" = "sha256-ycmjIKfrsVSVHmPP3HCxfk5wcBIF/JFH8OnU8mY1Cc8=";
"tree-sitter-proto-0.0.2" = "sha256-W0diP2ByAXYrc7Mu/sbqST6lgVIyHeSBmH7/y/X3NhU=";
"tree-sitter-racket-0.0.1" = "sha256-ie64no94TtAWsSYaBXmic4oyRAA01fMl97+JWcFU1E8=";
"tree-sitter-scheme-0.2.0" = "sha256-K3+zmykjq2DpCnk17Ko9LOyGQTBZb1/dgVXIVynCYd4=";
"tree-sitter-toml-0.5.1" = "sha256-5nLNBxFeOGE+gzbwpcrTVnuL1jLUA0ZLBVw2QrOLsDQ=";
"tree-sitter-typescript-0.20.2" = "sha256-cpOAtfvlffS57BrXaoa2xa9NUYw0AsHxVI8PrcpgZCQ=";
"tree-sitter-vue-0.0.1" = "sha256-8v2e03A/Uj6zCJTH4j6TPwDQcNFeze1jepMADT6UVis=";
"tree-sitter-yaml-0.0.1" = "sha256-S59jLlipBI2kwFuZDMmpv0TOZpGyXpbAizN3yC6wJ5I=";
"tree-sitter-zig-0.0.1" = "sha256-a3W7eBUN4V3HD3YPr1+3tpuWQfIQy1Wu8qxCQx0hEnI=";
};
};
nativeBuildInputs = [
copyDesktopItems
curl
pkg-config
protobuf
rustPlatform.bindgenHook
] ++ lib.optionals stdenv.isDarwin [ xcbuild.xcrun ];
buildInputs =
[
curl
fontconfig
freetype
libgit2
openssl
sqlite
zlib
zstd
]
++ lib.optionals stdenv.isLinux [
alsa-lib
libxkbcommon
wayland
xorg.libxcb
]
++ lib.optionals stdenv.isDarwin (
with darwin.apple_sdk.frameworks;
[
AppKit
CoreAudio
CoreFoundation
CoreGraphics
CoreMedia
CoreServices
CoreText
Foundation
IOKit
Metal
Security
SystemConfiguration
VideoToolbox
]
);
buildFeatures = [ "gpui/runtime_shaders" ];
env = {
ZSTD_SYS_USE_PKG_CONFIG = true;
FONTCONFIG_FILE = makeFontsConf {
fontDirectories = [
"${src}/assets/fonts/zed-mono"
"${src}/assets/fonts/zed-sans"
];
};
};
postFixup = lib.optionalString stdenv.isLinux ''
patchelf --add-rpath ${vulkan-loader}/lib $out/bin/*
patchelf --add-rpath ${wayland}/lib $out/bin/*
'';
checkFlags = lib.optionals stdenv.hostPlatform.isLinux [
# Fails with "On 2823 Failed to find test1:A"
"--skip=test_base_keymap"
];
postInstall = ''
mv $out/bin/Zed $out/bin/zed
install -D ${src}/crates/zed/resources/app-icon@2x.png $out/share/icons/hicolor/1024x1024@2x/apps/Zed.png
install -D ${src}/crates/zed/resources/app-icon.png $out/share/icons/hicolor/512x512/apps/Zed.png
'';
desktopItems = [
(makeDesktopItem {
name = "dev.zed.Zed";
exec = "zed %F";
tryExec = "zed";
icon = "Zed";
comment = meta.description;
desktopName = "Zed";
genericName = "Text Editor";
categories = [
"Utility"
"TextEditor"
"Development"
];
keywords = [
"Text"
"Editor"
];
terminal = false;
type = "Application";
mimeTypes = [
"inode/directory"
"text/plain"
"text/x-makefile"
"text/x-c++hdr"
"text/x-c++src"
"text/x-chdr"
"text/x-csrc"
"text/x-java"
"text/x-moc"
"text/x-pascal"
"text/x-tcl"
"text/x-tex"
"application/x-shellscript"
"text/x-c"
"text/x-c++"
];
})
];
meta = with lib; {
description = "High-performance, multiplayer code editor from the creators of Atom and Tree-sitter";
homepage = "https://zed.dev";
changelog = "https://github.com/zed-industries/zed/releases/tag/v${version}";
license = licenses.gpl3Only;
maintainers = with maintainers; [
GaetanLepage
niklaskorz
];
mainProgram = "zed";
platforms = platforms.all;
};
}

View File

@ -27,13 +27,13 @@ lib.checkListOfEnum "${pname}: theme variants" [
stdenvNoCC.mkDerivation rec {
inherit pname;
version = "2023-07-03";
version = "2024.04.08";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = pname;
rev = version;
hash = "sha256-lq6d3BForrvzEJYeEMQZplvn/p6dPjggTToAU9UcPoM=";
hash = "sha256-Baf0BowyR4P7MDx+LmH6MHlANl+9lXlCaQispN4/i9o=";
};
nativeBuildInputs = [ gtk3 jdupes ];

View File

@ -1,50 +0,0 @@
{ lib
, formats
, stdenvNoCC
, fetchFromGitHub
, qtgraphicaleffects
/* An example of how you can override the background on the NixOS logo
*
* environment.systemPackages = [
* (pkgs.where-is-my-sddm-theme.override {
* themeConfig.General = {
* background = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
* backgroundMode = "none";
* };
* })
* ];
*/
, themeConfig ? null
}:
let
user-cfg = (formats.ini { }).generate "theme.conf.user" themeConfig;
in
stdenvNoCC.mkDerivation rec {
pname = "where-is-my-sddm-theme";
version = "1.8.0";
src = fetchFromGitHub {
owner = "stepanzubkov";
repo = pname;
rev = "v${version}";
hash = "sha256-/D3i4QcE5+GbiAw32bFYJ7UxW/5NAl9FqQfiQc4akzI=";
};
propagatedUserEnvPkgs = [ qtgraphicaleffects ];
installPhase = ''
mkdir -p $out/share/sddm/themes/
cp -r where_is_my_sddm_theme/ $out/share/sddm/themes/
'' + lib.optionalString (lib.isAttrs themeConfig) ''
ln -sf ${user-cfg} $out/share/sddm/themes/where_is_my_sddm_theme/theme.conf.user
'';
meta = with lib; {
description = "The most minimalistic SDDM theme among all themes";
homepage = "https://github.com/stepanzubkov/where-is-my-sddm-theme";
license = licenses.mit;
maintainers = with maintainers; [ name-snrl ];
};
}

View File

@ -3,12 +3,12 @@
stdenv.mkDerivation {
pname = "cakelisp";
# using unstable as it's the only version that builds against gcc-13
version = "0.3.0-unstable-2024-03-21";
version = "0.3.0-unstable-2024-04-01";
src = fetchgit {
url = "https://macoy.me/code/macoy/cakelisp";
rev = "6bde4b8002e4825116f3b18291a012bf1729f497";
hash = "sha256-jpwVHiDRVa6QoYxsasmiV1IdbBqZj0tU5EBruOHfzYg=";
rev = "7f09a08623f4141d3c2940bca3e8ea646a7049cc";
hash = "sha256-5ey2j38bhoRADMFcTGcUiOHE/UlU2mPGqzfv7dEk6oQ=";
};
buildInputs = [ gcc ];

View File

@ -32,6 +32,7 @@ let
"mips" = "mips";
"mips64el" = "mips64le";
"mipsel" = "mipsle";
"powerpc64" = "ppc64";
"powerpc64le" = "ppc64le";
"riscv64" = "riscv64";
"s390x" = "s390x";

View File

@ -32,6 +32,7 @@ let
"mips" = "mips";
"mips64el" = "mips64le";
"mipsel" = "mipsle";
"powerpc64" = "ppc64";
"powerpc64le" = "ppc64le";
"riscv64" = "riscv64";
"s390x" = "s390x";

View File

@ -2,13 +2,16 @@
version ? null }:
let ocamlPackages = coq.ocamlPackages;
defaultVersion = lib.switch coq.coq-version [
{ case = "8.18"; out = "2.0.3+coq8.18"; }
defaultVersion = with lib.versions; lib.switch coq.coq-version [
{ case = range "8.18" "8.19"; out = "2.1.2"; }
{ case = isEq "8.18"; out = "2.0.3+coq8.18"; }
] null;
location = { domain = "github.com"; owner = "coq-community"; repo = "vscoq"; };
fetch = metaFetch ({
release."2.0.3+coq8.18".sha256 = "sha256-VXhHCP6Ni5/OcsgoI1EbJfYCpXzwkuR8kbbKrl6dfjU=";
release."2.0.3+coq8.18".rev = "v2.0.3+coq8.18";
release."2.1.2".rev = "v2.1.2";
release."2.1.2".sha256 = "sha256-GloY68fLmIv3oiEGNWwmgKv1CMAReBuXzMTUsKOs328=";
inherit location; });
fetched = fetch (if version != null then version else defaultVersion);
in
@ -16,12 +19,13 @@ ocamlPackages.buildDunePackage {
pname = "vscoq-language-server";
inherit (fetched) version;
src = "${fetched.src}/language-server";
nativeBuildInputs = [ coq ];
buildInputs =
[ coq glib gnome.adwaita-icon-theme wrapGAppsHook ] ++
(with ocamlPackages; [ findlib
lablgtk3-sourceview3 yojson zarith ppx_inline_test
ppx_assert ppx_sexp_conv ppx_deriving ppx_import sexplib
ppx_yojson_conv lsp sel ]);
ppx_yojson_conv lsp sel ppx_optcomp ]);
meta = with lib; {
description = "Language server for the vscoq vscode/codium extension";

View File

@ -308,13 +308,6 @@ backendStdenv.mkDerivation (finalAttrs: {
# Indeed, we want to do the opposite -- fat "out" outputs that contain all the other outputs.
propagatedBuildOutputs = false;
# By default, if the dev output exists it just uses that.
# However, because we disabled propagatedBuildOutputs, dev doesn't contain libraries or
# anything of the sort. To remedy this, we set outputSpecified to true, and use
# outputsToInstall, which tells Nix which outputs to use when the package name is used
# unqualified (that is, without an explicit output).
outputSpecified = true;
meta = {
description = "${redistribRelease.name}. By downloading and using the packages you accept the terms and conditions of the ${finalAttrs.meta.license.shortName}";
sourceProvenance = [ sourceTypes.binaryNativeCode ];

View File

@ -5,14 +5,14 @@
rustPlatform.buildRustPackage rec {
pname = "svdtools";
version = "0.3.11";
version = "0.3.14";
src = fetchCrate {
inherit version pname;
hash = "sha256-LmpYsG/2oEdbAK2ePI+LYbGrVN+wC9gQS6GXNcF8XFg=";
hash = "sha256-sTogOCpcfJHy+e3T4pEvclCddCUX+RHCQ238oz5bAEo=";
};
cargoHash = "sha256-qsCa+YWE9dghG8T53TSDikWh+JhQt9v7A1Gn+/t5YZs=";
cargoHash = "sha256-lRSt46yxFWSlhU6Pns3PCLJ4c6Fvi4EbOIqVx9IoPCc=";
meta = with lib; {
description = "Tools to handle vendor-supplied, often buggy SVD files";

View File

@ -27,6 +27,7 @@
, common-updater-scripts
, coreutils
, git
, wrapGAppsHook
}:
{ baseName ? "erlang"
, version
@ -43,7 +44,7 @@
, odbcSupport ? false
, odbcPackages ? [ unixODBC ]
, opensslPackage ? openssl
, wxPackages ? [ libGL libGLU wxGTK xorg.libX11 ]
, wxPackages ? [ libGL libGLU wxGTK xorg.libX11 wrapGAppsHook ]
, preUnpack ? ""
, postUnpack ? ""
, patches ? [ ]

View File

@ -1,17 +1,17 @@
{ stdenv, lib, fetchFromGitHub, ant, jdk8 }:
{ stdenv, lib, fetchFromGitHub, ant, jdk, stripJavaArchivesHook }:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "jna";
version = "5.14.0";
src = fetchFromGitHub {
owner = "java-native-access";
repo = pname;
rev = version;
repo = "jna";
rev = finalAttrs.version;
hash = "sha256-a5l9khKLWfvTHv53utfbw344/UNQOnIU93+wZNQ0ji4=";
};
nativeBuildInputs = [ ant jdk8 ];
nativeBuildInputs = [ ant jdk stripJavaArchivesHook ];
buildPhase = ''
runHook preBuild
@ -27,11 +27,11 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
inherit (src.meta) homepage;
changelog = "https://github.com/java-native-access/jna/blob/${finalAttrs.version}/CHANGES.md";
description = "Java Native Access";
homepage = "https://github.com/java-native-access/jna";
license = with licenses; [ lgpl21 asl20 ];
maintainers = with maintainers; [ nagy ];
platforms = platforms.linux ++ platforms.darwin;
changelog = "https://github.com/java-native-access/jna/blob/${version}/CHANGES.md";
};
}
})

View File

@ -1,7 +1,7 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (args // {
baseVersion = "3.2";
baseVersion = "3.3";
revision = "0";
hash = "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM=";
hash = "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk=";
})

View File

@ -13,13 +13,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "c-blosc2";
version = "2.13.2";
version = "2.14.3";
src = fetchFromGitHub {
owner = "Blosc";
repo = "c-blosc2";
rev = "v${finalAttrs.version}";
sha256 = "sha256-RNIvg6p/+brW7oboTDH0bbRfIQDaZwtZbbWFbftfWTk=";
sha256 = "sha256-0rizBygyNW9Sr7qnQZoN/Wv2ZIAYuJTQ5tkW6iwIw7Y=";
};
# https://github.com/NixOS/nixpkgs/issues/144170

View File

@ -0,0 +1,35 @@
{ lib
, stdenv
, cmake
, fetchFromGitHub
, fixDarwinDylibNames
}:
stdenv.mkDerivation rec {
pname = "capstone";
version = "4.0.2";
src = fetchFromGitHub {
owner = "capstone-engine";
repo = "capstone";
rev = version;
sha256 = "sha256-XMwQ7UaPC8YYu4yxsE4bbR3leYPfBHu5iixSLz05r3g=";
};
nativeBuildInputs = [
cmake
] ++ lib.optionals stdenv.isDarwin [
fixDarwinDylibNames
];
doCheck = true;
meta = {
description = "Advanced disassembly library";
homepage = "http://www.capstone-engine.org";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ thoughtpolice ris ];
mainProgram = "cstool";
platforms = lib.platforms.unix;
};
}

View File

@ -7,15 +7,17 @@
stdenv.mkDerivation rec {
pname = "capstone";
version = "4.0.2";
version = "5.0.1";
src = fetchFromGitHub {
owner = "aquynh";
owner = "capstone-engine";
repo = "capstone";
rev = version;
sha256 = "sha256-XMwQ7UaPC8YYu4yxsE4bbR3leYPfBHu5iixSLz05r3g=";
sha256 = "sha256-kKmL5sae9ruWGu1gas1mel9qM52qQOD+zLj8cRE3isg=";
};
cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
nativeBuildInputs = [
cmake
] ++ lib.optionals stdenv.isDarwin [

View File

@ -80,13 +80,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "gdal";
version = "3.8.4";
version = "3.8.5";
src = fetchFromGitHub {
owner = "OSGeo";
repo = "gdal";
rev = "v${finalAttrs.version}";
hash = "sha256-R9VLof13OXPbWGHOG1Q4WZWSPoF739C6WuNWxoIwKTw=";
hash = "sha256-Z+mYlyOX9vJ772qwZMQfCbD/V7RL6+9JLHTzoZ55ot0=";
};
patches = [

View File

@ -26,13 +26,13 @@ assert (blas.isILP64 == lapack.isILP64 &&
stdenv.mkDerivation (finalAttrs: {
pname = "igraph";
version = "0.10.10";
version = "0.10.11";
src = fetchFromGitHub {
owner = "igraph";
repo = finalAttrs.pname;
rev = finalAttrs.version;
hash = "sha256-xFX48qAr0x0iNRns/aGH9UKL0wGJyfccQLdEXUFI/TU=";
hash = "sha256-RUxA9j2VDzwuYO/1HtyF3/ejGCJ7Gdjm7U8/Q8JxTbI=";
};
postPatch = ''

View File

@ -1,11 +1,12 @@
{
stdenv, lib, mkDerivation, fetchpatch,
stdenv, lib, mkDerivation,
extra-cmake-modules, kdoctools, qttools,
acl, attr, libkrb5, util-linux,
karchive, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons,
kdbusaddons, ki18n, kiconthemes, kitemviews, kjobwidgets, knotifications,
kservice, ktextwidgets, kwallet, kwidgetsaddons, kwindowsystem, kxmlgui,
qtbase, qtscript, qtx11extras, solid, kcrash, kded
qtbase, qtscript, qtx11extras, solid, kcrash, kded,
withKcms ? true
}:
mkDerivation {
@ -29,7 +30,11 @@ mkDerivation {
separateDebugInfo = true;
patches = [
./0001-Remove-impure-smbd-search-path.patch
];
];
postPatch = lib.optionalString (!withKcms) ''
substituteInPlace src/CMakeLists.txt \
--replace-fail "add_subdirectory(kcms)" ""
'';
meta = {
homepage = "https://api.kde.org/frameworks/kio/html/";
};

Some files were not shown because too many files have changed in this diff Show More