mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-10-02 04:50:21 +00:00
Merge staging-next into staging
This commit is contained in:
@@ -12615,6 +12615,12 @@
|
||||
githubId = 1903418;
|
||||
name = "Kovacsics Robert";
|
||||
};
|
||||
kpbaks = {
|
||||
email = "kristoffer.pbs@gmail.com";
|
||||
github = "kpbaks";
|
||||
githubId = 57013304;
|
||||
name = "Kristoffer Plagborg Bak Sørensen";
|
||||
};
|
||||
kpcyrd = {
|
||||
email = "git@rxv.cc";
|
||||
github = "kpcyrd";
|
||||
|
||||
@@ -517,6 +517,10 @@
|
||||
|
||||
- `services.gitea` now supports CAPTCHA usage through the `services.gitea.captcha` variable.
|
||||
|
||||
- The GRUB bootloader (`boot.loader.grub`) now generates [boot loader entries](https://uapi-group.org/specifications/specs/boot_loader_specification/).
|
||||
These files are used by userspace tools (for example, `bootctl`) to inspect the bootloader status, getting the default boot entry, the path of the kernel binary, etc.
|
||||
As a consequence, `systemctl kexec` now works automatically: specifying the kernel and its arguments with `kexec --load` is no longer required.
|
||||
|
||||
- `bind.cacheNetworks` now only controls access for recursive queries, where it previously controlled access for all queries.
|
||||
|
||||
- [`services.mongodb.enableAuth`](#opt-services.mongodb.enableAuth) now uses the newer [mongosh](https://github.com/mongodb-js/mongosh) shell instead of the legacy shell to configure the initial superuser. You can configure the mongosh package to use through the [`services.mongodb.mongoshPackage`](#opt-services.mongodb.mongoshPackage) option.
|
||||
|
||||
@@ -50,6 +50,10 @@ let
|
||||
then realGrub.override { efiSupport = cfg.efiSupport; }
|
||||
else null;
|
||||
|
||||
bootPath = if cfg.mirroredBoots != [ ]
|
||||
then (builtins.head cfg.mirroredBoots).path
|
||||
else "/boot";
|
||||
|
||||
f = x: optionalString (x != null) ("" + x);
|
||||
|
||||
grubConfig = args:
|
||||
@@ -756,6 +760,16 @@ in
|
||||
|
||||
environment.systemPackages = mkIf (grub != null) [ grub ];
|
||||
|
||||
# Link /boot under /run/boot-loder-entries to make
|
||||
# systemd happy even on non-EFI system
|
||||
systemd.mounts = lib.optional (!cfg.efiSupport) {
|
||||
what = bootPath;
|
||||
where = "/run/boot-loader-entries";
|
||||
type = "none";
|
||||
options = "bind";
|
||||
requiredBy = [ "local-fs.target" ];
|
||||
};
|
||||
|
||||
boot.loader.grub.extraPrepareConfig =
|
||||
concatStrings (mapAttrsToList (n: v: ''
|
||||
${pkgs.coreutils}/bin/install -Dp "${v}" "${efi.efiSysMountPoint}/"${escapeShellArg n}
|
||||
|
||||
@@ -99,7 +99,15 @@ $ENV{'PATH'} = get("path");
|
||||
|
||||
print STDERR "updating GRUB 2 menu...\n";
|
||||
|
||||
make_path("$bootPath/grub", { mode => 0700 });
|
||||
# Make GRUB directory
|
||||
make_path("$bootPath/grub", { mode => 0700 });
|
||||
|
||||
# Make BLS entries directory, see addBLSEntry
|
||||
make_path("$bootPath/loader/entries", { mode => 0700 });
|
||||
writeFile("$bootPath/loader/entries.srel", "type1");
|
||||
|
||||
# and a temporary one for new entries
|
||||
make_path("$bootPath/loader/entries.tmp", { mode => 0700 });
|
||||
|
||||
# Discover whether the bootPath is on the same filesystem as / and
|
||||
# /nix/store. If not, then all kernels and initrds must be copied to
|
||||
@@ -460,6 +468,7 @@ sub copyToKernelsDir {
|
||||
}
|
||||
|
||||
sub addEntry {
|
||||
# Creates a Grub menu entry for a given system
|
||||
my ($name, $path, $options, $current) = @_;
|
||||
return unless -e "$path/kernel" && -e "$path/initrd";
|
||||
|
||||
@@ -521,6 +530,58 @@ sub addEntry {
|
||||
$conf .= "}\n\n";
|
||||
}
|
||||
|
||||
sub addBLSEntry {
|
||||
# Creates a Boot Loader Specification[1] entry for a given system.
|
||||
# The information contained in the entry mirrors a boot entry in GRUB menu.
|
||||
#
|
||||
# [1]: https://uapi-group.org/specifications/specs/boot_loader_specification
|
||||
my ($prof, $spec, $gen, $link) = @_;
|
||||
|
||||
# collect data from system
|
||||
my %bootspec = %{decode_json(readFile("$link/boot.json"))->{"org.nixos.bootspec.v1"}};
|
||||
my $date = strftime("%F", localtime(lstat($link)->mtime));
|
||||
my $kernel = $bootspec{kernel} =~ s@$storePath/@@r =~ s@/@-@r;
|
||||
my $initrd = $bootspec{initrd} =~ s@$storePath/@@r =~ s@/@-@r;
|
||||
my $kernelParams = readFile("$link/kernel-params");
|
||||
my $machineId = readFile("/etc/machine-id");
|
||||
|
||||
if ($grubEfi eq "" && !$copyKernels) {
|
||||
# workaround for https://github.com/systemd/systemd/issues/35729
|
||||
make_path("$bootPath/kernels", { mode => 0755 });
|
||||
symlink($bootspec{kernel}, "$bootPath/kernels/$kernel");
|
||||
symlink($bootspec{initrd}, "$bootPath/kernels/$initrd");
|
||||
$copied{"$bootPath/kernels/$kernel"} = 1;
|
||||
$copied{"$bootPath/kernels/$initrd"} = 1;
|
||||
}
|
||||
|
||||
# fill in the entry
|
||||
my $extras = join(' ', $prof = $prof ne "system" ? " [$prof] " : "",
|
||||
$spec = $spec ne "" ? " ($spec) " : "");
|
||||
my $entry = <<~END;
|
||||
title @distroName@$extras
|
||||
sort-key nixos
|
||||
version Generation $gen $bootspec{label}, built on $date
|
||||
linux kernels/$kernel
|
||||
initrd kernels/$initrd
|
||||
options init=$bootspec{init} $kernelParams
|
||||
END
|
||||
$entry .= "machine-id $machineId" if defined $machineId;
|
||||
|
||||
# entry file basename
|
||||
my $name = join("-", grep { length $_ > 0 }
|
||||
"nixos", $prof ne "system" ? $prof : "",
|
||||
"generation", $gen,
|
||||
$spec ? "specialisation-$spec" : "");
|
||||
|
||||
# write entry to the temp directory
|
||||
writeFile("$bootPath/loader/entries.tmp/$name.conf", $entry);
|
||||
|
||||
# mark the default entry
|
||||
if (readlink($link) eq $defaultConfig) {
|
||||
writeFile("$bootPath/loader/loader.conf", "default $name.conf");
|
||||
}
|
||||
}
|
||||
|
||||
sub addGeneration {
|
||||
my ($name, $nameSuffix, $path, $options, $current) = @_;
|
||||
|
||||
@@ -592,12 +653,18 @@ sub addProfile {
|
||||
warn "skipping corrupt system profile entry ‘$link’\n";
|
||||
next;
|
||||
}
|
||||
my $gen = nrFromGen($link);
|
||||
my $date = strftime("%F", localtime(lstat($link)->mtime));
|
||||
my $version =
|
||||
-e "$link/nixos-version"
|
||||
? readFile("$link/nixos-version")
|
||||
: basename((glob(dirname(Cwd::abs_path("$link/kernel")) . "/lib/modules/*"))[0]);
|
||||
addGeneration("@distroName@ - Configuration " . nrFromGen($link), " ($date - $version)", $link, $subEntryOptions, 0);
|
||||
addGeneration("@distroName@ - Configuration " . $gen, " ($date - $version)", $link, $subEntryOptions, 0);
|
||||
|
||||
addBLSEntry(basename($profile), "", $gen, $link);
|
||||
foreach my $spec (glob "$link/specialisation/*") {
|
||||
addBLSEntry(basename($profile), $spec, $gen, $spec);
|
||||
}
|
||||
}
|
||||
|
||||
$conf .= "}\n";
|
||||
@@ -611,6 +678,12 @@ for my $profile (glob "/nix/var/nix/profiles/system-profiles/*") {
|
||||
addProfile $profile, "@distroName@ - Profile '$name'";
|
||||
}
|
||||
|
||||
# Atomically replace the BLS entries directory
|
||||
my $entriesDir = "$bootPath/loader/entries";
|
||||
rename $entriesDir, "$entriesDir.bak" or die "cannot rename $entriesDir to $entriesDir.bak: $!\n";
|
||||
rename "$entriesDir.tmp", $entriesDir or die "cannot rename $entriesDir.tmp to $entriesDir: $!\n";
|
||||
rmtree "$entriesDir.bak" or die "cannot remove $entriesDir.bak: $!\n";
|
||||
|
||||
# extraPrepareConfig could refer to @bootPath@, which we have to substitute
|
||||
$extraPrepareConfig =~ s/\@bootPath\@/$bootPath/g;
|
||||
|
||||
|
||||
@@ -463,7 +463,7 @@ in {
|
||||
greetd-no-shadow = handleTest ./greetd-no-shadow.nix {};
|
||||
grocy = handleTest ./grocy.nix {};
|
||||
grow-partition = runTest ./grow-partition.nix;
|
||||
grub = handleTest ./grub.nix {};
|
||||
grub = import ./grub.nix { inherit pkgs runTest; };
|
||||
guacamole-server = handleTest ./guacamole-server.nix {};
|
||||
guix = handleTest ./guix {};
|
||||
gvisor = handleTest ./gvisor.nix {};
|
||||
|
||||
@@ -1,60 +1,123 @@
|
||||
import ./make-test-python.nix ({ lib, ... }: {
|
||||
name = "grub";
|
||||
{ pkgs, runTest }:
|
||||
|
||||
meta = with lib.maintainers; {
|
||||
maintainers = [ rnhmjoj ];
|
||||
};
|
||||
{
|
||||
# Basic GRUB setup with BIOS and a password
|
||||
basic = runTest {
|
||||
name = "grub-basic";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ rnhmjoj ];
|
||||
|
||||
nodes.machine = { ... }: {
|
||||
virtualisation.useBootLoader = true;
|
||||
|
||||
boot.loader.timeout = null;
|
||||
boot.loader.grub = {
|
||||
enable = true;
|
||||
users.alice.password = "supersecret";
|
||||
|
||||
# OCR is not accurate enough
|
||||
extraConfig = "serial; terminal_output serial";
|
||||
nodes.machine = { ... }: {
|
||||
virtualisation.useBootLoader = true;
|
||||
boot.loader.timeout = null;
|
||||
boot.loader.grub = {
|
||||
enable = true;
|
||||
users.alice.password = "supersecret";
|
||||
# OCR is not accurate enough
|
||||
extraConfig = "serial; terminal_output serial";
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
def grub_login_as(user, password):
|
||||
"""
|
||||
Enters user and password to log into GRUB
|
||||
"""
|
||||
machine.wait_for_console_text("Enter username:")
|
||||
machine.send_chars(user + "\n")
|
||||
machine.wait_for_console_text("Enter password:")
|
||||
machine.send_chars(password + "\n")
|
||||
|
||||
|
||||
def grub_select_all_configurations():
|
||||
"""
|
||||
Selects "All configurations" from the GRUB menu
|
||||
to trigger a login request.
|
||||
"""
|
||||
machine.send_monitor_command("sendkey down")
|
||||
machine.send_monitor_command("sendkey ret")
|
||||
|
||||
|
||||
machine.start()
|
||||
|
||||
# wait for grub screen
|
||||
machine.wait_for_console_text("GNU GRUB")
|
||||
|
||||
grub_select_all_configurations()
|
||||
with subtest("Invalid credentials are rejected"):
|
||||
grub_login_as("wronguser", "wrongsecret")
|
||||
machine.wait_for_console_text("error: access denied.")
|
||||
|
||||
grub_select_all_configurations()
|
||||
with subtest("Valid credentials are accepted"):
|
||||
grub_login_as("alice", "supersecret")
|
||||
machine.send_chars("\n") # press enter to boot
|
||||
machine.wait_for_console_text("Linux version")
|
||||
|
||||
with subtest("Machine boots correctly"):
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
};
|
||||
|
||||
# Test boot loader entries on EFI
|
||||
bls-efi = runTest {
|
||||
name = "grub-bls-efi";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ rnhmjoj ];
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
virtualisation.useBootLoader = true;
|
||||
virtualisation.useEFIBoot = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader.grub.enable = true;
|
||||
boot.loader.grub.efiSupport = true;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
with subtest("Machine boots correctly"):
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
with subtest("Boot entries are installed"):
|
||||
entries = machine.succeed("bootctl list")
|
||||
print(entries)
|
||||
error = "NixOS boot entry not found in bootctl list."
|
||||
assert "version: Generation 1" in entries, error
|
||||
|
||||
with subtest("systemctl kexec can detect the kernel"):
|
||||
machine.succeed("systemctl kexec --dry-run")
|
||||
|
||||
with subtest("systemctl kexec really works"):
|
||||
machine.execute("systemctl kexec", check_return=False)
|
||||
machine.connected = False
|
||||
machine.connect()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
def grub_login_as(user, password):
|
||||
"""
|
||||
Enters user and password to log into GRUB
|
||||
"""
|
||||
machine.wait_for_console_text("Enter username:")
|
||||
machine.send_chars(user + "\n")
|
||||
machine.wait_for_console_text("Enter password:")
|
||||
machine.send_chars(password + "\n")
|
||||
# Test boot loader entries on BIOS
|
||||
bls-bios = runTest {
|
||||
name = "grub-bls-bios";
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ rnhmjoj ];
|
||||
|
||||
nodes.machine = { pkgs, ... }: {
|
||||
virtualisation.useBootLoader = true;
|
||||
boot.loader.grub.enable = true;
|
||||
};
|
||||
|
||||
def grub_select_all_configurations():
|
||||
"""
|
||||
Selects "All configurations" from the GRUB menu
|
||||
to trigger a login request.
|
||||
"""
|
||||
machine.send_monitor_command("sendkey down")
|
||||
machine.send_monitor_command("sendkey ret")
|
||||
testScript = ''
|
||||
with subtest("Machine boots correctly"):
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
|
||||
with subtest("Boot entries are installed"):
|
||||
machine.succeed("test -f /boot/loader/entries/nixos-generation-1.conf")
|
||||
|
||||
machine.start()
|
||||
with subtest("systemctl kexec can detect the kernel"):
|
||||
machine.succeed("systemctl kexec --dry-run")
|
||||
|
||||
# wait for grub screen
|
||||
machine.wait_for_console_text("GNU GRUB")
|
||||
with subtest("systemctl kexec really works"):
|
||||
machine.execute("systemctl kexec", check_return=False)
|
||||
machine.connected = False
|
||||
machine.connect()
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
};
|
||||
|
||||
grub_select_all_configurations()
|
||||
with subtest("Invalid credentials are rejected"):
|
||||
grub_login_as("wronguser", "wrongsecret")
|
||||
machine.wait_for_console_text("error: access denied.")
|
||||
|
||||
grub_select_all_configurations()
|
||||
with subtest("Valid credentials are accepted"):
|
||||
grub_login_as("alice", "supersecret")
|
||||
machine.send_chars("\n") # press enter to boot
|
||||
machine.wait_for_console_text("Linux version")
|
||||
|
||||
with subtest("Machine boots correctly"):
|
||||
machine.wait_for_unit("multi-user.target")
|
||||
'';
|
||||
})
|
||||
}
|
||||
|
||||
@@ -71,5 +71,8 @@ import ./make-test-python.nix ({ pkgs, lib, withNg ? false, ... }: {
|
||||
# at this point we've tested regression #262724, but haven't tested the bootloader itself
|
||||
# TODO: figure out how to how to tell the test driver to start the bootloader instead of
|
||||
# booting into the kernel directly.
|
||||
|
||||
with subtest("New boot entry has been added"):
|
||||
machine.succeed("test -f /boot/loader/entries/nixos-generation-2.conf")
|
||||
'';
|
||||
})
|
||||
|
||||
@@ -9,12 +9,12 @@
|
||||
replaceVars,
|
||||
}:
|
||||
let
|
||||
version = "0.13.0";
|
||||
version = "0.13.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Saghen";
|
||||
repo = "blink.cmp";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-sZmWEJwphmuBt43kuFM84CV+muSour1/R9lF4S5lbvs=";
|
||||
hash = "sha256-eOlTkWMzQTZPPKPKUxg8Q2PwkOhfaQdrMZkg9Ew8t/g=";
|
||||
};
|
||||
blink-fuzzy-lib = rustPlatform.buildRustPackage {
|
||||
inherit version src;
|
||||
|
||||
24
pkgs/by-name/a-/a-keys-path/export_presets.cfg
Normal file
24
pkgs/by-name/a-/a-keys-path/export_presets.cfg
Normal file
@@ -0,0 +1,24 @@
|
||||
[preset.0]
|
||||
|
||||
name="Linux"
|
||||
platform="Linux/X11"
|
||||
runnable=true
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path=""
|
||||
script_export_mode=1
|
||||
script_encryption_key=""
|
||||
|
||||
[preset.0.options]
|
||||
|
||||
custom_template/debug=""
|
||||
custom_template/release=""
|
||||
binary_format/64_bits=true
|
||||
binary_format/embed_pck=false
|
||||
texture_format/bptc=false
|
||||
texture_format/s3tc=true
|
||||
texture_format/etc=false
|
||||
texture_format/etc2=false
|
||||
texture_format/no_bptc_fallbacks=true
|
||||
121
pkgs/by-name/a-/a-keys-path/package.nix
Normal file
121
pkgs/by-name/a-/a-keys-path/package.nix
Normal file
@@ -0,0 +1,121 @@
|
||||
# copied from oh-my-git/package.nix by @jojosch (Johannes Schleifenbaum)
|
||||
# added in nixos/nixpkgs#119642
|
||||
{
|
||||
lib,
|
||||
autoPatchelfHook,
|
||||
copyDesktopItems,
|
||||
fetchFromGitHub,
|
||||
makeDesktopItem,
|
||||
stdenv,
|
||||
alsa-lib,
|
||||
godot3-export-templates,
|
||||
godot3-headless,
|
||||
libX11,
|
||||
libXcursor,
|
||||
libXext,
|
||||
libXi,
|
||||
libXinerama,
|
||||
libXrandr,
|
||||
libXrender,
|
||||
libglvnd,
|
||||
writableTmpDirAsHomeHook,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "a-keys-path";
|
||||
version = "0.7.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "geegaz";
|
||||
repo = "A-Key-s-Path";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-i9INPB883/0fmtZgJpVpsA/7Q51DHOMWvkLF9hKE6gQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
copyDesktopItems
|
||||
godot3-headless
|
||||
|
||||
# Cannot create file '/homeless-shelter/.config/godot/projects/...'
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libX11
|
||||
libXcursor
|
||||
libXext
|
||||
libXi
|
||||
libXinerama
|
||||
libXrandr
|
||||
libXrender
|
||||
libglvnd
|
||||
];
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "a-keys-path";
|
||||
exec = "a-keys-path";
|
||||
icon = "a-keys-path";
|
||||
desktopName = "a-keys-path";
|
||||
comment = "A game where you build your way with your keys";
|
||||
genericName = "A Key's Path";
|
||||
categories = [ "Game" ];
|
||||
};
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
# Link the export-templates to the expected location. The --export commands
|
||||
# expects the template-file at .../templates/3.2.3.stable/linux_x11_64_release
|
||||
# with 3.2.3 being the version of godot.
|
||||
mkdir -p $HOME/.local/share/godot
|
||||
ln -s ${godot3-export-templates}/share/godot/templates $HOME/.local/share/godot
|
||||
|
||||
# export_presets.cfg copied here as it is .gitignored in source
|
||||
# created by godot editor (godot3 -e) Project > Export... and add Linux
|
||||
cp ${./export_presets.cfg} export_presets.cfg
|
||||
|
||||
mkdir -p $out/share/a-keys-path
|
||||
godot3-headless --export "Linux" $out/share/a-keys-path/a-keys-path
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/share/a-keys-path/a-keys-path $out/bin
|
||||
|
||||
# Patch binaries.
|
||||
interpreter=$(cat $NIX_CC/nix-support/dynamic-linker)
|
||||
patchelf \
|
||||
--set-interpreter $interpreter \
|
||||
--set-rpath ${lib.makeLibraryPath finalAttrs.buildInputs} \
|
||||
$out/share/a-keys-path/a-keys-path
|
||||
|
||||
mkdir -p $out/share/pixmaps
|
||||
cp icon.png $out/share/pixmaps/a-keys-path.png
|
||||
|
||||
install -Dm644 ${finalAttrs.desktopItem}/share/applications/a-keys-path.desktop \
|
||||
$out/share/applications/a-keys-path.desktop
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
runtimeDependencies = map lib.getLib [
|
||||
alsa-lib
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://geegaz.itch.io/out-of-controls";
|
||||
description = "Short puzzle-platformer game made with Godot, running on GLES 2.0";
|
||||
mainProgram = "a-keys-path";
|
||||
license = with lib.licenses; [
|
||||
gpl3Only
|
||||
cc-by-sa-40
|
||||
cc0
|
||||
];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
maintainers = with lib.maintainers; [ phanirithvij ];
|
||||
};
|
||||
})
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "all-the-package-names";
|
||||
version = "2.0.2042";
|
||||
version = "2.0.2070";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nice-registry";
|
||||
repo = "all-the-package-names";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-663gKreskI6Fleg5YNYTmqXx0HBZS+as/yc/XGqtpVc=";
|
||||
hash = "sha256-yODB3vnQ3V0p+2tatYStrc5X1hA3nfm+mULhGEgIIPc=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-YmSNf3rdQghHxNT/ziOqtpBx2MWAJb2NcG0KwPN6mmk=";
|
||||
npmDepsHash = "sha256-Ylqp5Zq04VyL4jYDkv4VLg2up2qFldHqleJaKQXKE/s=";
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
||||
@@ -56,13 +56,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "amnezia-vpn";
|
||||
version = "4.8.3.2";
|
||||
version = "4.8.4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "amnezia-vpn";
|
||||
repo = "amnezia-client";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-PUI83egVH0P5b+4aMll91LqQ9v5WlJF8prrbqO9+mC8=";
|
||||
hash = "sha256-iZKmwbSvyLTW9xWi/6WIwB1BeZai326e0Ut7x1RmKFw=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
69
pkgs/by-name/ao/aonsoku/package.nix
Normal file
69
pkgs/by-name/ao/aonsoku/package.nix
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
rustPlatform,
|
||||
|
||||
cargo-tauri,
|
||||
nodejs,
|
||||
pnpm,
|
||||
|
||||
pkg-config,
|
||||
wrapGAppsHook3,
|
||||
|
||||
openssl,
|
||||
libsoup_2_4,
|
||||
webkitgtk_4_1,
|
||||
glib-networking,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "aonsoku";
|
||||
version = "0.8.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "victoralvesf";
|
||||
repo = "aonsoku";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-A1U1ubprwYJvyqTe5gVYTo8687sfP/76GfA+2EmtoCo=";
|
||||
};
|
||||
|
||||
pnpmDeps = pnpm.fetchDeps {
|
||||
inherit (finalAttrs) pname version src;
|
||||
hash = "sha256-BMEBJRycmOgsI1loTPTNY1dVOJ0HTCnzg0QyNAzZMn4=";
|
||||
};
|
||||
|
||||
cargoRoot = "src-tauri";
|
||||
buildAndTestSubdir = finalAttrs.cargoRoot;
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-yuKaf05bQFah3MTC0eF82pMmTJrllWfUKX3SdIWbPjM=";
|
||||
|
||||
patches = [ ./remove_updater.patch ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs
|
||||
pnpm.configHook
|
||||
cargo-tauri.hook
|
||||
|
||||
pkg-config
|
||||
wrapGAppsHook3
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
openssl
|
||||
libsoup_2_4
|
||||
webkitgtk_4_1
|
||||
glib-networking
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Modern desktop client for Navidrome/Subsonic servers";
|
||||
homepage = "https://github.com/victoralvesf/aonsoku";
|
||||
changelog = "https://github.com/victoralvesf/aonsoku/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ genga898 ];
|
||||
mainProgram = "Aonsoku";
|
||||
};
|
||||
})
|
||||
46
pkgs/by-name/ao/aonsoku/remove_updater.patch
Normal file
46
pkgs/by-name/ao/aonsoku/remove_updater.patch
Normal file
@@ -0,0 +1,46 @@
|
||||
diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs
|
||||
index 112ee8e..35137f2 100644
|
||||
--- a/src-tauri/src/main.rs
|
||||
+++ b/src-tauri/src/main.rs
|
||||
@@ -50,7 +50,6 @@ fn main() {
|
||||
Ok(())
|
||||
})
|
||||
.plugin(tauri_plugin_shell::init())
|
||||
- .plugin(tauri_plugin_updater::Builder::new().build())
|
||||
.plugin(tauri_plugin_process::init())
|
||||
.plugin(tauri_plugin_os::init())
|
||||
.invoke_handler(tauri::generate_handler![commands::download_file])
|
||||
diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json
|
||||
index 3afc5f6..19785e5 100644
|
||||
--- a/src-tauri/tauri.conf.json
|
||||
+++ b/src-tauri/tauri.conf.json
|
||||
@@ -8,7 +8,6 @@
|
||||
"bundle": {
|
||||
"active": true,
|
||||
"category": "Music",
|
||||
- "createUpdaterArtifacts": true,
|
||||
"targets": "all",
|
||||
"icon": [
|
||||
"icons/32x32.png",
|
||||
@@ -26,14 +25,6 @@
|
||||
"productName": "Aonsoku",
|
||||
"mainBinaryName": "Aonsoku",
|
||||
"identifier": "com.victoralvesf.aonsoku",
|
||||
- "plugins": {
|
||||
- "updater": {
|
||||
- "pubkey": "dW50cnVzdGVkIGNvbW1lbnQ6IG1pbmlzaWduIHB1YmxpYyBrZXk6IDRDNTlENjZCNTJFRDdDRDAKUldUUWZPMVNhOVpaVENsbXg5RTM1TzFnME43TmZoaHU5bWplS1VSSW9YcE1QT0w1ZHRIWHNUOVoK",
|
||||
- "endpoints": [
|
||||
- "https://github.com/victoralvesf/aonsoku/releases/latest/download/latest.json"
|
||||
- ]
|
||||
- }
|
||||
- },
|
||||
"app": {
|
||||
"withGlobalTauri": true,
|
||||
"security": {
|
||||
@@ -56,4 +47,4 @@
|
||||
}
|
||||
]
|
||||
}
|
||||
-}
|
||||
\ No newline at end of file
|
||||
+}
|
||||
@@ -64,14 +64,14 @@ let
|
||||
in
|
||||
py.pkgs.buildPythonApplication rec {
|
||||
pname = "awscli2";
|
||||
version = "2.23.11"; # N.B: if you change this, check if overrides are still up-to-date
|
||||
version = "2.24.7"; # N.B: if you change this, check if overrides are still up-to-date
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "aws";
|
||||
repo = "aws-cli";
|
||||
tag = version;
|
||||
hash = "sha256-ID0hQiR0qOTJMOvRAgEJLheblkY77yIgu1Ofa/6r7nk=";
|
||||
hash = "sha256-yTfTWLI12ASKb6zkXb37vARIOVBLxqFWvtEDOMjXges=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
63
pkgs/by-name/bu/bumpp/package.nix
Normal file
63
pkgs/by-name/bu/bumpp/package.nix
Normal file
@@ -0,0 +1,63 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
nodejs,
|
||||
pnpm_9,
|
||||
npmHooks,
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
let
|
||||
pnpm = pnpm_9;
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "bumpp";
|
||||
version = "10.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "antfu-collective";
|
||||
repo = "bumpp";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-7e0p/mrGtyUO3za02d6fGS3ynF/txjieQ5w48UZooKQ=";
|
||||
};
|
||||
|
||||
pnpmDeps = pnpm.fetchDeps {
|
||||
inherit (finalAttrs) pname version src;
|
||||
hash = "sha256-NztqIE/0FSeFdteCPAPm/KgrD0Ax95HKe0FwWjj9unc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs
|
||||
pnpm.configHook
|
||||
npmHooks.npmInstallHook
|
||||
];
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
pnpm run build
|
||||
find dist -type f \( -name '*.cjs' -or -name '*.cts' -or -name '*.ts' \) -delete
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
dontNpmPrune = true;
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
];
|
||||
versionCheckProgramArg = [ "--version" ];
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Interactive CLI that bumps your version numbers and more";
|
||||
homepage = "https://github.com/antfu-collective/bumpp";
|
||||
changelog = "https://github.com/antfu-collective/bumpp/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ xiaoxiangmoe ];
|
||||
mainProgram = "bumpp";
|
||||
};
|
||||
})
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "candy-icons";
|
||||
version = "0-unstable-2025-02-08";
|
||||
version = "0-unstable-2025-02-23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "EliverLara";
|
||||
repo = "candy-icons";
|
||||
rev = "19b7c01be70bb29475cd939638972ddbb7a33194";
|
||||
hash = "sha256-fUQCC4B3+DOxjvX6Fjxy8BBE+piPfbvbKbrIj1Yc6us=";
|
||||
rev = "75e873759d68b0fe3b52c7939edeb83f01db769b";
|
||||
hash = "sha256-tBO8aw4hYe0DxQovdJ39uWhRAQWqR06Prq9XIz1OADk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gtk3 ];
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
npmHooks,
|
||||
nix-update-script,
|
||||
}:
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "coc-diagnostic";
|
||||
version = "0.24.1";
|
||||
|
||||
@@ -22,7 +22,7 @@ stdenvNoCC.mkDerivation rec {
|
||||
};
|
||||
|
||||
yarnOfflineCache = fetchYarnDeps {
|
||||
yarnLock = "${src}/yarn.lock";
|
||||
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||||
hash = "sha256-/WBOZKIIE2ERKuGwG+unXyam2JavPOuUeSIwZQ9RiHY=";
|
||||
};
|
||||
|
||||
@@ -33,6 +33,11 @@ stdenvNoCC.mkDerivation rec {
|
||||
npmHooks.npmInstallHook
|
||||
];
|
||||
|
||||
# ERROR: noBrokenSymlinks: found 1 dangling symlinks and 0 reflexive symlinks
|
||||
postFixup = ''
|
||||
unlink $out/lib/node_modules/coc-diagnostic/node_modules/.bin/node-which
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
@@ -41,4 +46,4 @@ stdenvNoCC.mkDerivation rec {
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ pyrox0 ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -13,11 +13,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "epic5";
|
||||
version = "3.0.2";
|
||||
version = "3.0.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://ftp.epicsol.org/pub/epic/EPIC5-PRODUCTION/epic5-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-QiD9Lx4IxbR+w0NFw5cANqN9cvu1QR45wQ87zlV8FNU=";
|
||||
hash = "sha256-Y6QRIVwUBAtltdcor/EPdSPVXhcPYpj7AeHPlY150yY=";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gitlab-ci-ls";
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
src = fetchFromGitHub {
|
||||
owner = "alesbrelih";
|
||||
repo = "gitlab-ci-ls";
|
||||
rev = "${version}";
|
||||
hash = "sha256-G0MKq2qGxcMpNOQDHo9LtewDEExYIA8/kTUkiZdnygg=";
|
||||
hash = "sha256-T6ITTxaBSYAu1h27uSE7AUpURpr38Z1wjBZY3A7U5Rg=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-0Ll1C4N3Zx/SDnlXdIzUa88q/SCSsptFYnHM+uVwPZM=";
|
||||
cargoHash = "sha256-Sr8lAF8I9FFB1cNeN1jhixIOUyhj4c8sSZdHVj9+KfE=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs =
|
||||
|
||||
6904
pkgs/by-name/go/goose-cli/Cargo.lock
generated
6904
pkgs/by-name/go/goose-cli/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -26,21 +26,17 @@ let
|
||||
in
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "goose-cli";
|
||||
version = "1.0.7";
|
||||
version = "1.0.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "block";
|
||||
repo = "goose";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-/PCEszhRPxXSvvlNX8EVQTqLJwGF5N3ry+XuykiGV5U=";
|
||||
hash = "sha256-GPlxA6ZIy+kLFicuqGqtom9iavNV+geKJIwVBLDg4KE=";
|
||||
};
|
||||
|
||||
cargoLock.lockFile = ./Cargo.lock;
|
||||
|
||||
postPatch = ''
|
||||
# no Cargo.lock in src
|
||||
ln -s ${./Cargo.lock} Cargo.lock
|
||||
'';
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-Ty1ygZ4BB1eHkMffRWXhfvXK5QtZXejYy0kXRPYXdME=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
@@ -63,6 +59,8 @@ rustPlatform.buildRustPackage rec {
|
||||
# need dbus-daemon
|
||||
"--skip=config::base::tests::test_multiple_secrets"
|
||||
"--skip=config::base::tests::test_secret_management"
|
||||
# Observer should be Some with both init project keys set
|
||||
"--skip=tracing::langfuse_layer::tests::test_create_langfuse_observer"
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
# Lazy instance has previously been poisoned
|
||||
@@ -70,14 +68,14 @@ rustPlatform.buildRustPackage rec {
|
||||
"--skip=jetbrains::tests::test_router_creation"
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { extraArgs = [ "--generate-lockfile" ]; };
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Open-source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM";
|
||||
homepage = "https://github.com/block/goose";
|
||||
mainProgram = "goose";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ nayeko ];
|
||||
maintainers = with lib.maintainers; [ cloudripper ];
|
||||
platforms = lib.platforms.linux ++ lib.platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "minio-warp";
|
||||
version = "1.1.0";
|
||||
version = "1.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "minio";
|
||||
repo = "warp";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-8GQ0rSy+bzji1IZu6vHEXjYVVuQSLlSCwWmzjLE9a+A=";
|
||||
hash = "sha256-zRRvY/PpLSY8cx3vqcAGfVK7FJKzFnxtghhIwrlUh+Y=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Qyb8ivuZplbOIxoS2cC+2FSZbW7CnChv1jaIKkCzgN4=";
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mu";
|
||||
version = "1.12.8";
|
||||
version = "1.12.9";
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "djcb";
|
||||
repo = "mu";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-lc6GWGvWy/RjjY64vu8n8OtBUZjN6L8OQ/Q01eM34h4=";
|
||||
hash = "sha256-o6K1xHv6dvzv1oRRiAiSXAqTaC0GcPDQ+ymh5kmH98k=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
php.buildComposerProject2 (finalAttrs: {
|
||||
pname = "n98-magerun2";
|
||||
version = "7.5.0";
|
||||
version = "8.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netz98";
|
||||
repo = "n98-magerun2";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-1wHRzh/Fdxdgx70fIPNOIpqBX9IvYPJnV7CZ5hLQ0qE=";
|
||||
hash = "sha256-MzJJkbT3AgSX+lLEfKlfg0zTY/79CcFelOK83NnSWI0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-KULTijHG5717dDOfvB4yR+ztrB+mbYaosgmg8aV/GAs=";
|
||||
vendorHash = "sha256-4w4HqYSSeVZnsgMGt+m8XN98RuAv7XmVo1vHtEXA0Uk=";
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
|
||||
@@ -316,6 +316,7 @@ python.pkgs.buildPythonApplication rec {
|
||||
changelog = "https://github.com/paperless-ngx/paperless-ngx/releases/tag/v${version}";
|
||||
license = licenses.gpl3Only;
|
||||
platforms = platforms.unix;
|
||||
mainProgram = "paperless-ngx";
|
||||
maintainers = with maintainers; [
|
||||
leona
|
||||
SuperSandro2000
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
libXt,
|
||||
libpcap,
|
||||
libusb1,
|
||||
llvmPackages,
|
||||
|
||||
# nativeBuildInputs
|
||||
boost,
|
||||
@@ -58,6 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
libpcap
|
||||
libsForQt5.qtbase
|
||||
libusb1
|
||||
llvmPackages.openmp
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
@@ -82,11 +84,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
description = "Open project for 2D/3D image and point cloud processing";
|
||||
changelog = "https://github.com/PointCloudLibrary/pcl/blob/pcl-${finalAttrs.version}/CHANGES.md";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ GaetanLepage ];
|
||||
platforms = with lib.platforms; linux ++ darwin;
|
||||
badPlatforms = [
|
||||
# fatal error: 'omp.h' file not found
|
||||
lib.systems.inspect.patterns.isDarwin
|
||||
maintainers = with lib.maintainers; [
|
||||
GaetanLepage
|
||||
usertam
|
||||
];
|
||||
platforms = with lib.platforms; linux ++ darwin;
|
||||
};
|
||||
})
|
||||
|
||||
@@ -15,19 +15,19 @@
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "ruff";
|
||||
version = "0.9.8";
|
||||
version = "0.9.9";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "astral-sh";
|
||||
repo = "ruff";
|
||||
tag = version;
|
||||
hash = "sha256-vsbsKxG2iOu6Pa1PmCGXa2zcYJmIHInnguiiLdW8bK8=";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-SPthKFnUdBZwcLZm5EWmjskgdpO1+Llr6QEi8+a1cY0=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-XZnKeBSBGa9gMlKq/jCB0Vy3e3rUAu33scbWiDEY8I4=";
|
||||
cargoHash = "sha256-DNHl04LLKh4hUU4ZmI3UKSrMO7vHL6GjpbxKLYgBQ/A=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
@@ -82,7 +82,7 @@ rustPlatform.buildRustPackage rec {
|
||||
meta = {
|
||||
description = "Extremely fast Python linter and code formatter";
|
||||
homepage = "https://github.com/astral-sh/ruff";
|
||||
changelog = "https://github.com/astral-sh/ruff/releases/tag/${version}";
|
||||
changelog = "https://github.com/astral-sh/ruff/releases/tag/${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "ruff";
|
||||
maintainers = with lib.maintainers; [
|
||||
@@ -90,4 +90,4 @@ rustPlatform.buildRustPackage rec {
|
||||
GaetanLepage
|
||||
];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
rustPlatform,
|
||||
withCitation ? true,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "simple-completion-language-server";
|
||||
version = "0-unstable-2025-01-31";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "estin";
|
||||
repo = "simple-completion-language-server";
|
||||
rev = "f6ab8e8374d046e5c6ff36cc9804dfc708b56c02";
|
||||
hash = "sha256-ot2h85cn2ID7GAOSJvIeKcC3uUYzS3TWQ4Ql6MzPG50=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
cargoHash = "sha256-L0Xa+B5hMkVKdOD0YAyGErbgAY68CHzzeP0CLew0BMs=";
|
||||
|
||||
buildFeatures = lib.optional withCitation [ "citation" ];
|
||||
|
||||
meta = {
|
||||
description = "Language server to enable word completion and snippets for Helix editor";
|
||||
homepage = "https://github.com/estin/simple-completion-language-server";
|
||||
license = [ lib.licenses.mit ];
|
||||
maintainers = [ lib.maintainers.kpbaks ];
|
||||
mainProgram = "simple-completion-language-server";
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -11,13 +11,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "sql-formatter";
|
||||
version = "15.4.10";
|
||||
version = "15.4.11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sql-formatter-org";
|
||||
repo = "sql-formatter";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-KRF4AFBkXzy9wYBTTsc4LvlLNbSohzbdbue+SZjNTJo=";
|
||||
hash = "sha256-WgMKL4v1XVNsFieWV88qOeuFVuU81KILUwzvc2APnIY=";
|
||||
};
|
||||
|
||||
yarnOfflineCache = fetchYarnDeps {
|
||||
|
||||
63
pkgs/by-name/ta/taze/package.nix
Normal file
63
pkgs/by-name/ta/taze/package.nix
Normal file
@@ -0,0 +1,63 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
nodejs,
|
||||
pnpm_9,
|
||||
npmHooks,
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
let
|
||||
pnpm = pnpm_9;
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "taze";
|
||||
version = "18.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "antfu-collective";
|
||||
repo = "taze";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-IHWDBX2j+HQ77gGLcUBxywDbN6jHEVxT+x6ojWKPr3I=";
|
||||
};
|
||||
|
||||
pnpmDeps = pnpm.fetchDeps {
|
||||
inherit (finalAttrs) pname version src;
|
||||
hash = "sha256-dlGW5WQMctVoVWLd+MnnNlmSh/MRxwcnlkCb5Dm7qsU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
nodejs
|
||||
pnpm.configHook
|
||||
npmHooks.npmInstallHook
|
||||
];
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
pnpm run build
|
||||
find dist -type f \( -name '*.cjs' -or -name '*.cts' -or -name '*.ts' \) -delete
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
dontNpmPrune = true;
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
];
|
||||
versionCheckProgramArg = [ "--version" ];
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Modern cli tool that keeps your deps fresh";
|
||||
homepage = "https://github.com/antfu-collective/taze";
|
||||
changelog = "https://github.com/antfu-collective/taze/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ xiaoxiangmoe ];
|
||||
mainProgram = "taze";
|
||||
};
|
||||
})
|
||||
@@ -5,16 +5,16 @@
|
||||
}:
|
||||
buildGoModule rec {
|
||||
pname = "tfswitch";
|
||||
version = "1.3.0";
|
||||
version = "1.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "warrensbox";
|
||||
repo = "terraform-switcher";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Rpr/S22UX6+fHc71jnMo6kR+8kjJAboLog9vMwYTpnQ=";
|
||||
sha256 = "sha256-PiYyufx6kXM1QH94LhJnt/cQHD9lpp+hA7hS7p3LNTU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-9oM7VrPZrZlR1s+vvjwpWvKdmknfbgd3hpvYByKQtgs=";
|
||||
vendorHash = "sha256-nyCa8pGgTpcaEmGHqEIvqmp53eTO4o6NmS88w2QlnPA=";
|
||||
|
||||
# Disable tests since it requires network access and relies on the
|
||||
# presence of release.hashicorp.com
|
||||
|
||||
44
pkgs/by-name/tr/tray-tui/package.nix
Normal file
44
pkgs/by-name/tr/tray-tui/package.nix
Normal file
@@ -0,0 +1,44 @@
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
installShellFiles,
|
||||
nix-update-script,
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "tray-tui";
|
||||
version = "0.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Levizor";
|
||||
repo = "tray-tui";
|
||||
tag = version;
|
||||
hash = "sha256-N/ECG8J1wVoMevj3sDHiZiXIWmb6gKQFUfK0BiNHICM=";
|
||||
};
|
||||
|
||||
useFetchCargoVendor = true;
|
||||
|
||||
cargoHash = "sha256-COz4tY6VwjpwxLNe7JIs8CBXlQyQIaDhMQkeZRKk5Zs=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
installShellCompletion --cmd tray-tui \
|
||||
--bash <($out/bin/tray-tui --completions bash) \
|
||||
--zsh <($out/bin/tray-tui --completions zsh) \
|
||||
--fish <($out/bin/tray-tui --completions fish)
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "System tray in your terminal";
|
||||
homepage = "https://github.com/Levizor/tray-tui";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "tray-tui";
|
||||
maintainers = with lib.maintainers; [ Levizor ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -27,7 +27,7 @@ let
|
||||
in
|
||||
python.pkgs.buildPythonApplication rec {
|
||||
pname = "weblate";
|
||||
version = "5.10.1";
|
||||
version = "5.10.2";
|
||||
|
||||
pyproject = true;
|
||||
|
||||
@@ -40,7 +40,7 @@ python.pkgs.buildPythonApplication rec {
|
||||
owner = "WeblateOrg";
|
||||
repo = "weblate";
|
||||
tag = "weblate-${version}";
|
||||
hash = "sha256-6yzloduhQ4pUJFMdrZ0SCWC+tugjIIcrEo0ZVOCAQ50=";
|
||||
hash = "sha256-n/RqXEBDcg97bwBPD+mxTw7J2GYzsTq4pu0XaHYA8h4=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
, protobuf_29
|
||||
, config
|
||||
, ocl-icd
|
||||
, buildPackages
|
||||
, qimgv
|
||||
, opencv4
|
||||
|
||||
@@ -44,7 +43,7 @@
|
||||
, enableCublas ? enableCuda
|
||||
, enableCudnn ? false # NOTE: CUDNN has a large impact on closure size so we disable it by default
|
||||
, enableCufft ? enableCuda
|
||||
, cudaPackages ? cudaPackages
|
||||
, cudaPackages
|
||||
, nvidia-optical-flow-sdk
|
||||
|
||||
, enableLto ? true
|
||||
@@ -100,7 +99,6 @@
|
||||
let
|
||||
inherit (lib.attrsets) mapAttrsToList optionalAttrs;
|
||||
inherit (lib.lists) last optionals;
|
||||
inherit (lib.meta) getExe;
|
||||
inherit (lib.strings) cmakeBool cmakeFeature cmakeOptionType concatStrings concatStringsSep optionalString;
|
||||
inherit (lib.trivial) flip;
|
||||
|
||||
@@ -213,7 +211,7 @@ let
|
||||
hash = "sha256-O+Yshk3N2Lkl6S9qWxWnoDmBngSms88IiCfwjPLMB78=";
|
||||
};
|
||||
name = "v0.1.2e.zip";
|
||||
md5 = "";
|
||||
md5 = "962ce79e0b95591f226431f7b5f152cd";
|
||||
dst = ".cache/ade";
|
||||
};
|
||||
|
||||
|
||||
@@ -38,14 +38,16 @@ buildPythonPackage rec {
|
||||
dnspython
|
||||
];
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
nativeCheckInputs = [
|
||||
libredirect.hook
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "ipwhois" ];
|
||||
|
||||
preCheck = lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
echo "nameserver 127.0.0.1" > resolv.conf
|
||||
export NIX_REDIRECTS=/etc/protocols=${iana-etc}/etc/protocols:/etc/resolv.conf=$(realpath resolv.conf) \
|
||||
LD_PRELOAD=${libredirect}/lib/libredirect.so
|
||||
export NIX_REDIRECTS=/etc/protocols=${iana-etc}/etc/protocols:/etc/resolv.conf=$(realpath resolv.conf)
|
||||
'';
|
||||
|
||||
disabledTestPaths = [
|
||||
|
||||
@@ -166,8 +166,8 @@ rec {
|
||||
"sha256-SFybjQDlMxvgIFQbv/D6wDexm+s4u26I6Lj2T94vwak=";
|
||||
|
||||
mypy-boto3-batch =
|
||||
buildMypyBoto3Package "batch" "1.37.0"
|
||||
"sha256-FRkn9wyzw5uuM8i40Vj+Nv7+gRN8jAa7ijfIWcU3XWo=";
|
||||
buildMypyBoto3Package "batch" "1.37.2"
|
||||
"sha256-cEJJucCt54tLZBZKseJWFzW+baIoySP2igPcgfj7Ri0=";
|
||||
|
||||
mypy-boto3-billingconductor =
|
||||
buildMypyBoto3Package "billingconductor" "1.37.0"
|
||||
@@ -186,8 +186,8 @@ rec {
|
||||
"sha256-nlk8Jb31LevHaTX8DwCv6H3h6CSQKzoBwXWDqgfqZa0=";
|
||||
|
||||
mypy-boto3-chime =
|
||||
buildMypyBoto3Package "chime" "1.37.0"
|
||||
"sha256-SzXIm9zxflVGjvmCa/15Dg3lG782PIuHozbVtEpFDnI=";
|
||||
buildMypyBoto3Package "chime" "1.37.2"
|
||||
"sha256-3wXkwVzhm+4pU81/Z4EnLhbuvNJGQ6VIXY1HKqQ/BxE=";
|
||||
|
||||
mypy-boto3-chime-sdk-identity =
|
||||
buildMypyBoto3Package "chime-sdk-identity" "1.37.0"
|
||||
@@ -230,8 +230,8 @@ rec {
|
||||
"sha256-v8dLqGFGcUBuEfKEYJZ0FnUz7aIg3WNcL7gky2Ajuu0=";
|
||||
|
||||
mypy-boto3-cloudfront =
|
||||
buildMypyBoto3Package "cloudfront" "1.37.0"
|
||||
"sha256-64htrgGn+WKIbNszPP5GX5X1Hr7lE5+tuxVRu6XK9Fg=";
|
||||
buildMypyBoto3Package "cloudfront" "1.37.2"
|
||||
"sha256-Gc4T9+rNmzlbo9yuV12iHfttGpLnC+kgJDLx3fBC11w=";
|
||||
|
||||
mypy-boto3-cloudhsm =
|
||||
buildMypyBoto3Package "cloudhsm" "1.37.0"
|
||||
@@ -446,8 +446,8 @@ rec {
|
||||
"sha256-wvOqjmqNMbCG7E1o+ZSOlWEwBdcCKjD/qVFlepZ51ec=";
|
||||
|
||||
mypy-boto3-ec2 =
|
||||
buildMypyBoto3Package "ec2" "1.37.1"
|
||||
"sha256-xWryMlWKngOYkIHmaFtxD993VziYSgPT8lwARC03GWg=";
|
||||
buildMypyBoto3Package "ec2" "1.37.2"
|
||||
"sha256-vWMLnpS6zvwdzAEyiNH33SrKS57WH6sRHsTUxjLKISI=";
|
||||
|
||||
mypy-boto3-ec2-instance-connect =
|
||||
buildMypyBoto3Package "ec2-instance-connect" "1.37.0"
|
||||
@@ -498,8 +498,8 @@ rec {
|
||||
"sha256-annWTOLZVSaLkPLfzHw80J4+Ka7aJELGC4OadeRdCEY=";
|
||||
|
||||
mypy-boto3-emr =
|
||||
buildMypyBoto3Package "emr" "1.37.0"
|
||||
"sha256-0kXQ3y3pCW8zWZSx1ndOEyphR9o5pAvn9hbyP8pD8Q8=";
|
||||
buildMypyBoto3Package "emr" "1.37.3"
|
||||
"sha256-sU9kfLIwN/wR6/xu3YI70jXgAg85Mf7/rL5G7xxmsKs=";
|
||||
|
||||
mypy-boto3-emr-containers =
|
||||
buildMypyBoto3Package "emr-containers" "1.37.0"
|
||||
@@ -674,8 +674,8 @@ rec {
|
||||
"sha256-eEq8LDmORpA464IecxTI6FqVIitn3t+t4ElsHkfSAs4=";
|
||||
|
||||
mypy-boto3-iotfleetwise =
|
||||
buildMypyBoto3Package "iotfleetwise" "1.37.0"
|
||||
"sha256-ViOnoKmbADiCE/xShDF+in4SoORIjM88kZbimPR1Hrk=";
|
||||
buildMypyBoto3Package "iotfleetwise" "1.37.2"
|
||||
"sha256-VEXpL5IiyU+M33+s3QctkqbKubPwK0ouag5F1MSpO1Q=";
|
||||
|
||||
mypy-boto3-iotsecuretunneling =
|
||||
buildMypyBoto3Package "iotsecuretunneling" "1.37.0"
|
||||
@@ -962,8 +962,8 @@ rec {
|
||||
"sha256-gs9eGyRaZN7Fsl0D5fSqtTiYZ+Exp0s8QW/X8ZR7guA=";
|
||||
|
||||
mypy-boto3-oam =
|
||||
buildMypyBoto3Package "oam" "1.37.0"
|
||||
"sha256-jdta5Yck9D+l25d8Nf6HCxtvFJb35qSbAe12VApACno=";
|
||||
buildMypyBoto3Package "oam" "1.37.2"
|
||||
"sha256-XJE33wPIGIlSVxrJ3qE09AmFLkYwKR6zWXXtDnEVvSA=";
|
||||
|
||||
mypy-boto3-omics =
|
||||
buildMypyBoto3Package "omics" "1.37.0"
|
||||
@@ -1102,8 +1102,8 @@ rec {
|
||||
"sha256-gYDvPgcW0seMssURndWp29BxBzNnPPvPLDRXHW6PncA=";
|
||||
|
||||
mypy-boto3-redshift-serverless =
|
||||
buildMypyBoto3Package "redshift-serverless" "1.37.0"
|
||||
"sha256-hsf4jHttzq/Mlxix77YwoLz3hPBqyCvnU/i696puZJw=";
|
||||
buildMypyBoto3Package "redshift-serverless" "1.37.3"
|
||||
"sha256-EAlTSaiF3t6eOMP/hlDTtqI0l3uX6oLOMZ7Ij+Qs/20=";
|
||||
|
||||
mypy-boto3-rekognition =
|
||||
buildMypyBoto3Package "rekognition" "1.37.0"
|
||||
@@ -1174,8 +1174,8 @@ rec {
|
||||
"sha256-c0vXkW5sR7JkdzvsS/rMFme9EwY1x5eZAbRWYKew0v4=";
|
||||
|
||||
mypy-boto3-sagemaker =
|
||||
buildMypyBoto3Package "sagemaker" "1.37.0"
|
||||
"sha256-lG8PnD93ozzB+07QkRistoUd/ZC6NoWni41Sw5Vw9Ck=";
|
||||
buildMypyBoto3Package "sagemaker" "1.37.3"
|
||||
"sha256-9iExn7nmPWu1/Bk9gY39yYTMtpP1lnJM9cfPWwKEfl0=";
|
||||
|
||||
mypy-boto3-sagemaker-a2i-runtime =
|
||||
buildMypyBoto3Package "sagemaker-a2i-runtime" "1.37.0"
|
||||
@@ -1326,8 +1326,8 @@ rec {
|
||||
"sha256-TI4+rVDXiOqI1viEFwbSlvDbwzdKPbTne4pZsdK9HRo=";
|
||||
|
||||
mypy-boto3-storagegateway =
|
||||
buildMypyBoto3Package "storagegateway" "1.37.0"
|
||||
"sha256-FfRrqnBL9TyS3dDXPqvT5drH3X07vEqo00OWFY6mjLg=";
|
||||
buildMypyBoto3Package "storagegateway" "1.37.3"
|
||||
"sha256-g7IxHH+/7ZUHGsRKdsCh2xsPjYUbg9CmL7Rqni/ANNM=";
|
||||
|
||||
mypy-boto3-sts =
|
||||
buildMypyBoto3Package "sts" "1.37.0"
|
||||
|
||||
@@ -8,13 +8,13 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "lenovo-legion-app";
|
||||
version = "0.0.18";
|
||||
version = "0.0.19-unstable-2025-02-20";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "johnfanv2";
|
||||
repo = "LenovoLegionLinux";
|
||||
rev = "e9c1d8157a7b25e4334d0b1d887338c670e39f6a";
|
||||
hash = "sha256-6JYOTDzz9/flyEDQo1UPjWT5+Cuea5fsdbdc6AooDxU=";
|
||||
rev = "43f2ad0ea67b69f509a0c5f0254272fe85f3b070";
|
||||
hash = "sha256-k7CHL59tRjfly1xV+TXjNitkhV7q6qtMhuc+QO5ASkI=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/python/legion_linux";
|
||||
@@ -33,7 +33,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
# only fixup application (legion-linux-gui), service (legiond) currently not installed so do not fixup
|
||||
# version
|
||||
substituteInPlace ./setup.cfg \
|
||||
--replace-fail "_VERSION" "${version}"
|
||||
--replace-fail "_VERSION" "${builtins.head (lib.splitString "-" version)}"
|
||||
|
||||
# /etc
|
||||
substituteInPlace ./legion_linux/legion.py \
|
||||
|
||||
@@ -8,14 +8,14 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "beets-alternatives";
|
||||
version = "0.13.1";
|
||||
version = "0.13.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "beets-alternatives";
|
||||
owner = "geigerzaehler";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-+LvQC7hYtbJeWJiDEKtSFZaEtnuXZ+4mI75rrX9Sd64=";
|
||||
hash = "sha256-OoQsP+QVIOnSA4oy1a8JJ3VeCUS+GR8sPPOysvmRMqI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -32,18 +32,13 @@ python3Packages.buildPythonApplication rec {
|
||||
pytestCheckHook
|
||||
pytest-cov-stub
|
||||
mock
|
||||
pillow
|
||||
typeguard
|
||||
]
|
||||
++ [
|
||||
writableTmpDirAsHomeHook
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# ValueError: too many values to unpack (expected 2)
|
||||
# https://github.com/geigerzaehler/beets-alternatives/issues/122
|
||||
"test_embed_art"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Beets plugin to manage external files";
|
||||
homepage = "https://github.com/geigerzaehler/beets-alternatives";
|
||||
|
||||
Reference in New Issue
Block a user