Merge branch 'master' into staging-next

This commit is contained in:
Wolfgang Walther 2025-05-04 19:54:40 +02:00
commit ee942cc4a1
No known key found for this signature in database
GPG key ID: B39893FA5F65CAE1
83 changed files with 2896 additions and 1104 deletions

View file

@ -1,5 +1,5 @@
# This file is used by .github/workflows/labels.yml
# This version is only run for Pull Requests from protected branches like staging-next, haskell-updates or python-updates.
# This version is only run for Pull Requests from development branches like staging-next, haskell-updates or python-updates.
"4.workflow: package set update":
- any:

View file

@ -14,7 +14,7 @@ permissions: {}
jobs:
backport:
name: Backport Pull Request
if: github.repository_owner == 'NixOS' && github.event.pull_request.merged == true && (github.event_name != 'labeled' || startsWith('backport', github.event.label.name))
if: github.repository_owner == 'NixOS' && github.event.pull_request.merged == true && (github.event.action != 'labeled' || startsWith(github.event.label.name, 'backport'))
runs-on: ubuntu-24.04
steps:
# Use a GitHub App to create the PR so that CI gets triggered
@ -33,6 +33,7 @@ jobs:
token: ${{ steps.app-token.outputs.token }}
- name: Create backport PRs
id: backport
uses: korthout/backport-action@436145e922f9561fc5ea157ff406f21af2d6b363 # v3.2.0
with:
# Config README: https://github.com/korthout/backport-action#backport-action
@ -43,3 +44,15 @@ jobs:
* [ ] Before merging, ensure that this backport is [acceptable for the release](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#changes-acceptable-for-releases).
* Even as a non-commiter, if you find that it is not acceptable, leave a comment.
- name: "Add 'has: port to stable' label"
if: steps.backport.outputs.created_pull_numbers != ''
env:
GH_TOKEN: ${{ steps.app-token.outputs.token }}
REPOSITORY: ${{ github.repository }}
NUMBER: ${{ github.event.number }}
run: |
gh api \
--method POST \
/repos/"$REPOSITORY"/issues/"$NUMBER"/labels \
-f "labels[]=8.has: port to stable"

View file

@ -20,22 +20,40 @@ jobs:
if: "github.repository_owner == 'NixOS' && !contains(github.event.pull_request.title, '[skip treewide]')"
steps:
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5.0.0
if: "!(github.pull_request.head.repo == 'NixOS' && github.ref_protected)"
if: |
github.event.pull_request.head.repo.owner.login != 'NixOS' || !(
github.head_ref == 'haskell-updates' ||
github.head_ref == 'python-updates' ||
github.head_ref == 'staging-next' ||
startsWith(github.head_ref, 'staging-next-')
)
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
configuration-path: .github/labeler.yml # default
sync-labels: true
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5.0.0
if: "!(github.pull_request.head.repo == 'NixOS' && github.ref_protected)"
if: |
github.event.pull_request.head.repo.owner.login != 'NixOS' || !(
github.head_ref == 'haskell-updates' ||
github.head_ref == 'python-updates' ||
github.head_ref == 'staging-next' ||
startsWith(github.head_ref, 'staging-next-')
)
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
configuration-path: .github/labeler-no-sync.yml
sync-labels: false
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5.0.0
# Protected branches like staging-next, haskell-updates and python-updates get special labels.
# Development branches like staging-next, haskell-updates and python-updates get special labels.
# This is to avoid the mass of labels there, which is mostly useless - and really annoying for
# the backport labels.
if: "github.pull_request.head.repo == 'NixOS' && github.ref_protected"
if: |
github.event.pull_request.head.repo.owner.login == 'NixOS' && (
github.head_ref == 'haskell-updates' ||
github.head_ref == 'python-updates' ||
github.head_ref == 'staging-next' ||
startsWith(github.head_ref, 'staging-next-')
)
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
configuration-path: .github/labeler-protected-branches.yml

View file

@ -651,6 +651,7 @@
./services/hardware/nvidia-optimus.nix
./services/hardware/openrgb.nix
./services/hardware/pcscd.nix
./services/hardware/pid-fan-controller.nix
./services/hardware/pommed.nix
./services/hardware/power-profiles-daemon.nix
./services/hardware/powerstation.nix

View file

@ -0,0 +1,188 @@
{
lib,
config,
pkgs,
...
}:
let
cfg = config.services.pid-fan-controller;
heatSource = {
options = {
name = lib.mkOption {
type = lib.types.uniq lib.types.nonEmptyStr;
description = "Name of the heat source.";
};
wildcardPath = lib.mkOption {
type = lib.types.nonEmptyStr;
description = ''
Path of the heat source's `hwmon` `temp_input` file.
This path can contain multiple wildcards, but has to resolve to
exactly one result.
'';
};
pidParams = {
setPoint = lib.mkOption {
type = lib.types.ints.unsigned;
description = "Set point of the controller in °C.";
};
P = lib.mkOption {
description = "K_p of PID controller.";
type = lib.types.float;
};
I = lib.mkOption {
description = "K_i of PID controller.";
type = lib.types.float;
};
D = lib.mkOption {
description = "K_d of PID controller.";
type = lib.types.float;
};
};
};
};
fan = {
options = {
wildcardPath = lib.mkOption {
type = lib.types.str;
description = ''
Wildcard path of the `hwmon` `pwm` file.
If the fans are not to be found in `/sys/class/hwmon/hwmon*` the corresponding
kernel module (like `nct6775`) needs to be added to `boot.kernelModules`.
See the [`hwmon` Documentation](https://www.kernel.org/doc/html/latest/hwmon/index.html).
'';
};
minPwm = lib.mkOption {
default = 0;
type = lib.types.ints.u8;
description = "Minimum PWM value.";
};
maxPwm = lib.mkOption {
default = 255;
type = lib.types.ints.u8;
description = "Maximum PWM value.";
};
cutoff = lib.mkOption {
default = false;
type = lib.types.bool;
description = "Whether to stop the fan when `minPwm` is reached.";
};
heatPressureSrcs = lib.mkOption {
type = lib.types.nonEmptyListOf lib.types.str;
description = "Heat pressure sources affected by the fan.";
};
};
};
in
{
options.services.pid-fan-controller = {
enable = lib.mkEnableOption "the PID fan controller, which controls the configured fans by running a closed-loop PID control loop";
package = lib.mkPackageOption pkgs "pid-fan-controller" { };
settings = {
interval = lib.mkOption {
default = 500;
type = lib.types.int;
description = "Interval between controller cycles in milliseconds.";
};
heatSources = lib.mkOption {
type = lib.types.listOf (lib.types.submodule heatSource);
description = "List of heat sources to be monitored.";
example = ''
[
{
name = "cpu";
wildcardPath = "/sys/devices/pci0000:00/0000:00:18.3/hwmon/hwmon*/temp1_input";
pidParams = {
setPoint = 60;
P = -5.0e-3;
I = -2.0e-3;
D = -6.0e-3;
};
}
];
'';
};
fans = lib.mkOption {
type = lib.types.listOf (lib.types.submodule fan);
description = "List of fans to be controlled.";
example = ''
[
{
wildcardPath = "/sys/devices/platform/nct6775.2592/hwmon/hwmon*/pwm1";
minPwm = 60;
maxPwm = 255;
heatPressureSrcs = [
"cpu"
"gpu"
];
}
];
'';
};
};
};
config = lib.mkIf cfg.enable {
#map camel cased attrs into snake case for config
environment.etc."pid-fan-settings.json".text = builtins.toJSON {
interval = cfg.settings.interval;
heat_srcs = map (heatSrc: {
name = heatSrc.name;
wildcard_path = heatSrc.wildcardPath;
PID_params = {
set_point = heatSrc.pidParams.setPoint;
P = heatSrc.pidParams.P;
I = heatSrc.pidParams.I;
D = heatSrc.pidParams.D;
};
}) cfg.settings.heatSources;
fans = map (fan: {
wildcard_path = fan.wildcardPath;
min_pwm = fan.minPwm;
max_pwm = fan.maxPwm;
cutoff = fan.cutoff;
heat_pressure_srcs = fan.heatPressureSrcs;
}) cfg.settings.fans;
};
systemd.services.pid-fan-controller = {
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "simple";
ExecStart = [ (lib.getExe cfg.package) ];
ExecStopPost = [ "${lib.getExe cfg.package} disable" ];
Restart = "always";
#This service needs to run as root to write to /sys.
#therefore it should operate with the least amount of privileges needed
ProtectHome = "yes";
#strict is not possible as it needs /sys
ProtectSystem = "full";
ProtectProc = "invisible";
PrivateNetwork = "yes";
NoNewPrivileges = "yes";
MemoryDenyWriteExecute = "yes";
RestrictNamespaces = "~user pid net uts mnt";
ProtectKernelModules = "yes";
RestrictRealtime = "yes";
SystemCallFilter = "@system-service";
CapabilityBoundingSet = "~CAP_KILL CAP_WAKE_ALARM CAP_IPC_LOC CAP_BPF CAP_LINUX_IMMUTABLE CAP_BLOCK_SUSPEND CAP_MKNOD";
};
# restart unit if config changed
restartTriggers = [ config.environment.etc."pid-fan-settings.json".source ];
};
#sleep hook to restart the service as it breaks otherwise
systemd.services.pid-fan-controller-sleep = {
before = [ "sleep.target" ];
wantedBy = [ "sleep.target" ];
unitConfig = {
StopWhenUnneeded = "yes";
};
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
ExecStart = [ "systemctl stop pid-fan-controller.service" ];
ExecStop = [ "systemctl restart pid-fan-controller.service" ];
};
};
};
meta.maintainers = with lib.maintainers; [ zimward ];
}

View file

@ -831,13 +831,13 @@
"vendorHash": "sha256-1nm2Y4T9/mCWMXMjXEzBz3w08AYHjQJeb9mYPQeWPs0="
},
"mongodbatlas": {
"hash": "sha256-9fgaBOzly/B1kTvTmevoaEHs6s3/i3kGokFqzKWKwwg=",
"hash": "sha256-JQW9y1EfrEInmz2+Er8BE0+6ZdcrO/w1y+czg7jPeRE=",
"homepage": "https://registry.terraform.io/providers/mongodb/mongodbatlas",
"owner": "mongodb",
"repo": "terraform-provider-mongodbatlas",
"rev": "v1.33.0",
"rev": "v1.34.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-yKNhCFxs2BRU4X9P7ZREmR64u5/8QFFGMk8khXyqUsA="
"vendorHash": "sha256-y9dhiG0zyOcvjgygLEW2o+GPXUug0ibxC2aLvfcY260="
},
"namecheap": {
"hash": "sha256-fHH9sHI1mqQ9q9nX9DHJ0qfEfmDB4/2uzyVvUuIAF18=",

View file

@ -9,54 +9,54 @@ let
versions =
if stdenv.hostPlatform.isLinux then
{
stable = "0.0.91";
ptb = "0.0.136";
canary = "0.0.649";
development = "0.0.73";
stable = "0.0.93";
ptb = "0.0.141";
canary = "0.0.668";
development = "0.0.74";
}
else
{
stable = "0.0.342";
ptb = "0.0.167";
canary = "0.0.729";
development = "0.0.85";
stable = "0.0.344";
ptb = "0.0.171";
canary = "0.0.774";
development = "0.0.87";
};
version = versions.${branch};
srcs = rec {
x86_64-linux = {
stable = fetchurl {
url = "https://stable.dl2.discordapp.net/apps/linux/${version}/discord-${version}.tar.gz";
hash = "sha256-vGRK1YJoaM4+tUaQd4f7ImaVnUkAdjH+RW7r+bOMx6I=";
hash = "sha256-/CTgRWMi7RnsIrzWrXHE5D9zFte7GgqimxnvJTj3hFY=";
};
ptb = fetchurl {
url = "https://ptb.dl2.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
hash = "sha256-7MAipSoToCTJa+QFUty88V8SXXgJJdoQfH21yCGOKvA=";
hash = "sha256-0teCE1yQLikK2MkyT8rQL1riaE9i/YGbCXw37RaRB3I=";
};
canary = fetchurl {
url = "https://canary.dl2.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
hash = "sha256-FXwnE3knSD6U6CxkewplwZJr3F8vUBDAztMDHjtV1Jw=";
hash = "sha256-1nY/g0g5C/xETO6mjaPRjjOHtVJrfcfRemAXH1KedGE=";
};
development = fetchurl {
url = "https://development.dl2.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";
hash = "sha256-zd8KpyBTdj+7jb1kRY99a48thdCRq3RNSC8oWKAQJXg=";
hash = "sha256-tF3Evi9SiGuBWJa+O9O6TpSJXiBgioZe6nmdjwcahwY=";
};
};
x86_64-darwin = {
stable = fetchurl {
url = "https://stable.dl2.discordapp.net/apps/osx/${version}/Discord.dmg";
hash = "sha256-4Z/Up7KRRTaWEMUjVPi/CXbdeoEka72ZG6r3AeVmVjg=";
hash = "sha256-uKP7XSlDkK88mBUfI6Oq7PYlWqi933A99c1VqHf/ruE=";
};
ptb = fetchurl {
url = "https://ptb.dl2.discordapp.net/apps/osx/${version}/DiscordPTB.dmg";
hash = "sha256-7ueaVb7SrD/GOVCPvf/91CaTw2jtiV/XrIsTu2RHdOM=";
hash = "sha256-TMd586LFm8B0TxxlM50MaeAtsWLuV1nlCHyYYb0sBOo=";
};
canary = fetchurl {
url = "https://canary.dl2.discordapp.net/apps/osx/${version}/DiscordCanary.dmg";
hash = "sha256-yP/eW1fKmZ8I5BtFOOKmmYjXlSF44HlcM8LpPNHA+Pc=";
hash = "sha256-1/1cPuz/nkxEosFNsJ557f7WiJhnOv9cFTbpSKjNtJY=";
};
development = fetchurl {
url = "https://development.dl2.discordapp.net/apps/osx/${version}/DiscordDevelopment.dmg";
hash = "sha256-Pcy2Bi3C8Jqcu4n/YLkc/7ENYRyuSf+Qj6vwN/Etqdo=";
hash = "sha256-XPHAVJjEOx+2qv+xxOCbVutrbZdPLvoTUMvRDK4nEL8=";
};
};
aarch64-darwin = x86_64-darwin;

View file

@ -1,155 +0,0 @@
GEM
remote: https://rubygems.org/
specs:
git_fame (3.1.1)
activesupport (~> 7.0)
dry-initializer (~> 3.0)
dry-struct (~> 1.0)
dry-types (~> 1.0)
neatjson (~> 0.9)
rugged (~> 1.0)
tty-box (~> 0.5)
tty-option (~> 0.2)
tty-screen (~> 0.5)
tty-spinner (~> 0.9)
tty-table (~> 0.9, <= 0.10.0)
zeitwerk (~> 2.0)
activesupport (7.0.6)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
ast (2.4.2)
coderay (1.1.3)
concurrent-ruby (1.2.2)
diff-lcs (1.5.0)
docile (1.4.0)
dry-core (1.0.0)
concurrent-ruby (~> 1.0)
zeitwerk (~> 2.6)
dry-inflector (1.0.0)
dry-initializer (3.1.1)
dry-logic (1.5.0)
concurrent-ruby (~> 1.0)
dry-core (~> 1.0, < 2)
zeitwerk (~> 2.6)
dry-struct (1.6.0)
dry-core (~> 1.0, < 2)
dry-types (>= 1.7, < 2)
ice_nine (~> 0.11)
zeitwerk (~> 2.6)
dry-types (1.7.1)
concurrent-ruby (~> 1.0)
dry-core (~> 1.0)
dry-inflector (~> 1.0)
dry-logic (~> 1.4)
zeitwerk (~> 2.6)
equatable (0.5.0)
factory_bot (6.2.1)
activesupport (>= 5.0.0)
faker (3.1.1)
i18n (>= 1.8.11, < 2)
i18n (1.14.1)
concurrent-ruby (~> 1.0)
ice_nine (0.11.2)
method_source (1.0.0)
minitest (5.18.1)
neatjson (0.10.5)
necromancer (0.4.0)
parallel (1.22.1)
parser (3.2.1.1)
ast (~> 2.4.1)
pastel (0.7.2)
equatable (~> 0.5.0)
tty-color (~> 0.4.0)
pry (0.14.2)
coderay (~> 1.1)
method_source (~> 1.0)
rainbow (3.1.1)
rake (13.0.6)
regexp_parser (2.7.0)
rexml (3.2.5)
rspec (3.12.0)
rspec-core (~> 3.12.0)
rspec-expectations (~> 3.12.0)
rspec-mocks (~> 3.12.0)
rspec-core (3.12.1)
rspec-support (~> 3.12.0)
rspec-expectations (3.12.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-github (2.4.0)
rspec-core (~> 3.0)
rspec-its (1.3.0)
rspec-core (>= 3.0.0)
rspec-expectations (>= 3.0.0)
rspec-mocks (3.12.4)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-support (3.12.0)
rubocop (1.24.1)
parallel (~> 1.10)
parser (>= 3.0.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml
rubocop-ast (>= 1.15.1, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 3.0)
rubocop-ast (1.28.0)
parser (>= 3.2.1.0)
rubocop-md (1.2.0)
rubocop (>= 1.0)
rubocop-performance (1.16.0)
rubocop (>= 1.7.0, < 2.0)
rubocop-ast (>= 0.4.0)
rubocop-rake (0.6.0)
rubocop (~> 1.0)
rubocop-rspec (2.11.1)
rubocop (~> 1.19)
ruby-progressbar (1.13.0)
rugged (1.6.3)
simplecov (0.22.0)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
simplecov-cobertura (2.1.0)
rexml
simplecov (~> 0.19)
simplecov-html (0.12.3)
simplecov_json_formatter (0.1.4)
strings (0.1.8)
strings-ansi (~> 0.1)
unicode-display_width (~> 1.5)
unicode_utils (~> 1.4)
strings-ansi (0.2.0)
tty-box (0.5.0)
pastel (~> 0.7.2)
strings (~> 0.1.6)
tty-cursor (~> 0.7)
tty-color (0.4.3)
tty-cursor (0.7.1)
tty-option (0.2.0)
tty-screen (0.6.5)
tty-spinner (0.9.3)
tty-cursor (~> 0.7)
tty-table (0.10.0)
equatable (~> 0.5.0)
necromancer (~> 0.4.0)
pastel (~> 0.7.2)
strings (~> 0.1.0)
tty-screen (~> 0.6.4)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (1.8.0)
unicode_utils (1.4.0)
zeitwerk (2.6.7)
PLATFORMS
ruby
DEPENDENCIES
git_fame
BUNDLED WITH
2.3.3

View file

@ -1,741 +0,0 @@
{
activesupport = {
dependencies = [
"concurrent-ruby"
"i18n"
"minitest"
"tzinfo"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1cjsf26656996hv48wgv2mkwxf0fy1qc68ikgzq7mzfq2mmvmayk";
type = "gem";
};
version = "7.0.6";
};
ast = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
type = "gem";
};
version = "2.4.2";
};
coderay = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0jvxqxzply1lwp7ysn94zjhh57vc14mcshw1ygw14ib8lhc00lyw";
type = "gem";
};
version = "1.1.3";
};
concurrent-ruby = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0krcwb6mn0iklajwngwsg850nk8k9b35dhmc2qkbdqvmifdi2y9q";
type = "gem";
};
version = "1.2.2";
};
diff-lcs = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0rwvjahnp7cpmracd8x732rjgnilqv2sx7d1gfrysslc3h039fa9";
type = "gem";
};
version = "1.5.0";
};
docile = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1lxqxgq71rqwj1lpl9q1mbhhhhhhdkkj7my341f2889pwayk85sz";
type = "gem";
};
version = "1.4.0";
};
dry-core = {
dependencies = [
"concurrent-ruby"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "01gks2hrp7nl3pzb487azvd25dlbrc40d5cpk4n0szwnf2c0k4ks";
type = "gem";
};
version = "1.0.0";
};
dry-inflector = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "09hnvna3lg2x36li63988kv664d0zvy7y0z33803yvrdr9hj7lka";
type = "gem";
};
version = "1.0.0";
};
dry-initializer = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1v3dah1r96b10m8xjixmdmymg7dr16wn5715id4vxjkw6vm7s9jd";
type = "gem";
};
version = "3.1.1";
};
dry-logic = {
dependencies = [
"concurrent-ruby"
"dry-core"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "05nldkc154r0qzlhss7n5klfiyyz05x2fkq08y13s34py6023vcr";
type = "gem";
};
version = "1.5.0";
};
dry-struct = {
dependencies = [
"dry-core"
"dry-types"
"ice_nine"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1rnlgn4wif0dvkvi10xwh1vd1q6mp35q6a7lwva0zmbc79dh4drp";
type = "gem";
};
version = "1.6.0";
};
dry-types = {
dependencies = [
"concurrent-ruby"
"dry-core"
"dry-inflector"
"dry-logic"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1f6dz0hm67rhybh6xq2s3vvr700cp43kf50z2lids62s2i0mh5hj";
type = "gem";
};
version = "1.7.1";
};
equatable = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1sjm9zjakyixyvsqziikdrsqfzis6j3fq23crgjkp6fwkfgndj7x";
type = "gem";
};
version = "0.5.0";
};
factory_bot = {
dependencies = [ "activesupport" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1pfk942d6qwhw151hxaz7n4knk6whyxqvvywdx2cdw9yhykyaqzq";
type = "gem";
};
version = "6.2.1";
};
faker = {
dependencies = [ "i18n" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1b8772jybi0vxzbcs5zw17k40z661c8adn2rd6vqqr7ay71bzl09";
type = "gem";
};
version = "3.1.1";
};
git_fame = {
dependencies = [
"activesupport"
"dry-initializer"
"dry-struct"
"dry-types"
"neatjson"
"rugged"
"tty-box"
"tty-option"
"tty-screen"
"tty-spinner"
"tty-table"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1jqvhzwgvr2bpi4ldqidbcs9prb0xsikp50xx4r8dwhf8m9mh26h";
type = "gem";
};
version = "3.1.1";
};
i18n = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0qaamqsh5f3szhcakkak8ikxlzxqnv49n2p7504hcz2l0f4nj0wx";
type = "gem";
};
version = "1.14.1";
};
ice_nine = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
type = "gem";
};
version = "0.11.2";
};
method_source = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp";
type = "gem";
};
version = "1.0.0";
};
minitest = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1kg9wh7jlc9zsr3hkhpzkbn0ynf4np5ap9m2d8xdrb8shy0y6pmb";
type = "gem";
};
version = "5.18.1";
};
neatjson = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0wm1lq8yl6rzysh3wg6fa55w5534k6ppiz0qb7jyvdy582mk5i0s";
type = "gem";
};
version = "0.10.5";
};
necromancer = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0v9nhdkv6zrp7cn48xv7n2vjhsbslpvs0ha36mfkcd56cp27pavz";
type = "gem";
};
version = "0.4.0";
};
parallel = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "07vnk6bb54k4yc06xnwck7php50l09vvlw1ga8wdz0pia461zpzb";
type = "gem";
};
version = "1.22.1";
};
parser = {
dependencies = [ "ast" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1a2v5f8fw7nxm41xp422p1pbr41hafy62bp95m7vg42cqp5y4grc";
type = "gem";
};
version = "3.2.1.1";
};
pastel = {
dependencies = [
"equatable"
"tty-color"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1yf30d9kzpm96gw9kwbv31p0qigwfykn8qdis5950plnzgc1vlp1";
type = "gem";
};
version = "0.7.2";
};
pry = {
dependencies = [
"coderay"
"method_source"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0k9kqkd9nps1w1r1rb7wjr31hqzkka2bhi8b518x78dcxppm9zn4";
type = "gem";
};
version = "0.14.2";
};
rainbow = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0smwg4mii0fm38pyb5fddbmrdpifwv22zv3d3px2xx497am93503";
type = "gem";
};
version = "3.1.1";
};
rake = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w";
type = "gem";
};
version = "13.0.6";
};
regexp_parser = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0d6241adx6drsfzz74nx1ld3394nm6fjpv3ammzr0g659krvgf7q";
type = "gem";
};
version = "2.7.0";
};
rexml = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
type = "gem";
};
version = "3.2.5";
};
rspec = {
dependencies = [
"rspec-core"
"rspec-expectations"
"rspec-mocks"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "171rc90vcgjl8p1bdrqa92ymrj8a87qf6w20x05xq29mljcigi6c";
type = "gem";
};
version = "3.12.0";
};
rspec-core = {
dependencies = [ "rspec-support" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0da45cvllbv39sdbsl65vp5djb2xf5m10mxc9jm7rsqyyxjw4h1f";
type = "gem";
};
version = "3.12.1";
};
rspec-expectations = {
dependencies = [
"diff-lcs"
"rspec-support"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "03ba3lfdsj9zl00v1yvwgcx87lbadf87livlfa5kgqssn9qdnll6";
type = "gem";
};
version = "3.12.2";
};
rspec-github = {
dependencies = [ "rspec-core" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0kqjmd85v2fpb06d0rx43dc51f0igc1gmm8y3nz0wvmy7zg02njm";
type = "gem";
};
version = "2.4.0";
};
rspec-its = {
dependencies = [
"rspec-core"
"rspec-expectations"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "15zafd70gxly5i0s00nky14sj2n92dnj3xpj83ysl3c2wx0119ad";
type = "gem";
};
version = "1.3.0";
};
rspec-mocks = {
dependencies = [
"diff-lcs"
"rspec-support"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1dcfh85m3ksir6n8gydsal4d85chpww1b2nahb05nl8xhgh0r2ij";
type = "gem";
};
version = "3.12.4";
};
rspec-support = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "12y52zwwb3xr7h91dy9k3ndmyyhr3mjcayk0nnarnrzz8yr48kfx";
type = "gem";
};
version = "3.12.0";
};
rubocop = {
dependencies = [
"parallel"
"parser"
"rainbow"
"regexp_parser"
"rexml"
"rubocop-ast"
"ruby-progressbar"
"unicode-display_width"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1sn7ag295blmhpwv6x472m3fd0n25swz9imqwpk0hg21rdcdw7p0";
type = "gem";
};
version = "1.24.1";
};
rubocop-ast = {
dependencies = [ "parser" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0n2gsafg6p7nr1z8i1hkvp2qqkkbg842ba183dnl0h08xd9ms6q5";
type = "gem";
};
version = "1.28.0";
};
rubocop-md = {
dependencies = [ "rubocop" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "11j802r5r022vxzycvwvzhyg24g8dky4slbvid24xi0ji73q444z";
type = "gem";
};
version = "1.2.0";
};
rubocop-performance = {
dependencies = [
"rubocop"
"rubocop-ast"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1n7g0vg06ldjaq4f8c11c7yqy99zng1qdrkkk4kfziippy24yxnc";
type = "gem";
};
version = "1.16.0";
};
rubocop-rake = {
dependencies = [ "rubocop" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1nyq07sfb3vf3ykc6j2d5yq824lzq1asb474yka36jxgi4hz5djn";
type = "gem";
};
version = "0.6.0";
};
rubocop-rspec = {
dependencies = [ "rubocop" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0ivc9kgz18cn32iqi9wv5aj903yhamwddw84l7nklbl9xxvwz603";
type = "gem";
};
version = "2.11.1";
};
ruby-progressbar = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0cwvyb7j47m7wihpfaq7rc47zwwx9k4v7iqd9s1xch5nm53rrz40";
type = "gem";
};
version = "1.13.0";
};
rugged = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "016bawsahkhxx7p8azxirpl7y2y7i8a027pj8910gwf6ipg329in";
type = "gem";
};
version = "1.6.3";
};
simplecov = {
dependencies = [
"docile"
"simplecov-html"
"simplecov_json_formatter"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "198kcbrjxhhzca19yrdcd6jjj9sb51aaic3b0sc3pwjghg3j49py";
type = "gem";
};
version = "0.22.0";
};
simplecov-cobertura = {
dependencies = [
"rexml"
"simplecov"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "00izmp202y48qvmvwrh5x56cc5ivbjhgkkkjklvqmqzj9pik4r9c";
type = "gem";
};
version = "2.1.0";
};
simplecov-html = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0yx01bxa8pbf9ip4hagqkp5m0mqfnwnw2xk8kjraiywz4lrss6jb";
type = "gem";
};
version = "0.12.3";
};
simplecov_json_formatter = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0a5l0733hj7sk51j81ykfmlk2vd5vaijlq9d5fn165yyx3xii52j";
type = "gem";
};
version = "0.1.4";
};
strings = {
dependencies = [
"strings-ansi"
"unicode-display_width"
"unicode_utils"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "111876lcqrykh30w7zzkrl06d6rj9lq24y625m28674vgfxkkcz0";
type = "gem";
};
version = "0.1.8";
};
strings-ansi = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "120wa6yjc63b84lprglc52f40hx3fx920n4dmv14rad41rv2s9lh";
type = "gem";
};
version = "0.2.0";
};
tty-box = {
dependencies = [
"pastel"
"strings"
"tty-cursor"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "14g63v0jx87hba50rlv3c521zg9rw0f5d31cihcvym19xxa7v3l5";
type = "gem";
};
version = "0.5.0";
};
tty-color = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0zz5xa6xbrj69h334d8nx7z732fz80s1a0b02b53mim95p80s7bk";
type = "gem";
};
version = "0.4.3";
};
tty-cursor = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0j5zw041jgkmn605ya1zc151bxgxl6v192v2i26qhxx7ws2l2lvr";
type = "gem";
};
version = "0.7.1";
};
tty-option = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0xibs7kgbsw401ywfw67wg47fmm7sdcypy85m25af9r2q2hbq7gb";
type = "gem";
};
version = "0.2.0";
};
tty-screen = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0azpjgyhdm8ycblnx9crq3dgb2x8yg454a13n60zfpsc0n138sw1";
type = "gem";
};
version = "0.6.5";
};
tty-spinner = {
dependencies = [ "tty-cursor" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0hh5awmijnzw9flmh5ak610x1d00xiqagxa5mbr63ysggc26y0qf";
type = "gem";
};
version = "0.9.3";
};
tty-table = {
dependencies = [
"equatable"
"necromancer"
"pastel"
"strings"
"tty-screen"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "05krrj1x5pmfbz74paszrsr1316w9b9jlc4wpd9s9gpzqfzwjzcg";
type = "gem";
};
version = "0.10.0";
};
tzinfo = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "16w2g84dzaf3z13gxyzlzbf748kylk5bdgg3n1ipvkvvqy685bwd";
type = "gem";
};
version = "2.0.6";
};
unicode-display_width = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1204c1jx2g89pc25qk5150mk7j5k90692i7ihgfzqnad6qni74h2";
type = "gem";
};
version = "1.8.0";
};
unicode_utils = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0h1a5yvrxzlf0lxxa1ya31jcizslf774arnsd89vgdhk4g7x08mr";
type = "gem";
};
version = "1.4.0";
};
zeitwerk = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "028ld9qmgdllxrl7d0qkl65s58wb1n3gv8yjs28g43a8b1hplxk1";
type = "gem";
};
version = "2.6.7";
};
}

View file

@ -17,13 +17,13 @@
buildGoModule rec {
pname = "cri-o";
version = "1.32.3";
version = "1.32.4";
src = fetchFromGitHub {
owner = "cri-o";
repo = "cri-o";
rev = "v${version}";
hash = "sha256-EIJT/LwxRZUYvbH0EFYSeZpGgFOywI6jpfmFO3g8cps=";
hash = "sha256-zMSGXRJvFPlbJAnrdHMQYLPkS138r5/2/gyJhhoytgs=";
};
vendorHash = null;

View file

@ -8,13 +8,13 @@
}:
stdenv.mkDerivation {
pname = "airwindows";
version = "0-unstable-2025-04-19";
version = "0-unstable-2025-04-27";
src = fetchFromGitHub {
owner = "airwindows";
repo = "airwindows";
rev = "9e38c7af2c4b74e4a1f138ebaccc07e5800c73b8";
hash = "sha256-/6Z+CTrUeH3wNlwlP3aS5scYjhC0NwC0QXe+IMvphkc=";
rev = "f8a3f0d1b4ba5ad15777a7143f338731b9658d1a";
hash = "sha256-Kdz8Q71LHeYhH+Lbgg9fhAYsC62LJLdQo5R+h9DwpXY=";
};
# we patch helpers because honestly im spooked out by where those variables

View file

@ -8,13 +8,13 @@
python3Packages.buildPythonApplication rec {
pname = "ansible-lint";
version = "25.2.1";
version = "25.4.0";
pyproject = true;
src = fetchPypi {
inherit version;
pname = "ansible_lint";
hash = "sha256-7Esfz6i+8T9Uf+76IupoZN79kCs6Jn749MU0GXb0X/E=";
hash = "sha256-8vKzGtGZklsjQ/ZgVS+5Rolw8WwsXVfan+rnDsTuyn0=";
};
postPatch = ''

View file

@ -0,0 +1,56 @@
{
lib,
rustPlatform,
fetchFromGitHub,
unstableGitUpdater,
}:
rustPlatform.buildRustPackage {
pname = "apery";
version = "2.1.0-unstable-2024-06-23";
src = fetchFromGitHub {
owner = "HiraokaTakuya";
# Successor of C++ implementation
# https://github.com/HiraokaTakuya/apery/blob/d14471fc879062bfabbd181eaa91e90c7cc28a71/Readme.txt#L3-L4
repo = "apery_rust";
rev = "8e64bc427bff033a38f1b60b9013ad2d62f88db7";
hash = "sha256-Y8IBZISutXNgbuc7/qhNoiwYDCP6M9ukhu48t3oZM18=";
# The submodule includes evaluation files for the installCheckPhase
fetchSubmodules = true;
};
cargoHash = "sha256-xaQ83WKXKSAFRSKzaTFnM2lklGLCJG+i7wa8a+KNR/I=";
checkFlags = [
"--skip=movegen"
];
doInstallCheck = true;
installCheckPhase = ''
runHook preInstallCheck
usi_command='isready
go byoyomi 1000
wait'
usi_output="$("$out/bin/apery" <<< "$usi_command")"
[[ "$usi_output" == *'bestmove'* ]]
runHook postInstallCheck
'';
passthru.updateScript = unstableGitUpdater {
tagPrefix = "v";
branch = "master";
};
meta = {
description = "USI shogi engine";
homepage = "https://github.com/HiraokaTakuya/apery_rust";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [
kachick
];
mainProgram = "apery";
};
}

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "atasm";
version = "1.27";
version = "1.28";
src = fetchFromGitHub {
owner = "CycoPH";
repo = "atasm";
rev = "V${version}";
hash = "sha256-owr0mqib3zXMYcYliseCIkHp41nevpIPCC6nTqouAkA=";
hash = "sha256-9hDY+DQ2qA6zgVMCfvXW7QErH+eL1TKya4PpQ3vHQLQ=";
};
makefile = "Makefile";

View file

@ -2,22 +2,23 @@
lib,
stdenv,
fetchFromGitHub,
boost,
boost183,
cmake,
ninja,
zeromq,
catch2,
unstableGitUpdater,
}:
stdenv.mkDerivation {
pname = "azmq";
version = "unstable-2023-03-23";
version = "1.0.3-unstable-2025-01-19";
src = fetchFromGitHub {
owner = "zeromq";
repo = "azmq";
rev = "2c1adac46bced4eb74ed9be7c74563bb113eaacf";
hash = "sha256-4o1CHlg9kociIL6QN/kU2cojPvFRhtjFmKIAz0dapUM=";
rev = "4e8f18bf3ac60f5c8126db61e48927ea19a88195";
hash = "sha256-0TYZvQefoW77RXhQ57niXs3Kcz2YHW9cBDNGFU47BBs=";
};
nativeBuildInputs = [
@ -26,7 +27,7 @@ stdenv.mkDerivation {
];
buildInputs = [
boost
boost183
catch2
zeromq
];
@ -34,6 +35,10 @@ stdenv.mkDerivation {
# Broken for some reason on this platform.
doCheck = !(stdenv.hostPlatform.isAarch64 && stdenv.hostPlatform.isLinux);
passthru.updateScript = unstableGitUpdater {
tagPrefix = "v";
};
meta = with lib; {
homepage = "https://github.com/zeromq/azmq";
license = licenses.boost;

View file

@ -0,0 +1,100 @@
{
lib,
python3Packages,
fetchFromGitHub,
}:
python3Packages.buildPythonApplication rec {
pname = "bagels";
version = "0.3.8";
pyproject = true;
src = fetchFromGitHub {
owner = "EnhancedJax";
repo = "bagels";
tag = version;
hash = "sha256-dmBu0HSRGs4LmJY2PHNlRf0RdodmN+ZM0brwuiNmPyU=";
};
build-system = with python3Packages; [
hatchling
];
pythonRelaxDeps = [
"aiohappyeyeballs"
"aiohttp"
"aiosignal"
"attrs"
"blinker"
"click"
"multidict"
"platformdirs"
"propcache"
"pydantic-core"
"pydantic"
"pygments"
"requests"
"rich"
"sqlalchemy"
"textual"
"typing-extensions"
"werkzeug"
"yarl"
];
dependencies = with python3Packages; [
aiohappyeyeballs
aiohttp-jinja2
aiohttp
aiosignal
annotated-types
attrs
blinker
click-default-group
click
frozenlist
idna
itsdangerous
linkify-it-py
markdown-it-py
markupsafe
mdit-py-plugins
mdurl
msgpack
multidict
numpy
packaging
platformdirs
plotext
propcache
pydantic-core
pydantic
pygments
python-dateutil
pyyaml
requests
rich
sqlalchemy
textual
tomli
typing-extensions
uc-micro-py
werkzeug
xdg-base-dirs
yarl
];
meta = {
homepage = "https://github.com/EnhancedJax/Bagels";
description = "Powerful expense tracker that lives in your terminal.";
longDescription = ''
Bagels expense tracker is a TUI application where you can track and analyse your money flow, with convenience oriented features and a complete interface.
'';
changelog = "https://github.com/EnhancedJax/Bagels/releases/tag/${version}";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [
loc
];
mainProgram = "bagels";
};
}

View file

@ -11,11 +11,11 @@
stdenv.mkDerivation rec {
pname = "bird";
version = "3.1.0";
version = "3.0.2";
src = fetchurl {
url = "https://bird.network.cz/download/bird-${version}.tar.gz";
hash = "sha256-xxY49Xb0MWcEN++dkL6lZZK8VjcB3nhpg/RCJk7Hdiw=";
hash = "sha256-eKqL5820LfFLnilpu2Q7IoxoBMZXj5CTsXPOiiQ3zDA=";
};
nativeBuildInputs = [

View file

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "cdncheck";
version = "1.1.16";
version = "1.1.17";
src = fetchFromGitHub {
owner = "projectdiscovery";
repo = "cdncheck";
tag = "v${version}";
hash = "sha256-7piHR6BlPz34pkgkj6cmi8OR2h2mZEF+hy8dwS+lras=";
hash = "sha256-nRnf2eLZQX878H6Em50MNkmEOTyr1KE5buGlMPE9vAE=";
};
vendorHash = "sha256-/1REkZ5+sz/H4T4lXhloz7fu5cLv1GoaD3dlttN+Qd4=";

View file

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "cnquery";
version = "11.51.1";
version = "11.52.0";
src = fetchFromGitHub {
owner = "mondoohq";
repo = "cnquery";
tag = "v${version}";
hash = "sha256-Vc6ucWZf/n/joscFEVuQEfsg2fu860thmlppVItFDnE=";
hash = "sha256-Agc8as9PwN9IDeV0tBOPFL2tXYXYaJsa1sd+XXQ7p0k=";
};
subPackages = [ "apps/cnquery" ];

View file

@ -17,18 +17,18 @@ let
in
maven.buildMavenPackage rec {
pname = "cryptomator";
version = "1.15.3";
version = "1.16.0";
src = fetchFromGitHub {
owner = "cryptomator";
repo = "cryptomator";
tag = version;
hash = "sha256-3HGSeTUzfcXuNFxPuhkQBQ8CTEvgrNjpFtqOuluCeRs=";
hash = "sha256-v4UCNUbnCCccwmRMtHbN8BEHlzLcAcJ9HIU5Ak94FS8=";
};
mvnJdk = jdk;
mvnParameters = "-Dmaven.test.skip=true -Plinux";
mvnHash = "sha256-vC2ULlBm/170ElcQC898N4kmWfuWwb7hFpF1oMIukyQ=";
mvnHash = "sha256-EmCuAn3waCDkngGca8f5ccV5aNTpE+fiNM6VbAS1D3w=";
preBuild = ''
VERSION=${version}

View file

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "dblab";
version = "0.31.0";
version = "0.32.0";
src = fetchFromGitHub {
owner = "danvergara";
repo = "dblab";
rev = "v${version}";
hash = "sha256-ssxfKIHbhiekZFONRDFzb38mEKVgEKXEq4TIyj8FXjU=";
hash = "sha256-Hcwuh+NGHp1nb6dS1CDC+M7onlNpJbkb6UAiC4j3ZiU=";
};
vendorHash = "sha256-WxIlGdd3Si3Lyf9FZOCAepDlRo2F3EDRy00EawkZATY=";

View file

@ -11,11 +11,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "diylc";
version = "5.2.0";
version = "5.3.0";
src = fetchurl {
url = "https://github.com/bancika/diy-layout-creator/releases/download/v${finalAttrs.version}/diylc-${finalAttrs.version}-universal.zip";
hash = "sha256-lsUA6ksaRpHrVOlpMUIZeuZ+jLpl9GFTBttzUhRplH4=";
hash = "sha256-1oeeU9SkDqS3vF/b4B4ACJ6NjtkS9lQBl7yEF+rFTY0=";
};
nativeBuildInputs = [

View file

@ -6,18 +6,18 @@
buildGoModule rec {
pname = "dolt";
version = "1.52.2";
version = "1.52.3";
src = fetchFromGitHub {
owner = "dolthub";
repo = "dolt";
rev = "v${version}";
sha256 = "sha256-bEF85lWebcpwz3rYEMqA4h0eMS5AzvuzDTXIrs0izJs=";
sha256 = "sha256-c+7WWFaELEbWxgqHNDXOIt/PvielfMFbzwURlqXSZAY=";
};
modRoot = "./go";
subPackages = [ "cmd/dolt" ];
vendorHash = "sha256-wMnFzeZG2eBTddZt3abT4Q+X2getjcyd7JHmhywtyWs=";
vendorHash = "sha256-OYgxlEU84BDqVqfmvgBZ5blT6ySHLZcmKbVm4Bvj8Yk=";
proxyVendor = true;
doCheck = false;

View file

@ -8,17 +8,17 @@
rustPlatform.buildRustPackage rec {
pname = "framework-tool";
version = "0.2.1";
version = "0.4.0";
src = fetchFromGitHub {
owner = "FrameworkComputer";
repo = "framework-system";
tag = "v${version}";
hash = "sha256-wWattGkBn8WD3vfThlQnotQB4Q/C00AZT1BesoHcCyg=";
hash = "sha256-JPIpaAfXraqU6YM31bLImeJUCD3/O+PLcaZBxUjDqlM=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-kmrgtYXo2Xh4mBk64VE83UJdITHgA/y3VeBRE8gDUTY=";
cargoHash = "sha256-Kf3DXEDpCbbixUjeyBi1xkR32sW2uuasxqeWeq/X2Xk=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ udev ];

View file

@ -0,0 +1,107 @@
GEM
remote: https://rubygems.org/
specs:
activesupport (8.0.2)
base64
benchmark (>= 0.3)
bigdecimal
concurrent-ruby (~> 1.0, >= 1.3.1)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
logger (>= 1.4.2)
minitest (>= 5.1)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
base64 (0.2.0)
benchmark (0.4.0)
bigdecimal (3.1.9)
concurrent-ruby (1.3.5)
connection_pool (2.5.3)
drb (2.2.1)
dry-core (1.1.0)
concurrent-ruby (~> 1.0)
logger
zeitwerk (~> 2.6)
dry-inflector (1.2.0)
dry-initializer (3.2.0)
dry-logic (1.6.0)
bigdecimal
concurrent-ruby (~> 1.0)
dry-core (~> 1.1)
zeitwerk (~> 2.6)
dry-struct (1.8.0)
dry-core (~> 1.1)
dry-types (~> 1.8, >= 1.8.2)
ice_nine (~> 0.11)
zeitwerk (~> 2.6)
dry-types (1.8.2)
bigdecimal (~> 3.0)
concurrent-ruby (~> 1.0)
dry-core (~> 1.0)
dry-inflector (~> 1.0)
dry-logic (~> 1.4)
zeitwerk (~> 2.6)
equatable (0.5.0)
git_fame (3.2.19)
activesupport (>= 7, < 9)
dry-initializer (~> 3.0)
dry-struct (~> 1.0)
dry-types (~> 1.0)
neatjson (~> 0.9)
rugged (~> 1.0)
tty-box (~> 0.5)
tty-option (~> 0.2)
tty-screen (~> 0.5)
tty-spinner (~> 0.9)
tty-table (~> 0.9, <= 0.10.0)
zeitwerk (~> 2.0)
i18n (1.14.7)
concurrent-ruby (~> 1.0)
ice_nine (0.11.2)
logger (1.7.0)
minitest (5.25.5)
neatjson (0.10.5)
necromancer (0.4.0)
pastel (0.7.2)
equatable (~> 0.5.0)
tty-color (~> 0.4.0)
rugged (1.9.0)
securerandom (0.4.1)
strings (0.1.8)
strings-ansi (~> 0.1)
unicode-display_width (~> 1.5)
unicode_utils (~> 1.4)
strings-ansi (0.2.0)
tty-box (0.5.0)
pastel (~> 0.7.2)
strings (~> 0.1.6)
tty-cursor (~> 0.7)
tty-color (0.4.3)
tty-cursor (0.7.1)
tty-option (0.3.0)
tty-screen (0.6.5)
tty-spinner (0.9.3)
tty-cursor (~> 0.7)
tty-table (0.10.0)
equatable (~> 0.5.0)
necromancer (~> 0.4.0)
pastel (~> 0.7.2)
strings (~> 0.1.0)
tty-screen (~> 0.6.4)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (1.8.0)
unicode_utils (1.4.0)
uri (1.0.3)
zeitwerk (2.7.2)
PLATFORMS
ruby
DEPENDENCIES
git_fame
BUNDLED WITH
2.6.6

View file

@ -0,0 +1,459 @@
{
activesupport = {
dependencies = [
"base64"
"benchmark"
"bigdecimal"
"concurrent-ruby"
"connection_pool"
"drb"
"i18n"
"logger"
"minitest"
"securerandom"
"tzinfo"
"uri"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0pm40y64wfc50a9sj87kxvil2102rmpdcbv82zf0r40vlgdwsrc5";
type = "gem";
};
version = "8.0.2";
};
base64 = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "01qml0yilb9basf7is2614skjp8384h2pycfx86cr8023arfj98g";
type = "gem";
};
version = "0.2.0";
};
benchmark = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0jl71qcgamm96dzyqk695j24qszhcc7liw74qc83fpjljp2gh4hg";
type = "gem";
};
version = "0.4.0";
};
bigdecimal = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1k6qzammv9r6b2cw3siasaik18i6wjc5m0gw5nfdc6jj64h79z1g";
type = "gem";
};
version = "3.1.9";
};
concurrent-ruby = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1ipbrgvf0pp6zxdk5ascp6i29aybz2bx9wdrlchjmpx6mhvkwfw1";
type = "gem";
};
version = "1.3.5";
};
connection_pool = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0nrhsk7b3sjqbyl1cah6ibf1kvi3v93a7wf4637d355hp614mmyg";
type = "gem";
};
version = "2.5.3";
};
drb = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0h5kbj9hvg5hb3c7l425zpds0vb42phvln2knab8nmazg2zp5m79";
type = "gem";
};
version = "2.2.1";
};
dry-core = {
dependencies = [
"concurrent-ruby"
"logger"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "15di39ssfkwigyyqla65n4x6cfhgwa4cv8j5lmyrlr07jwd840q9";
type = "gem";
};
version = "1.1.0";
};
dry-inflector = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0blgyg9l4gpzhb7rs9hqq9j7br80ngiigjp2ayp78w6m1ysx1x92";
type = "gem";
};
version = "1.2.0";
};
dry-initializer = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1qy4cv0j0ahabprdbp02nc3r1606jd5dp90lzqg0mp0jz6c9gm9p";
type = "gem";
};
version = "3.2.0";
};
dry-logic = {
dependencies = [
"bigdecimal"
"concurrent-ruby"
"dry-core"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "18nf8mbnhgvkw34drj7nmvpx2afmyl2nyzncn3wl3z4h1yyfsvys";
type = "gem";
};
version = "1.6.0";
};
dry-struct = {
dependencies = [
"dry-core"
"dry-types"
"ice_nine"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0ri9iqxknxvvhpbshf6jn7bq581k8l67iv23mii69yr4k5aqphvl";
type = "gem";
};
version = "1.8.0";
};
dry-types = {
dependencies = [
"bigdecimal"
"concurrent-ruby"
"dry-core"
"dry-inflector"
"dry-logic"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "03zcngwfpq0nx9wmxma0s1c6sb3xxph93q8j7dy75721d7d9lkn8";
type = "gem";
};
version = "1.8.2";
};
equatable = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1sjm9zjakyixyvsqziikdrsqfzis6j3fq23crgjkp6fwkfgndj7x";
type = "gem";
};
version = "0.5.0";
};
git_fame = {
dependencies = [
"activesupport"
"dry-initializer"
"dry-struct"
"dry-types"
"neatjson"
"rugged"
"tty-box"
"tty-option"
"tty-screen"
"tty-spinner"
"tty-table"
"zeitwerk"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1891k7v2ld5p9v9zlc80s7qkqdxs1wpw6m40gx1wr273n177jal8";
type = "gem";
};
version = "3.2.19";
};
i18n = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "03sx3ahz1v5kbqjwxj48msw3maplpp2iyzs22l4jrzrqh4zmgfnf";
type = "gem";
};
version = "1.14.7";
};
ice_nine = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
type = "gem";
};
version = "0.11.2";
};
logger = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "00q2zznygpbls8asz5knjvvj2brr3ghmqxgr83xnrdj4rk3xwvhr";
type = "gem";
};
version = "1.7.0";
};
minitest = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0mn7q9yzrwinvfvkyjiz548a4rmcwbmz2fn9nyzh4j1snin6q6rr";
type = "gem";
};
version = "5.25.5";
};
neatjson = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0wm1lq8yl6rzysh3wg6fa55w5534k6ppiz0qb7jyvdy582mk5i0s";
type = "gem";
};
version = "0.10.5";
};
necromancer = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0v9nhdkv6zrp7cn48xv7n2vjhsbslpvs0ha36mfkcd56cp27pavz";
type = "gem";
};
version = "0.4.0";
};
pastel = {
dependencies = [
"equatable"
"tty-color"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1yf30d9kzpm96gw9kwbv31p0qigwfykn8qdis5950plnzgc1vlp1";
type = "gem";
};
version = "0.7.2";
};
rugged = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1b7gcf6pxg4x607bica68dbz22b4kch33yi0ils6x3c8ql9akakz";
type = "gem";
};
version = "1.9.0";
};
securerandom = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1cd0iriqfsf1z91qg271sm88xjnfd92b832z49p1nd542ka96lfc";
type = "gem";
};
version = "0.4.1";
};
strings = {
dependencies = [
"strings-ansi"
"unicode-display_width"
"unicode_utils"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "111876lcqrykh30w7zzkrl06d6rj9lq24y625m28674vgfxkkcz0";
type = "gem";
};
version = "0.1.8";
};
strings-ansi = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "120wa6yjc63b84lprglc52f40hx3fx920n4dmv14rad41rv2s9lh";
type = "gem";
};
version = "0.2.0";
};
tty-box = {
dependencies = [
"pastel"
"strings"
"tty-cursor"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "14g63v0jx87hba50rlv3c521zg9rw0f5d31cihcvym19xxa7v3l5";
type = "gem";
};
version = "0.5.0";
};
tty-color = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0zz5xa6xbrj69h334d8nx7z732fz80s1a0b02b53mim95p80s7bk";
type = "gem";
};
version = "0.4.3";
};
tty-cursor = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0j5zw041jgkmn605ya1zc151bxgxl6v192v2i26qhxx7ws2l2lvr";
type = "gem";
};
version = "0.7.1";
};
tty-option = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "019ir4bcr8fag7dmq7ph6ilpvwjbv4qalip0bz7dlddbd6fk4vjs";
type = "gem";
};
version = "0.3.0";
};
tty-screen = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0azpjgyhdm8ycblnx9crq3dgb2x8yg454a13n60zfpsc0n138sw1";
type = "gem";
};
version = "0.6.5";
};
tty-spinner = {
dependencies = [ "tty-cursor" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0hh5awmijnzw9flmh5ak610x1d00xiqagxa5mbr63ysggc26y0qf";
type = "gem";
};
version = "0.9.3";
};
tty-table = {
dependencies = [
"equatable"
"necromancer"
"pastel"
"strings"
"tty-screen"
];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "05krrj1x5pmfbz74paszrsr1316w9b9jlc4wpd9s9gpzqfzwjzcg";
type = "gem";
};
version = "0.10.0";
};
tzinfo = {
dependencies = [ "concurrent-ruby" ];
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "16w2g84dzaf3z13gxyzlzbf748kylk5bdgg3n1ipvkvvqy685bwd";
type = "gem";
};
version = "2.0.6";
};
unicode-display_width = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "1204c1jx2g89pc25qk5150mk7j5k90692i7ihgfzqnad6qni74h2";
type = "gem";
};
version = "1.8.0";
};
unicode_utils = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0h1a5yvrxzlf0lxxa1ya31jcizslf774arnsd89vgdhk4g7x08mr";
type = "gem";
};
version = "1.4.0";
};
uri = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "04bhfvc25b07jaiaf62yrach7khhr5jlr5bx6nygg8pf11329wp9";
type = "gem";
};
version = "1.0.3";
};
zeitwerk = {
groups = [ "default" ];
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0ws6rpyj0y9iadjg1890dwnnbjfdbzxsv6r48zbj7f8yn5y0cbl4";
type = "gem";
};
version = "2.7.2";
};
}

View file

@ -10,16 +10,16 @@
buildGo124Module rec {
pname = "git-spice";
version = "0.12.0";
version = "0.13.0";
src = fetchFromGitHub {
owner = "abhinav";
repo = "git-spice";
tag = "v${version}";
hash = "sha256-ew0ehaYXJgc1ePdQCxxfahBdTs5zsiHDfB4SdS2WZ8A=";
hash = "sha256-hqdU0j7H3hhhjGV4lmluG1D6NXNqI80d9gGr5KJ9D+Q=";
};
vendorHash = "sha256-jlCNcjACtms9kI4Lo8AtUfxqODyv4U2nJITGpBNxk9I=";
vendorHash = "sha256-Wi/NNqHnHrfikO0EWDXNdTjPmgHrGSs2k612c0w8OA8=";
subPackages = [ "." ];

View file

@ -0,0 +1,48 @@
{
lib,
buildGo124Module,
fetchFromGitHub,
versionCheckHook,
nix-update-script,
}:
buildGo124Module rec {
pname = "gowebly";
version = "3.0.2";
src = fetchFromGitHub {
owner = "gowebly";
repo = "gowebly";
tag = "v${version}";
hash = "sha256-QsU5Brzs3FeFkQPmpXwehP1G6MocHtCZ9uhw1lFtOEU=";
};
vendorHash = "sha256-wOpenKh+4v0gRY0Zvx3URi4D1jXSrIONcrlzyjJUaSg=";
env.CGO_ENABLED = 0;
ldflags = [
"-s"
"-w"
];
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "doctor";
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "CLI tool to create web applications with Go backend";
longDescription = ''
A CLI tool that makes it easy to create web applications
with Go on the backend, using htmx, hyperscript or Alpine.js,
and the most popular CSS frameworks on the frontend.
'';
homepage = "https://gowebly.org";
changelog = "https://github.com/gowebly/gowebly/releases/tag/v${version}";
license = lib.licenses.asl20;
mainProgram = "gowebly";
maintainers = with lib.maintainers; [ cterence ];
};
}

View file

@ -11,16 +11,16 @@
buildGoModule (finalAttrs: {
pname = "hugo";
version = "0.146.7";
version = "0.147.1";
src = fetchFromGitHub {
owner = "gohugoio";
repo = "hugo";
tag = "v${finalAttrs.version}";
hash = "sha256-I2SJh984uBwJRCMOiHxM1OKBwzbMgxoycovy4U4l6HM=";
hash = "sha256-Fj/1p75uOY+Zx9F9tBOjqa8nL1mbvVZzc3N7Js0qXgQ=";
};
vendorHash = "sha256-Ey0vN5/TbLb7p2M5zOHytl0PLCC658njoR8xZaFJyfo=";
vendorHash = "sha256-/XXYKuZNwrBx+Dr4XacDIzTrdELtXYHRjOzjhcBjoK4=";
checkFlags =
let

View file

@ -1,11 +1,11 @@
{
"invidious": {
"hash": "sha256-OBD1QBzLPWZUz2PrMbwpjaH4bnirTkbm4HlCK4UZUbE=",
"version": "2.20250314.0",
"date": "2025.03.14",
"commit": "e23d0d1"
"hash": "sha256-JXcj5mh0WEetTt91cA+/pgqxNwyIRF+bISOBoHHVZf0=",
"version": "2.20250504.0",
"date": "2025.05.04",
"commit": "aa7de1ed"
},
"videojs": {
"hash": "sha256-jED3zsDkPN8i6GhBBJwnsHujbuwlHdsVpVqa1/pzSH4"
"hash": "sha256-jED3zsDkPN8i6GhBBJwnsHujbuwlHdsVpVqa1/pzSH4="
}
}

View file

@ -2,37 +2,26 @@
lib,
buildGoModule,
fetchFromGitHub,
ast-grep,
versionCheckHook,
nix-update-script,
lipo-go,
}:
buildGoModule rec {
buildGoModule (finalAttrs: {
pname = "lipo-go";
version = "0.10.0";
src = fetchFromGitHub {
owner = "konoui";
repo = "lipo";
tag = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-V1KlgCNKvxnY/B8cmiWFdXzHH6k6VmhNMIta3nckXtA=";
};
vendorHash = "sha256-7M6CRxJd4fgYQLJDkNa3ds3f7jOp3dyloOZtwMtCBQk=";
nativeBuildInputs = [ ast-grep ];
postPatch =
# Remove the test case that is not compatible with nix-build
''
ast-grep run \
--pattern 'func TestLipo_ArchsToLocalFiles($$$) { $$$ }' \
--rewrite "" \
pkg/lipo/archs_test.go
'';
buildPhase = ''
runHook preBuild
make build VERSION=${version} REVISION="" BINARY=$out/bin/lipo
make build VERSION=${finalAttrs.version} REVISION="" BINARY=$out/bin/lipo
runHook postBuild
'';
@ -44,16 +33,14 @@ buildGoModule rec {
versionCheckProgramArg = "-version";
doInstallCheck = true;
passthru = {
updateScript = nix-update-script { };
};
passthru.updateScript = nix-update-script { };
meta = {
description = "Designed to be compatible with macOS lipo, written in golang";
homepage = "https://github.com/konoui/lipo";
changelog = "https://github.com/konoui/lipo/releases/tag/v${version}";
changelog = "https://github.com/konoui/lipo/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ xiaoxiangmoe ];
mainProgram = "lipo";
};
}
})

View file

@ -4,21 +4,22 @@
fetchFromGitHub,
pkg-config,
openssl,
unstableGitUpdater,
}:
rustPlatform.buildRustPackage rec {
rustPlatform.buildRustPackage {
pname = "lunatic";
version = "0.13.2";
version = "0.13.2-unstable-2025-03-29";
src = fetchFromGitHub {
owner = "lunatic-solutions";
repo = "lunatic";
rev = "v${version}";
hash = "sha256-uMMssZaPDZn3bOtQIho+GvUCPmzRllv7eJ+SJuKaYtg=";
rev = "28a2f387ebf6a64ce4b87e2638812e2c032d5049";
hash = "sha256-FnUYnSWarQf68jBfSlIKVZbQHJt5U93MvA6rbNJE23U=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-SzfM4hQW9vTTRqCAEn/EPv9mK9WlXYRFUW8pA/Gfw04=";
cargoHash = "sha256-+2koGrhM9VMLh8uO1YcaugcfmZaCP4S2twKem+y2oks=";
nativeBuildInputs = [
pkg-config
@ -33,10 +34,15 @@ rustPlatform.buildRustPackage rec {
"--skip=state::tests::import_filter_signature_matches"
];
passthru.updateScript = unstableGitUpdater {
tagPrefix = "v";
branch = "main";
};
meta = with lib; {
description = "Erlang inspired runtime for WebAssembly";
homepage = "https://lunatic.solutions";
changelog = "https://github.com/lunatic-solutions/lunatic/blob/v${version}/CHANGELOG.md";
changelog = "https://github.com/lunatic-solutions/lunatic/blob/main/CHANGELOG.md";
license = with licenses; [
mit # or
asl20

View file

@ -0,0 +1,25 @@
From 92a679e02f08eef8e2f8c91371b7a3a1f95b4bbc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tomi=20L=C3=A4hteenm=C3=A4ki?= <lihis@lihis.net>
Date: Fri, 25 Apr 2025 22:04:10 +0300
Subject: [PATCH] Fix incompatible pointer in marker_window_init()
The `g_action_group_activate_action()` takes `GActionGroup` as first parameter.
This fixes compilation with `-Wincompatible-pointer-types`.
---
src/marker-window.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/marker-window.c b/src/marker-window.c
index 0ffd0ce3..98b2fdc5 100644
--- a/src/marker-window.c
+++ b/src/marker-window.c
@@ -866,7 +866,7 @@ marker_window_init (MarkerWindow *window)
if (marker_prefs_get_show_sidebar())
{
// show sidebar and set the "Sidebar" button as activated
- g_action_group_activate_action(G_ACTION_MAP (window), "sidebar", NULL);
+ g_action_group_activate_action(G_ACTION_GROUP (window), "sidebar", NULL);
}
g_signal_connect(window, "delete-event", G_CALLBACK(window_deleted_event_cb), window);

View file

@ -26,6 +26,11 @@ stdenv.mkDerivation rec {
hash = "sha256-HhDhigQ6Aqo8R57Yrf1i69sM0feABB9El5R5OpzOyB0=";
};
patches = [
# https://github.com/fabiocolacio/Marker/pull/427
./fix_incompatible_pointer_in_marker_window_init.patch
];
nativeBuildInputs = [
itstool
meson

View file

@ -0,0 +1,48 @@
{
lib,
fetchFromGitHub,
jre,
makeWrapper,
maven,
}:
let
version = "8.22";
in
maven.buildMavenPackage {
pname = "megabasterd";
inherit version;
src = fetchFromGitHub {
owner = "tonikelope";
repo = "megabasterd";
tag = "v${version}";
hash = "sha256-dkxIbQCnOnZ3tbqijqlRhEtEJ4q1ksot5n0gJ7HvsgI=";
};
mvnHash = "sha256-b7+17CXmBB65fMG472FPjOvr+9nAsUurdBC/7esalCE=";
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
runHook preInstall
jar_filename=MegaBasterd-${version}-jar-with-dependencies.jar
mkdir -p $out/bin $out/share/megabasterd
install -Dm644 target/$jar_filename $out/share/megabasterd
makeWrapper ${jre}/bin/java $out/bin/megabasterd \
--add-flags "-jar $out/share/megabasterd/$jar_filename"
runHook postInstall
'';
meta = {
description = "Yet another unofficial (and ugly) cross-platform MEGA downloader/uploader/streaming suite";
homepage = "https://github.com/tonikelope/megabasterd";
changelog = "https://github.com/tonikelope/megabasterd/releases";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ theobori ];
mainProgram = "megabasterd";
};
}

View file

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "melange";
version = "0.23.9";
version = "0.23.11";
src = fetchFromGitHub {
owner = "chainguard-dev";
repo = pname;
rev = "v${version}";
hash = "sha256-HJNB3SCy54v9Tvc6qXT3jisWcqhUCT0evjJxjCltazc=";
hash = "sha256-HMFCvewIBnqugIAi4tYnoLBp2Czk74D4kzfdRD5Aocw=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;
@ -26,7 +26,7 @@ buildGoModule rec {
'';
};
vendorHash = "sha256-uxEQR6NuNJDtjXY5nPBkVU/1ExpdvTGOIpMTRjz68I8=";
vendorHash = "sha256-Kfs6f4aB+5SrqVVAsbuZm2i3TCWa00PwLMnInHmpPAs=";
subPackages = [ "." ];

View file

@ -5,25 +5,27 @@
installShellFiles,
}:
buildGoModule rec {
buildGoModule (finalAttrs: rec {
pname = "noti";
version = "3.7.0";
version = "3.8.0";
src = fetchFromGitHub {
owner = "variadico";
repo = "noti";
rev = version;
hash = "sha256-8CHSbKOiWNYqKBU1kqQm5t02DJq0JfoIaPsU6Ylc46E=";
tag = finalAttrs.version;
hash = "sha256-FwOS4ifMiODIzKVQufLhkDYOcmXz9dAfWw+hM3rXT/Y=";
};
vendorHash = null;
nativeBuildInputs = [ installShellFiles ];
subPackages = [ "cmd/noti" ];
ldflags = [
"-s"
"-w"
"-X github.com/variadico/noti/internal/command.Version=${version}"
"-X github.com/variadico/noti/internal/command.Version=${finalAttrs.version}"
];
preCheck = ''
@ -34,7 +36,7 @@ buildGoModule rec {
installManPage docs/man/dist/*
'';
meta = with lib; {
meta = {
description = "Monitor a process and trigger a notification";
longDescription = ''
Monitor a process and trigger a notification.
@ -43,8 +45,8 @@ buildGoModule rec {
you when it's done. You can receive messages on your computer or phone.
'';
homepage = "https://github.com/variadico/noti";
license = licenses.mit;
maintainers = with maintainers; [ stites ];
license = lib.licenses.mit;
maintainers = [ lib.maintainers.stites ];
mainProgram = "noti";
};
}
})

View file

@ -5,7 +5,7 @@
}:
let
pname = "nuclear";
version = "0.6.46";
version = "0.6.47";
src = fetchurl {
# Nuclear currently only publishes AppImage releases for x86_64, which is hardcoded in
@ -13,7 +13,7 @@ let
# provide more arches, we should use stdenv.hostPlatform to determine the arch and choose
# source URL accordingly.
url = "https://github.com/nukeop/nuclear/releases/download/v${version}/${pname}-v${version}-x86_64.AppImage";
hash = "sha256-2oamA2T/Fq9TpqrNFByiL+ns12BaWMy3wptYEo5SIXg=";
hash = "sha256-mwCQ6jddNF3knf1w0nztlyB/ijPsyjjV6aMcoYkadRI=";
};
appimageContents = appimageTools.extract { inherit pname version src; };

View file

@ -0,0 +1,29 @@
{
rustPlatform,
fetchFromGitHub,
lib,
}:
let
version = "0.1.1";
in
rustPlatform.buildRustPackage {
pname = "pid-fan-controller";
inherit version;
src = fetchFromGitHub {
owner = "zimward";
repo = "pid-fan-controller";
rev = version;
hash = "sha256-ALR9Qa0AhcGyc3+7x5CEG/72+bJzhaEoIvQNL+QjldY=";
};
cargoHash = "sha256-Y57VSheI94b43SwNCDdFvcNxzkA16KObBvzZ6ywYAyU=";
meta = {
description = "Service to provide closed-loop PID fan control";
homepage = "https://github.com/zimward/pid-fan-controller";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ zimward ];
platforms = lib.platforms.linux;
mainProgram = "pid-fan-controller";
};
}

View file

@ -34,11 +34,11 @@
}:
stdenv.mkDerivation rec {
pname = "plasticity";
version = "25.1.8";
version = "25.1.9";
src = fetchurl {
url = "https://github.com/nkallen/plasticity/releases/download/v${version}/Plasticity-${version}-1.x86_64.rpm";
hash = "sha256-5PjjEsHchryUhmzqyQ4XqwiycNEVCefmpSW/9jZEzpg=";
hash = "sha256-iNgMsQ6JDPRNKssvgVyZ9z8aUFzemboYgm1wIjuERog=";
};
passthru.updateScript = ./update.sh;

View file

@ -8,6 +8,7 @@
SDL2_image,
libX11,
openssl,
zlib,
which,
libsForQt5,
makeWrapper,
@ -18,13 +19,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "poptracker";
version = "0.30.1";
version = "0.31.0";
src = fetchFromGitHub {
owner = "black-sliver";
repo = "PopTracker";
rev = "v${finalAttrs.version}";
hash = "sha256-U1C0vwHcUfjBPGLcmmWFqaKmIMPlV/FumIbFJ6JDBFc=";
hash = "sha256-uGzgkXOXmpByXewDuo0NieXHYT6fzaHqyfP60V5fMOY=";
fetchSubmodules = true;
};
@ -50,6 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
SDL2_image
libX11
openssl
zlib
];
buildFlags = [

View file

@ -1,9 +1,9 @@
# Generated by ./update.sh - do not update manually!
# Last updated: 2025-04-25
# Last updated: 2025-05-03
{
version = "3.2.17-2025.4.23";
amd64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_3.2.17_250423_amd64_01.deb";
arm64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_3.2.17_250423_arm64_01.deb";
arm64_hash = "sha256-BJ6WNswd9foQRD+SrJm854OiSVxREHJIv+VFe1NGnKE=";
amd64_hash = "sha256-l65Gci0wRcGuL7xqwnCng8hWdlbNC6pEaE8NaZpftM0=";
version = "3.2.17-2025.4.29";
amd64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_3.2.17_250429_amd64_01.deb";
arm64_url = "https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_3.2.17_250429_arm64_01.deb";
arm64_hash = "sha256-BxyJ9NNdMck3qk8wzCd07x/W9QlTMemHi3l0TIQ04ZY=";
amd64_hash = "sha256-DDqLHl8Ig7miZTheRltBq+riLXyGGnW8NtcOI0PgKtc=";
}

View file

@ -12,19 +12,19 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "raycast";
version = "1.96.0";
version = "1.97.0";
src =
{
aarch64-darwin = fetchurl {
name = "Raycast.dmg";
url = "https://releases.raycast.com/releases/${finalAttrs.version}/download?build=arm";
hash = "sha256-GN9luYvWzUsLp6KzKV+Iwc2shxRHkOLSDq6ZJaKZ7vU=";
hash = "sha256-cmaih5QYhdSNcYiVrfOkyOO+KMwClvrVkRykY6E9bQ4=";
};
x86_64-darwin = fetchurl {
name = "Raycast.dmg";
url = "https://releases.raycast.com/releases/${finalAttrs.version}/download?build=x86_64";
hash = "sha256-HGO6mZvnBk9R1IS8dNDGj3dwgSNJ+XPjAG4+gJ0KvY4=";
hash = "sha256-iJz3WIDh1n0ZgDgeHYZgxkysVjxJnbFF+48rzCLc4pw=";
};
}
.${stdenvNoCC.system} or (throw "raycast: ${stdenvNoCC.system} is unsupported.");

View file

@ -6,10 +6,10 @@
}:
let
pname = "saleae-logic-2";
version = "2.4.22";
version = "2.4.29";
src = fetchurl {
url = "https://downloads2.saleae.com/logic2/Logic-${version}-linux-x64.AppImage";
hash = "sha256-MMuuSYOVw4O/JDsXz9OneUyJMNLUUCBpAMRqCs64khk=";
hash = "sha256-eCG2Al6MmWTCiYtaO6qIoNji4QreMryoZRcfKjk5d1c=";
};
desktopItem = makeDesktopItem {
name = "saleae-logic-2";

View file

@ -0,0 +1,146 @@
{
lib,
stdenv,
buildNpmPackage,
fetchFromGitHub,
fetchpatch,
makeWrapper,
electron_35,
vulkan-loader,
makeDesktopItem,
copyDesktopItems,
commandLineArgs ? [ ],
nix-update-script,
}:
let
electron = electron_35;
in
buildNpmPackage (finalAttrs: {
pname = "shogihome";
version = "1.22.1";
src = fetchFromGitHub {
owner = "sunfish-shogi";
repo = "shogihome";
tag = "v${finalAttrs.version}";
hash = "sha256-vVKdaFKOx4xm4BK+AjVr4cEDOHpOjOe58k2wUAhB9XA=";
};
npmDepsHash = "sha256-OS5DR+24F98ICgQ6zL4VD231Rd5JB/gJKl+qNfnP3PE=";
patches = [
# Make it possible to load the electron-builder config without sideeffects.
# PR at https://github.com/sunfish-shogi/shogihome/pull/1184
# Should be removed next 1.22.X ShogiHome update or possibly 1.23.X.
(fetchpatch {
url = "https://github.com/sunfish-shogi/shogihome/commit/a075571a3bf4f536487e1212a2e7a13802dc7ec7.patch";
sha256 = "sha256-dJyaoWOC+fEufzpYenmfnblgd2C9Ymv4Cl8Y/hljY6c=";
})
];
postPatch = ''
substituteInPlace package.json \
--replace-fail 'npm run install:esbuild && ' "" \
--replace-fail 'npm run install:electron && ' ""
substituteInPlace .electron-builder.config.mjs \
--replace-fail 'AppImage' 'dir'
'';
env = {
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
npm_config_build_from_source = "true";
};
nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [
makeWrapper
copyDesktopItems
];
makeCacheWritable = true;
dontNpmBuild = true;
buildPhase =
''
runHook preBuild
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
''
# Electron builder complains about symlink in electron-dist
+ lib.optionalString stdenv.hostPlatform.isLinux ''
rm electron-dist/libvulkan.so.1
cp '${lib.getLib vulkan-loader}/lib/libvulkan.so.1' electron-dist
''
+ ''
npm run electron:pack
./node_modules/.bin/electron-builder \
--dir \
--config .electron-builder.config.mjs \
-c.electronDist=electron-dist \
-c.electronVersion=${electron.version}
runHook postBuild
'';
installPhase =
''
runHook preInstall
''
+ lib.optionalString stdenv.hostPlatform.isLinux ''
mkdir -p "$out/share/lib/shogihome"
cp -r dist/*-unpacked/{locales,resources{,.pak}} "$out/share/lib/shogihome"
install -Dm444 'docs/icon.svg' "$out/share/icons/hicolor/scalable/apps/shogihome.svg"
makeWrapper '${lib.getExe electron}' "$out/bin/shogihome" \
--add-flags "$out/share/lib/shogihome/resources/app.asar" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" \
--add-flags ${lib.escapeShellArgs commandLineArgs} \
--inherit-argv0
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir -p "$out/Applications"
mv dist/mac*/ShogiHome.app "$out/Applications"
''
+ ''
runHook postInstall
'';
desktopItems = [
(makeDesktopItem {
name = "shogihome";
exec = "shogihome %U";
icon = "shogihome";
desktopName = "ShogiHome";
genericName = "Shogi Frontend";
comment = finalAttrs.meta.description;
categories = [ "Game" ];
startupWMClass = "ShogiHome";
})
];
passthru = {
updateScript = nix-update-script {
extraArgs = [
"--version-regex=^v([\\d\\.]+)$"
];
};
};
meta = {
description = "Shogi frontend supporting USI engines";
homepage = "https://sunfish-shogi.github.io/shogihome/";
license = with lib.licenses; [
mit
asl20 # for icons
];
maintainers = with lib.maintainers; [
kachick
];
mainProgram = "shogihome";
};
})

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "smlfmt";
version = "1.1.0";
version = "1.2.0";
src = fetchFromGitHub {
owner = "shwestrick";
repo = "smlfmt";
rev = "v${version}";
hash = "sha256-qwhYOZrck028NliPDnqFZel3IxopQzouhHq6R7DkfPE=";
hash = "sha256-QdpEsypkCzR/OwllKFLjz3/JvzV0OlGiqXUnS7iGD5A=";
};
nativeBuildInputs = [ mlton ];

View file

@ -16,17 +16,17 @@
maven.buildMavenPackage rec {
pname = "sonarlint-ls";
version = "3.20.1.76068";
version = "3.21.0.76098";
src = fetchFromGitHub {
owner = "SonarSource";
repo = "sonarlint-language-server";
rev = version;
hash = "sha256-sM0/L6li314/j//hTDpSKr+XimWY5EZiC1d0CVKoWmw=";
hash = "sha256-5SBdLaebf0AKyFKDpaSEEIzEr00ZqLHYWfh+P4WaWus=";
};
mvnJdk = jdk17;
mvnHash = "sha256-aF2lQhed7EN6l3Nwu90x3b4mzwfXyZNCYE8fLMU1Ln0=";
mvnHash = "sha256-/UM84Pvs/e3C8joa8Ti0Ponwjuaby7vVH8iiagJRcqI=";
# Disables failing tests which either need network access or are flaky.
mvnParameters = lib.escapeShellArgs [

View file

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "tbls";
version = "1.85.1";
version = "1.85.2";
src = fetchFromGitHub {
owner = "k1LoW";
repo = "tbls";
tag = "v${version}";
hash = "sha256-68eNqSncPwtaUi/m5ccHF+o4PGxo39a1QGtyisYesoM=";
hash = "sha256-dUOQKKtUaWIMgm2IA2qj67AuyAvL5ifXnGq6kBuj+zw=";
};
vendorHash = "sha256-hARsbsy9us/knGg6dwNgDezjas5IC6GtL7neEZbwgvo=";
vendorHash = "sha256-XIMC2976vLbvl6O2Xq9VhOLFRb/3IUgspqsrVNLofHg=";
excludedPackages = [ "scripts/jsonschema" ];

View file

@ -2,26 +2,29 @@
lib,
buildGoModule,
fetchFromGitHub,
nix-update-script,
}:
buildGoModule {
pname = "unconvert";
version = "0-unstable-2023-09-07";
version = "0-unstable-2025-02-16";
src = fetchFromGitHub {
owner = "mdempsky";
repo = "unconvert";
rev = "415706980c061b6f71ea923bd206aec88785638f";
hash = "sha256-MchA8uvy+MyQ/VaglBDTC7j/lNIKAtGeeECLoFfH6pI=";
rev = "4a038b3d31f56ff5ba511953b745c80a2317e4ae";
hash = "sha256-97H5rlb4buRT6I3OUID8/UARFtCTDhIxnPCkpFF9RDs=";
};
vendorHash = "sha256-vZDk+ZNCMP5RRNrgeIowdOKPot7rqM84JhlbfvcQbB4=";
vendorHash = "sha256-Yh33ZvQoMG9YM8bdxlMYEIwH2QMTwv2HSYSmA4C9EpA=";
ldflags = [
"-s"
"-w"
];
passthru.updateScript = nix-update-script { extraArgs = lib.singleton "--version=branch"; };
meta = with lib; {
description = "Remove unnecessary type conversions from Go source";
mainProgram = "unconvert";

View file

@ -23,11 +23,11 @@ let
in
stdenv.mkDerivation rec {
pname = if isFullPackage then "vifm-full" else "vifm";
version = "0.14";
version = "0.14.1";
src = fetchurl {
url = "https://github.com/vifm/vifm/releases/download/v${version}/vifm-${version}.tar.bz2";
hash = "sha256-JxTdTO9OU+eomAroRF6IJ5EE+BXUf0F/oLit/i89G+0=";
hash = "sha256-AfGeEU4p9IHSD6prNaQriDo/SHMk3bL3EHzhwQLEpJY=";
};
nativeBuildInputs = [

View file

@ -6,10 +6,10 @@
}:
let
pname = "volanta";
version = "1.10.11";
version = "1.11.3";
src = fetchurl {
url = "https://cdn.volanta.app/software/volanta-app/${version}-5495eec5/volanta-${version}.AppImage";
hash = "sha256-DvAtgLe8eWG9sqxPaZGsk0CZWZci124bu2IFDU5Y1BQ=";
url = "https://cdn.volanta.app/software/volanta-app/${version}-622dc10d/volanta-${version}.AppImage";
hash = "sha256-vplJEE+D2Yzr4fD//CdLRAYAKQp6a1RR0jZ1N46Q8xU=";
};
appImageContents = appimageTools.extract { inherit pname version src; };
in

View file

@ -0,0 +1,87 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
}:
let
pname = "xremap";
version = "0.10.10";
src = fetchFromGitHub {
owner = "xremap";
repo = pname;
tag = "v${version}";
hash = "sha256-U2TSx0O2T53lUiJNpSCUyvkG4Awa0+a4N6meFn09LbI=";
};
cargoHash = "sha256-8IVexszltzlBBShGkjZwyDKs02udrVpZEOwfzRzAraU=";
buildXremap =
{
suffix ? "",
features ? [ ],
descriptionSuffix ? "",
}:
assert descriptionSuffix != "" && features != [ ];
rustPlatform.buildRustPackage {
pname = "${pname}${suffix}";
inherit version src cargoHash;
nativeBuildInputs = [ pkg-config ];
buildNoDefaultFeatures = true;
buildFeatures = features;
useFetchCargoVendor = true;
meta = {
description =
"Key remapper for X11 and Wayland"
+ lib.optionalString (descriptionSuffix != "") " (${descriptionSuffix} support)";
homepage = "https://github.com/xremap/xremap";
changelog = "https://github.com/xremap/xremap/blob/${src.tag}/CHANGELOG.md";
license = lib.licenses.mit;
mainProgram = "xremap";
maintainers = [ lib.maintainers.hakan-demirli ];
platforms = lib.platforms.linux;
};
};
variants = {
x11 = buildXremap {
features = [ "x11" ];
descriptionSuffix = "X11";
};
gnome = buildXremap {
suffix = "-gnome";
features = [ "gnome" ];
descriptionSuffix = "Gnome";
};
kde = buildXremap {
suffix = "-kde";
features = [ "kde" ];
descriptionSuffix = "KDE";
};
wlroots = buildXremap {
suffix = "-wlroots";
features = [ "wlroots" ];
descriptionSuffix = "wlroots";
};
hyprland = buildXremap {
suffix = "-hyprland";
features = [ "hypr" ];
descriptionSuffix = "Hyprland";
};
};
in
variants.wlroots.overrideAttrs (finalAttrs: {
passthru = {
gnome = variants.gnome;
kde = variants.kde;
wlroots = variants.wlroots;
hyprland = variants.hyprland;
x11 = variants.x11;
};
})

View file

@ -10,13 +10,13 @@
buildGoModule (finalAttrs: {
pname = "ygot";
version = "0.30.0";
version = "0.31.0";
src = fetchFromGitHub {
owner = "openconfig";
repo = "ygot";
tag = "v${finalAttrs.version}";
hash = "sha256-nV0vh4KZtXEMc8BNRkrRVwgb59KWahkqROxu9/7xP/E=";
hash = "sha256-jhPo3K6Q/LcfMkp2jaFwHGoFJSMdBNFidVU3A42Locw=";
};
vendorHash = "sha256-MxyjO/uptmBXz+JWgRcP/SWeEWyz9pNA9eM4Rul45cM=";

View file

@ -8,13 +8,13 @@
}:
buildGoModule rec {
pname = "ytt";
version = "0.51.2";
version = "0.52.0";
src = fetchFromGitHub {
owner = "carvel-dev";
repo = "ytt";
rev = "v${version}";
sha256 = "sha256-vFD0CKEVbaOiETSsDQeBJV1flekvS893wPYc6iHxxRE=";
sha256 = "sha256-lFq1cdLKnNy+GaJLap2b/zhRvK8CjYPl3CQx9FKEpUc=";
};
vendorHash = null;

View file

@ -7,7 +7,7 @@
}:
let
version = "1.5.0";
version = "1.6.0";
in
buildPecl {
inherit version;
@ -17,7 +17,7 @@ buildPecl {
owner = "php-ds";
repo = "ext-ds";
rev = "v${version}";
sha256 = "sha256-lL1PUjc4bMTsWm2th0wDxnMaGuVziBUtgK88bUJXuBY=";
sha256 = "sha256-c7MIqaPwIgdzKHRqR2km1uTQRrrr3OzDzopTbz5rLnE=";
};
buildInputs = [ pcre2 ];

View file

@ -28,7 +28,7 @@
buildPythonPackage rec {
pname = "aiogram";
version = "3.19.0";
version = "3.20.0.post0";
pyproject = true;
disabled = pythonOlder "3.9";
@ -37,7 +37,7 @@ buildPythonPackage rec {
owner = "aiogram";
repo = "aiogram";
tag = "v${version}";
hash = "sha256-xdDQjH/HUVNJgSxjrqXNgc+hOKuiusAH00PRMRD+8Dw=";
hash = "sha256-OQH5wes2RGSbT9GPKcZVVxpsFbtOnXd6aAeYfQST1Xs=";
};
build-system = [ hatchling ];
@ -76,18 +76,12 @@ buildPythonPackage rec {
pytz
] ++ lib.flatten (builtins.attrValues optional-dependencies);
pytestFlagsArray = [
"-W"
"ignore::pluggy.PluggyTeardownRaisedWarning"
"-W"
"ignore::pytest.PytestDeprecationWarning"
"-W"
"ignore::DeprecationWarning"
];
pythonImportsCheck = [ "aiogram" ];
passthru.updateScript = gitUpdater { rev-prefix = "v"; };
passthru.updateScript = gitUpdater {
rev-prefix = "v";
ignoredVersions = "4.1";
};
__darwinAllowLocalNetworking = true;

View file

@ -9,12 +9,12 @@
buildPythonPackage rec {
pname = "deepl";
version = "1.21.1";
version = "1.22.0";
format = "pyproject";
src = fetchPypi {
inherit pname version;
hash = "sha256-unGvE6BU1aPNj3TTRsHA67XpVriTT+uTRZ7qwN8Ie1Q=";
hash = "sha256-6wlWjlmW3/aiwxjUCiK9Z9P88E8uwrGvmFuNS2zwlrY=";
};
nativeBuildInputs = [ poetry-core ];

View file

@ -2,7 +2,7 @@
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
pythonAtLeast,
jinja2,
setuptools-scm,
shtab,
@ -15,8 +15,6 @@ buildPythonPackage rec {
version = "0.0.9";
pyproject = true;
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "Freed-Wu";
repo = "help2man";
@ -24,17 +22,24 @@ buildPythonPackage rec {
hash = "sha256-BIDn+LQzBtDHUtFvIRL3NMXNouO3cMLibuYBoFtCUxI=";
};
nativeBuildInputs = [
build-system = [
jinja2
setuptools-scm
shtab
tomli
];
propagatedBuildInputs = [ jinja2 ];
dependencies = [ jinja2 ];
nativeCheckInputs = [ pytestCheckHook ];
disabledTests = lib.optionals (pythonAtLeast "3.13") [
# Checks the output of `help2man --help`.
# Broken since 3.13 due to changes in `argparse`.
# Upstream issue: https://github.com/Freed-Wu/help2man/issues/6
"test_help"
];
pythonImportsCheck = [ "help2man" ];
meta = with lib; {

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "jh2";
version = "5.0.8";
version = "5.0.9";
pyproject = true;
disabled = pythonOlder "3.10";
@ -21,14 +21,14 @@ buildPythonPackage rec {
owner = "jawah";
repo = "h2";
tag = "v${version}";
hash = "sha256-dQ0FqiX9IqgF8fz0JDWQSHQrr9H3UwG9+mkZI3DwWSU=";
hash = "sha256-PA2hv+PIqcsvAIh8yIoQjol+Iaa3qsNRE8rBnR4UOzY=";
fetchSubmodules = true;
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit src;
name = "${pname}-${version}";
hash = "sha256-P27BIsloNsHHej8qE8EDtXLVvnUmWcbb/6LhP2w7wrw=";
hash = "sha256-CW95omstpWm76TTSKsb04iChU0EW1Vl+OA3QXxfZAX0=";
};
build-system = [

View file

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "linode-api";
version = "5.29.0";
version = "5.29.1";
pyproject = true;
disabled = pythonOlder "3.9";
@ -24,7 +24,7 @@ buildPythonPackage rec {
owner = "linode";
repo = "python-linode-api";
tag = "v${version}";
hash = "sha256-9dDEEjY9ajh/eMuXTLkLVSGb38TOi3RDmRIf2vKknkI=";
hash = "sha256-orMQr3FYyK4piazMsZmYkaZ/G/DvQOZObdtWt0wiEi4=";
};
build-system = [ setuptools ];

View file

@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "mediapy";
version = "1.2.3";
version = "1.2.4";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
hash = "sha256-vDt5wXZ6OsCSbzShm+Ms9jhD5h3bMvBeMXOxmL65s7I=";
hash = "sha256-BSlHpnbr00kTWaaUOxRFWf3EFPdBsDoFx4+ntikeaxI=";
};
nativeBuildInputs = [ flit-core ];

View file

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "model-checker";
version = "0.9.18";
version = "0.9.19";
pyproject = true;
disabled = pythonOlder "3.8";
@ -19,7 +19,7 @@ buildPythonPackage rec {
src = fetchPypi {
pname = "model_checker";
inherit version;
hash = "sha256-soOwym5oZZMLOOWTF14ZLcFX0RQcGnvC1Eg+k8qUMbo=";
hash = "sha256-OzK2TqEXujCdpOyS2qo5L8PAv8cfLLbiItD+OkzlyyI=";
};
# z3 does not provide a dist-info, so python-runtime-deps-check will fail

View file

@ -7,14 +7,14 @@
}:
buildPythonPackage rec {
pname = "netbox-plugin-dns";
version = "1.2.7";
version = "1.2.11";
pyproject = true;
src = fetchFromGitHub {
owner = "peteeckel";
repo = "netbox-plugin-dns";
tag = version;
hash = "sha256-l0jPn4dyUHm/E8tmSpmSXkSRa5dsD7ap8Gl3RSdfRoU=";
hash = "sha256-cT2nvPDsvZBVuhvvORtxwb2TDHqnSpvpIJFkGZy1CEc=";
};
build-system = [ setuptools ];

View file

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "pathos";
version = "0.3.3";
version = "0.3.4";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "uqfoundation";
repo = pname;
tag = version;
hash = "sha256-J3rwnsn/3DXmChydwNC5yvsdSk1mzvPSnSo21BwkhSE=";
hash = "sha256-oVqWrX40umazNw/ET/s3pKUwvh8ctgF9sS0U8WwFQkA=";
};
propagatedBuildInputs = [
@ -38,7 +38,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Parallel graph management and execution in heterogeneous computing";
homepage = "https://pathos.readthedocs.io/";
changelog = "https://github.com/uqfoundation/pathos/releases/tag/${version}";
changelog = "https://github.com/uqfoundation/pathos/releases/tag/${src.tag}";
license = licenses.bsd3;
maintainers = [ ];
};

View file

@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "pipdeptree";
version = "2.26.0";
version = "2.26.1";
pyproject = true;
disabled = pythonOlder "3.8";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "tox-dev";
repo = "pipdeptree";
tag = version;
hash = "sha256-Nq+xXzi5PeDDNTtkTaMTWO4HpxkjSUptE4jwfjBoauY=";
hash = "sha256-mgmUIN49zLo5XYWW5Y9XXeZ9RurB1LekF3/vl8EDhxM=";
};
postPatch = ''

View file

@ -11,14 +11,14 @@
buildPythonPackage rec {
pname = "publicsuffixlist";
version = "1.0.2.20250430";
version = "1.0.2.20250503";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-de7yJviyIb/R0Z93yh5LeQKpefjGsJi1YWZ/AtXwtnc=";
hash = "sha256-RHby2R/iEK7zUK4lKq+zTWKVHClZ8+zJ+EK2WxCT9Gw=";
};
build-system = [ setuptools ];

View file

@ -20,16 +20,16 @@
buildPythonPackage rec {
pname = "pytelegrambotapi";
version = "4.26.0";
version = "4.27.0";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "eternnoir";
repo = "pyTelegramBotAPI";
tag = version;
hash = "sha256-y0Cs1DkbWwR3UYo+2ieRoFi0CSEKX0xwyVjRVC48efg=";
hash = "sha256-UozVUdqNxxwWTBoq7ekr8ZX5KdkvQj+SiNSwebVXblI=";
};
build-system = [ hatchling ];
@ -60,7 +60,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Python implementation for the Telegram Bot API";
homepage = "https://github.com/eternnoir/pyTelegramBotAPI";
changelog = "https://github.com/eternnoir/pyTelegramBotAPI/releases/tag/${version}";
changelog = "https://github.com/eternnoir/pyTelegramBotAPI/releases/tag/${src.tag}";
license = licenses.gpl2Only;
maintainers = with maintainers; [ das_j ];
};

View file

@ -23,7 +23,7 @@
buildPythonPackage rec {
pname = "pydmd";
version = "2025.04.01";
version = "2025.05.01";
pyproject = true;
src = fetchFromGitHub {

View file

@ -8,13 +8,13 @@
buildPythonPackage rec {
pname = "pysol-cards";
version = "0.20.0";
version = "0.22.0";
format = "setuptools";
src = fetchPypi {
inherit version;
pname = "pysol_cards";
hash = "sha256-0jlmFojJyvvTA+Hv0PEUjZByHja5lC+mFVOtUgoVa0E=";
hash = "sha256-xVXvXgWtQXdOdCtgPObmunbl0BPd9K4Iej2HxVJ58UI=";
};
propagatedBuildInputs = [

View file

@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "pytest-ansible";
version = "25.4.0";
version = "25.4.1";
pyproject = true;
disabled = pythonOlder "3.10";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "ansible";
repo = "pytest-ansible";
tag = "v${version}";
hash = "sha256-AX/yqxWHlLvS0K3Axhukzimi7IZYY6+IwkB9+tiqHTM=";
hash = "sha256-AJU7jGO/fN5R0ZVb/WhiXZKEZF4Z2ibhIBs+267lSSk=";
};
postPatch = ''

View file

@ -57,7 +57,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "SCM wrapper and fsspec filesystem";
homepage = "https://github.com/iterative/scmrepo";
changelog = "https://github.com/iterative/scmrepo/releases/tag/${version}";
changelog = "https://github.com/iterative/scmrepo/releases/tag/${src.tag}";
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};

View file

@ -11,14 +11,14 @@
buildPythonPackage rec {
pname = "tskit";
version = "0.6.2";
version = "0.6.3";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-2ME+czMbliqdPDUsF2jlK6Ymh7YxZwXs7GoEVY1XVYE=";
hash = "sha256-bbo89pMhTDEF2M3c1pauDjECNmk34CmmqmXNmOcbVfI=";
};
postPatch = ''

View file

@ -19,14 +19,14 @@
buildPythonPackage rec {
pname = "ufo2ft";
version = "3.4.2";
version = "3.4.3";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
hash = "sha256-KRLkYmNSAL0s6G18ATxUa451mXinVYvDxe6zbYh3kU4=";
hash = "sha256-jGMH1VZQAUszd8uxH+3mRAfudTiOEoBXSnGOUcqPXao=";
};
build-system = [

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "zwave-js-server-python";
version = "0.62.0";
version = "0.63.0";
pyproject = true;
disabled = pythonOlder "3.12";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "home-assistant-libs";
repo = "zwave-js-server-python";
tag = version;
hash = "sha256-V/YydWNSjZVvHeeDNMUTEtMQL6/oJvyXtTG/akELjEs=";
hash = "sha256-GQ55IvicdVi6EfRimuyuEbwGDWQIdpLrgi/3ZCj+wJM=";
};
build-system = [ setuptools ];

View file

@ -31,5 +31,16 @@
"x86_64-linux": "d346f416d061f38bc53f3d57e0f01c03d0febb00199e362f7ef2e1209f93817e"
},
"version": "35.2.1"
},
"36": {
"hashes": {
"aarch64-darwin": "5f38c1939c76a6299ac68a9b5b56deea8d81f4ac02f5855a59a7aad4c3c86eef",
"aarch64-linux": "e09c83143897a2156e070689df80591e62404ed5289e6f6674fe46ccdff6f2f3",
"armv7l-linux": "69210a543ab81214c635868cf3325b58656892cf831cc91eee232cc6112b684d",
"headers": "0wz92myljv28smg20jgs59l2n9kdha99n7ch0ng1bzhavwp619jg",
"x86_64-darwin": "86eb97a6b4f800efc82910cf366e1e1c93fbc003dcb55aad5f78a0af4f0b826e",
"x86_64-linux": "088b95582140e2c9175f01df5c82a80048085acfb416bb27783bf4d0babc7eb4"
},
"version": "36.1.0"
}
}

View file

@ -31,5 +31,16 @@
"x86_64-linux": "d1f1027d1d01a0ce6cfdf60fffa64d64ebe75d0c54e9a5acff51f1c8005f6ef4"
},
"version": "35.2.1"
},
"36": {
"hashes": {
"aarch64-darwin": "e6373639cd3d32cd105808bae06bb7d10357fb54f3ad74aa4a9bf9e9007985a6",
"aarch64-linux": "8d53627e7f69f0d573f9228d9c358f28662521ee200b674f650058deefb0c745",
"armv7l-linux": "dbe7be9ba75d76eb572da822d73487dec128ef6d5e97f6b91f5a3d7a7b52215e",
"headers": "0wz92myljv28smg20jgs59l2n9kdha99n7ch0ng1bzhavwp619jg",
"x86_64-darwin": "46bfd929e8207eccc4360070d9a8c81cab053685db1cfcfeafedd0feaa3da238",
"x86_64-linux": "de707f14b5959821e82b46c391bea6f4199878ad9c61f56c2a358dd80b45664a"
},
"version": "36.1.0"
}
}

View file

@ -166,6 +166,10 @@ in
done
)
''
+ lib.optionalString (lib.versionAtLeast info.version "36") ''
echo 'checkout_glic_e2e_tests = false' >> build/config/gclient_args.gni
echo 'checkout_mutter = false' >> build/config/gclient_args.gni
''
+ base.postPatch;
preConfigure =

File diff suppressed because it is too large Load diff

View file

@ -9,13 +9,13 @@
stdenvNoCC.mkDerivation rec {
pname = "FreshRSS";
version = "1.26.1";
version = "1.26.2";
src = fetchFromGitHub {
owner = "FreshRSS";
repo = "FreshRSS";
rev = version;
hash = "sha256-hgkFNZg+A1cF+xh17d2n4SCvxTZm/Eryj6jP7MvnpTE=";
hash = "sha256-TVtyX0/HKtLHFjHHjZDwOOcbHJ7Bq0NrlI3drlm6Gy4=";
};
postPatch = ''

View file

@ -9,18 +9,18 @@
rustPlatform.buildRustPackage rec {
pname = "nushell_plugin_highlight";
version = "1.4.4+0.103.0";
version = "1.4.5+0.104.0";
src = fetchFromGitHub {
repo = "nu-plugin-highlight";
owner = "cptpiepmatz";
rev = "refs/tags/v${version}";
hash = "sha256-XxYsxoHeRhZ4A52ctyJZVqJ40J3M3R42NUetZZIbk0w=";
hash = "sha256-B2CkdftlxczA6KHJsNmbPH7Grzq4MG7r6CRMvVTMkzQ=";
fetchSubmodules = true;
};
useFetchCargoVendor = true;
cargoHash = "sha256-y0SCpDU1GM5JrixOffP1DRGtaXZsBjr7fYgYxhn4NDg=";
cargoHash = "sha256-3bLATtK9r4iVpxdbg5eCvzeGpIqWMl/GTDGCORuQfgY=";
nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.cc.isClang [ rustPlatform.bindgenHook ];
cargoBuildFlags = [ "--package nu_plugin_highlight" ];

View file

@ -1326,8 +1326,6 @@ with pkgs;
git-credential-manager = callPackage ../applications/version-management/git-credential-manager { };
git-fame = callPackage ../applications/version-management/git-fame { };
git-gone = callPackage ../applications/version-management/git-gone { };
git-imerge = python3Packages.callPackage ../applications/version-management/git-imerge { };
@ -2473,8 +2471,6 @@ with pkgs;
nixpkgs-pytools = with python3.pkgs; toPythonApplication nixpkgs-pytools;
noti = callPackage ../tools/misc/noti { };
nsz = with python3.pkgs; toPythonApplication nsz;
ocrmypdf = with python3.pkgs; toPythonApplication ocrmypdf;
@ -7277,12 +7273,14 @@ with pkgs;
electron_33-bin
electron_34-bin
electron_35-bin
electron_36-bin
;
inherit (callPackages ../development/tools/electron/chromedriver { })
electron-chromedriver_33
electron-chromedriver_34
electron-chromedriver_35
electron-chromedriver_36
;
electron_33 = electron_33-bin;
@ -7296,6 +7294,11 @@ with pkgs;
electron-source.electron_35
else
electron_35-bin;
electron_36 =
if lib.meta.availableOn stdenv.hostPlatform electron-source.electron_36 then
electron-source.electron_36
else
electron_36-bin;
electron = electron_35;
electron-bin = electron_35-bin;
electron-chromedriver = electron-chromedriver_35;