diff --git a/.github/workflows/basic-eval.yml b/.github/workflows/basic-eval.yml index 51429ae40bee..41f751fd061f 100644 --- a/.github/workflows/basic-eval.yml +++ b/.github/workflows/basic-eval.yml @@ -1,14 +1,15 @@ name: Basic evaluation checks on: - pull_request: - branches: - - master - - release-** - push: - branches: - - master - - release-** + workflow_dispatch + # pull_request: + # branches: + # - master + # - release-** + # push: + # branches: + # - master + # - release-** jobs: tests: runs-on: ubuntu-latest diff --git a/maintainers/scripts/feature-freeze-teams.pl b/maintainers/scripts/feature-freeze-teams.pl new file mode 100755 index 000000000000..eb37150befe3 --- /dev/null +++ b/maintainers/scripts/feature-freeze-teams.pl @@ -0,0 +1,98 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i perl -p perl -p perlPackages.JSON perlPackages.LWPUserAgent perlPackages.LWPProtocolHttps perlPackages.TermReadKey + +# This script generates a list of teams to ping for the Feature Freeze announcement on Discourse. +# It's intended to be used by Release Managers before creating such posts. +# +# The script interactively reads a GitHub username and a corresponding GitHub Personal Access token. +# This is required to access the GitHub Teams API so the token needs at least the read:org privilege. + +## no critic (InputOutput::RequireCheckedSyscalls, InputOutput::ProhibitBacktickOperators) +use strict; +use warnings; +use Carp; +use Cwd 'abs_path'; +use File::Basename; +use JSON qw(decode_json); +use LWP::UserAgent; +use Term::ReadKey qw(ReadLine ReadMode); + +sub github_team_members { + my ($team_name, $username, $token) = @_; + my @ret; + + my $req = HTTP::Request->new('GET', "https://api.github.com/orgs/NixOS/teams/$team_name/members", [ 'Accept' => 'application/vnd.github.v3+json' ]); + $req->authorization_basic($username, $token); + my $response = LWP::UserAgent->new->request($req); + + if ($response->is_success) { + my $content = decode_json($response->decoded_content); + foreach (@{$content}) { + push @ret, $_->{'login'}; + } + } else { + print {*STDERR} "!! Requesting members of GitHub Team '$team_name' failed: $response->status_line"; + } + + return \@ret; +} + +# Read GitHub credentials +print {*STDERR} 'GitHub username: '; +my $github_user = ReadLine(0); +ReadMode('noecho'); +print {*STDERR} 'GitHub personal access token (no echo): '; +my $github_token = ReadLine(0); +ReadMode('restore'); +print {*STDERR} "\n"; +chomp $github_user; +chomp $github_token; + +# Read nix output +my $nix_version = `nix --version`; +my $out; +my $lib_path = abs_path(dirname(__FILE__)) . '../../../lib'; +if ($nix_version =~ m/2[.]3[.]/msx) { + $out = `nix eval --json '(import $lib_path).teams'` || croak 'nix eval failed'; +} else { + $out = `nix --extra-experimental-features nix-command eval --json --impure --expr '(import $lib_path).teams'` || croak('nix eval failed'); +} +my $data = decode_json($out); + +# Process teams +print {*STDERR} "\n"; +while (my ($team_nix_key, $team_config) = each %{$data}) { + # Ignore teams that don't want to be or can't be pinged + if (not defined $team_config->{enableFeatureFreezePing} or not $team_config->{enableFeatureFreezePing}) { + next; + } + if (not defined $team_config->{shortName}) { + print {*STDERR} "!! The team with the nix key '$team_nix_key' has no shortName set - ignoring"; + next; + } + # Team name + print {*STDERR} "$team_config->{shortName}:"; + # GitHub Teams + my @github_members; + if (defined $team_config->{githubTeams}) { + foreach (@{$team_config->{githubTeams}}) { + print {*STDERR} " \@NixOS/${_}"; + push @github_members, @{github_team_members($_, $github_user, $github_token)}; + } + } + my %github_members = map { $_ => 1 } @github_members; + # Members + if (defined $team_config->{members}) { + foreach (@{$team_config->{members}}) { + my %user = %{$_}; + my $github_handle = $user{'github'}; + # Ensure we don't ping team members twice (as team member and directly) + if (defined $github_members{$github_handle}) { + next; + } + print {*STDERR} " \@$github_handle"; + } + } + + print {*STDERR} "\n"; +} diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index 8076edacd81a..effcebf0d799 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -3,12 +3,19 @@ # Required members = [ maintainer1 maintainer2 ]; scope = "Maintain foo packages."; + shortName = "foo"; + # Optional + enableFeatureFreezePing = true; + githubTeams = [ "my-subsystem" ]; }; where - `members` is the list of maintainers belonging to the group, - `scope` describes the scope of the group. + - `shortName` short human-readable name + - `enableFeatureFreezePing` will ping this team during the Feature Freeze announcements on releases + - `githubTeams` will ping specified GitHub teams as well More fields may be added in the future. @@ -27,6 +34,7 @@ with lib.maintainers; { m1cr0man ]; scope = "Maintain ACME-related packages and modules."; + shortName = "ACME"; }; bazel = { @@ -41,6 +49,8 @@ with lib.maintainers; { ylecornec ]; scope = "Bazel build tool & related tools https://bazel.build/"; + shortName = "Bazel"; + enableFeatureFreezePing = true; }; beam = { @@ -53,7 +63,32 @@ with lib.maintainers; { minijackson yurrriq ]; + githubTeams = [ + "beam" + ]; scope = "Maintain BEAM-related packages and modules."; + shortName = "BEAM"; + enableFeatureFreezePing = true; + }; + + blockchains = { + members = [ + mmahut + RaghavSood + ]; + scope = "Maintain Blockchain packages and modules."; + shortName = "Blockchains"; + enableFeatureFreezePing = true; + }; + + c = { + members = [ + matthewbauer + mic92 + ]; + scope = "Maintain C libraries and tooling."; + shortName = "C"; + enableFeatureFreezePing = true; }; cinnamon = { @@ -61,6 +96,8 @@ with lib.maintainers; { mkg20001 ]; scope = "Maintain Cinnamon desktop environment and applications made by the LinuxMint team."; + shortName = "Cinnamon"; + enableFeatureFreezePing = true; }; chia = { @@ -68,6 +105,41 @@ with lib.maintainers; { lourkeur ]; scope = "Maintain the Chia blockchain and its dependencies"; + shortName = "Chia Blockchain"; + }; + + cleanup = { + members = [ + ajs124 + ]; + scope = "Cleaning of the nixpkgs source tree."; + shortName = "Cleanup"; + enableFeatureFreezePing = true; + }; + + coq = { + members = [ + cohencyril + Zimmi48 + # gares has no entry in the maintainers list + siraben + vbgl + ]; + scope = "Maintain the Coq theorem prover and related packages."; + shortName = "Coq"; + enableFeatureFreezePing = true; + }; + + darwin = { + members = [ + toonn + ]; + githubTeams = [ + "darwin-maintainers" + ]; + scope = "Maintain Darwin compatibility of packages and Darwin-only packages."; + shortName = "Darwin"; + enableFeatureFreezePing = true; }; cosmopolitan = { @@ -84,6 +156,7 @@ with lib.maintainers; { limeytexan ]; scope = "Group registration for D. E. Shaw employees who collectively maintain packages."; + shortName = "Shaw employees"; }; determinatesystems = { @@ -93,11 +166,63 @@ with lib.maintainers; { grahamc ]; scope = "Group registration for packages maintained by Determinate Systems."; + shortName = "Determinate Systems employees"; + }; + + dhall = { + members = [ + Gabriel439 + ehmry + ]; + scope = "Maintain Dhall and related packages."; + shortName = "Dhall"; + enableFeatureFreezePing = true; + }; + + docker = { + members = [ + roberth + utdemir + ]; + scope = "Maintain Docker and related tools."; + shortName = "DockerTools"; + enableFeatureFreezePing = true; + }; + + docs = { + members = [ + ryantm + ]; + scope = "Maintain nixpkgs/NixOS documentation and tools for building it."; + shortName = "Docs"; + enableFeatureFreezePing = true; + }; + + emacs = { + members = [ + adisbladis + ]; + scope = "Maintain the Emacs editor and packages."; + shortName = "Emacs"; + enableFeatureFreezePing = true; + }; + + # Dummy group for the "everyone else" section + feature-freeze-everyone-else = { + members = [ ]; + githubTeams = [ + "nixpkgs-committers" + "release-engineers" + ]; + scope = "Dummy team for the #everyone else' section during feture freezes, not to be used as package maintainers!"; + shortName = "Everyone else"; + enableFeatureFreezePing = true; }; freedesktop = { members = [ jtojnar ]; scope = "Maintain Freedesktop.org packages for graphical desktop."; + shortName = "freedesktop.org packaging"; }; gcc = { @@ -107,6 +232,7 @@ with lib.maintainers; { ericson2314 ]; scope = "Maintain GCC (GNU Compiler Collection) compilers"; + shortName = "GCC"; }; golang = { @@ -121,6 +247,8 @@ with lib.maintainers; { zowoq ]; scope = "Maintain Golang compilers."; + shortName = "Go"; + enableFeatureFreezePing = true; }; gnome = { @@ -131,7 +259,12 @@ with lib.maintainers; { dasj19 maxeaubrey ]; + githubTeams = [ + "gnome" + ]; scope = "Maintain GNOME desktop environment and platform."; + shortName = "GNOME"; + enableFeatureFreezePing = true; }; haskell = { @@ -141,7 +274,12 @@ with lib.maintainers; { maralorn sternenseemann ]; + githubTeams = [ + "haskell" + ]; scope = "Maintain Haskell packages and infrastructure."; + shortName = "Haskell"; + enableFeatureFreezePing = true; }; home-assistant = { @@ -152,6 +290,7 @@ with lib.maintainers; { mic92 ]; scope = "Maintain the Home Assistant ecosystem"; + shortName = "Home Assistant"; }; iog = { @@ -163,6 +302,7 @@ with lib.maintainers; { nrdxp ]; scope = "Input-Output Global employees, which maintain critical software"; + shortName = "Input-Output Global employees"; }; jitsi = { @@ -173,6 +313,7 @@ with lib.maintainers; { yuka ]; scope = "Maintain Jitsi."; + shortName = "Jitsi"; }; kubernetes = { @@ -184,6 +325,7 @@ with lib.maintainers; { zowoq ]; scope = "Maintain the Kubernetes package and module"; + shortName = "Kubernetes"; }; kodi = { @@ -196,6 +338,7 @@ with lib.maintainers; { sephalon ]; scope = "Maintain Kodi and related packages."; + shortName = "Kodi"; }; linux-kernel = { @@ -206,6 +349,17 @@ with lib.maintainers; { qyliss ]; scope = "Maintain the Linux kernel."; + shortName = "Linux Kernel"; + }; + + marketing = { + members = [ + garbas + tomberek + ]; + scope = "Marketing of Nix/NixOS/nixpkgs."; + shortName = "Marketing"; + enableFeatureFreezePing = true; }; mate = { @@ -214,6 +368,7 @@ with lib.maintainers; { romildo ]; scope = "Maintain Mate desktop environment and related packages."; + shortName = "MATE"; }; matrix = { @@ -227,6 +382,40 @@ with lib.maintainers; { sumnerevans ]; scope = "Maintain the ecosystem around Matrix, a decentralized messenger."; + shortName = "Matrix"; + }; + + mobile = { + members = [ + samueldr + ]; + scope = "Maintain Mobile NixOS."; + shortName = "Mobile"; + enableFeatureFreezePing = true; + }; + + nix = { + members = [ + Profpatsch + eelco + grahamc + pierron + ]; + scope = "Maintain the Nix package manager."; + shortName = "Nix/nix-cli ecosystem"; + enableFeatureFreezePing = true; + }; + + nixos-modules = { + members = [ + ericson2314 + infinisil + qyliss + roberth + ]; + scope = "Maintain nixpkgs module system internals."; + shortName = "NixOS Modules / internals"; + enableFeatureFreezePing = true; }; openstack = { @@ -235,6 +424,7 @@ with lib.maintainers; { SuperSandro2000 ]; scope = "Maintain the ecosystem around OpenStack"; + shortName = "OpenStack"; }; pantheon = { @@ -242,7 +432,21 @@ with lib.maintainers; { davidak bobby285271 ]; + githubTeams = [ + "pantheon" + ]; scope = "Maintain Pantheon desktop environment and platform."; + shortName = "Pantheon"; + enableFeatureFreezePing = true; + }; + + perl = { + members = [ + sgo + ]; + scope = "Maintain the Perl interpreter and Perl packages."; + shortName = "Perl"; + enableFeatureFreezePing = true; }; php = { @@ -254,7 +458,12 @@ with lib.maintainers; { ma27 talyz ]; + githubTeams = [ + "php" + ]; scope = "Maintain PHP related packages and extensions."; + shortName = "PHP"; + enableFeatureFreezePing = true; }; podman = { @@ -264,7 +473,54 @@ with lib.maintainers; { vdemeester zowoq ]; + githubTeams = [ + "podman" + ]; scope = "Maintain Podman and CRI-O related packages and modules."; + shortName = "Podman"; + enableFeatureFreezePing = true; + }; + + postgres = { + members = [ + thoughtpolice + ]; + scope = "Maintain the PostgreSQL package and plugins along with the NixOS module."; + shortName = "PostgreSQL"; + enableFeatureFreezePing = true; + }; + + python = { + members = [ + fridh + hexa + jonringer + ]; + scope = "Maintain the Python interpreter and related packages."; + shortName = "Python"; + enableFeatureFreezePing = true; + }; + + qt-kde = { + members = [ + ttuegel + ]; + githubTeams = [ + "qt-kde" + ]; + scope = "Maintain the KDE desktop environment and Qt."; + shortName = "Qt / KDE"; + enableFeatureFreezePing = true; + }; + + r = { + members = [ + bcdarwin + jbedo + ]; + scope = "Maintain the R programming language and related packages."; + shortName = "R"; + enableFeatureFreezePing = true; }; redcodelabs = { @@ -274,6 +530,38 @@ with lib.maintainers; { wintrmvte ]; scope = "Maintain Red Code Labs related packages and modules."; + shortName = "Red Code Labs"; + }; + + release = { + members = [ ]; + githubTeams = [ + "nixos-release-managers" + ]; + scope = "Manage the current nixpkgs/NixOS release."; + shortName = "Release"; + enableFeatureFreezePing = true; + }; + + ruby = { + members = [ + marsam + ]; + scope = "Maintain the Ruby interpreter and related packages."; + shortName = "Ruby"; + enableFeatureFreezePing = true; + }; + + rust = { + members = [ + andir + lnl7 + mic92 + zowoq + ]; + scope = "Maintain the Rust compiler toolchain and nixpkgs integration."; + shortName = "Rust"; + enableFeatureFreezePing = true; }; sage = { @@ -284,6 +572,7 @@ with lib.maintainers; { collares ]; scope = "Maintain SageMath and the dependencies that are likely to break it."; + shortName = "SageMath"; }; sphinx = { @@ -291,6 +580,7 @@ with lib.maintainers; { SuperSandro2000 ]; scope = "Maintain Sphinx related packages."; + shortName = "Sphinx"; }; serokell = { @@ -300,6 +590,26 @@ with lib.maintainers; { mkaito ]; scope = "Group registration for Serokell employees who collectively maintain packages."; + shortName = "Serokell employees"; + }; + + systemd = { + members = [ ]; + githubTeams = [ + "systemd" + ]; + scope = "Maintain systemd for NixOS."; + shortName = "systemd"; + enableFeatureFreezePing = true; + }; + + tests = { + members = [ + tfc + ]; + scope = "Maintain the NixOS VM test runner."; + shortName = "NixOS tests"; + enableFeatureFreezePing = true; }; tts = { @@ -308,6 +618,18 @@ with lib.maintainers; { mic92 ]; scope = "coqui-ai TTS (formerly Mozilla TTS) and leaf packages"; + shortName = "coqui-ai TTS"; + }; + + vim = { + members = [ + jonringer + softinio + teto + ]; + scope = "Maintain the vim and neovim text editors and related packages."; + shortName = "Vim/Neovim"; + enableFeatureFreezePing = true; }; xfce = { @@ -315,5 +637,6 @@ with lib.maintainers; { romildo ]; scope = "Maintain Xfce desktop environment and related packages."; + shortName = "Xfce"; }; } diff --git a/nixos/modules/services/monitoring/prometheus/exporters/bird.nix b/nixos/modules/services/monitoring/prometheus/exporters/bird.nix index 1ef264fc86e5..5fda4c980ebb 100644 --- a/nixos/modules/services/monitoring/prometheus/exporters/bird.nix +++ b/nixos/modules/services/monitoring/prometheus/exporters/bird.nix @@ -17,7 +17,7 @@ in }; birdSocket = mkOption { type = types.path; - default = "/var/run/bird.ctl"; + default = "/run/bird/bird.ctl"; description = '' Path to BIRD2 (or BIRD1 v4) socket. ''; diff --git a/pkgs/applications/misc/taskwarrior-tui/default.nix b/pkgs/applications/misc/taskwarrior-tui/default.nix index 7d730421398c..1346cba9acd5 100644 --- a/pkgs/applications/misc/taskwarrior-tui/default.nix +++ b/pkgs/applications/misc/taskwarrior-tui/default.nix @@ -5,19 +5,19 @@ rustPlatform.buildRustPackage rec { pname = "taskwarrior-tui"; - version = "0.21.1"; + version = "0.22.0"; src = fetchFromGitHub { owner = "kdheepak"; repo = "taskwarrior-tui"; rev = "v${version}"; - sha256 = "sha256-fgoK7Y+3h2VFfP8yiR8JM8Xf7UJbkX9PO1RoJRoYLW4="; + sha256 = "sha256-121TfmaWrWppsOiuF+8gxy+3J5YzbliYj88nw4aLt9w="; }; # Because there's a test that requires terminal access doCheck = false; - cargoSha256 = "sha256-3rDvla1mCcQclALbomUTvE3aLzsMeIjcIbEv4KfCKZE="; + cargoSha256 = "sha256-oTb1pSA9g9cExCXKaQjNm+h5WB4bWuqODkU7MvvspGQ="; meta = with lib; { description = "A terminal user interface for taskwarrior "; diff --git a/pkgs/applications/networking/cluster/driftctl/default.nix b/pkgs/applications/networking/cluster/driftctl/default.nix index 28dd421c72c5..fc8d8da18af8 100644 --- a/pkgs/applications/networking/cluster/driftctl/default.nix +++ b/pkgs/applications/networking/cluster/driftctl/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "driftctl"; - version = "0.25.0"; + version = "0.26.0"; src = fetchFromGitHub { owner = "snyk"; repo = "driftctl"; rev = "v${version}"; - sha256 = "sha256-opR1NkMGptZilSPVZ7yNjYBBjnOXxrqAFCYzQ1tNS78="; + sha256 = "sha256-cwI27hAfnSKT7P2rfM86tRtSKRR9bruRV9w440uGLIU="; }; vendorSha256 = "sha256-I0OCRhUvuaF4k5qqPaV6R24mrd9AG5GgQCCF6yodK0E="; diff --git a/pkgs/applications/networking/instant-messengers/chatty/default.nix b/pkgs/applications/networking/instant-messengers/chatty/default.nix index 97282c76d04c..34b525a98a61 100644 --- a/pkgs/applications/networking/instant-messengers/chatty/default.nix +++ b/pkgs/applications/networking/instant-messengers/chatty/default.nix @@ -3,6 +3,7 @@ , fetchFromGitLab , appstream-glib , desktop-file-utils +, itstool , meson , ninja , pkg-config @@ -46,6 +47,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ appstream-glib desktop-file-utils + itstool meson ninja pkg-config diff --git a/pkgs/applications/terminal-emulators/kitty/default.nix b/pkgs/applications/terminal-emulators/kitty/default.nix index d06c6d937c11..52e691f98504 100644 --- a/pkgs/applications/terminal-emulators/kitty/default.nix +++ b/pkgs/applications/terminal-emulators/kitty/default.nix @@ -90,6 +90,11 @@ buildPythonApplication rec { url = "https://github.com/kovidgoyal/kitty/commit/d8ed42ae8e014d9abf9550a65ae203468f8bfa43.patch"; sha256 = "sha256-Azgzqf5atW999FVn9rSGKMyZLsI692dYXhJPx07GBO0="; }) + (fetchpatch { + name = "fix-build-with-non-framework-python-on-darwin.patch"; + url = "https://github.com/kovidgoyal/kitty/commit/57cffc71b78244e6a9d49f4c9af24d1a88dbf537.patch"; + sha256 = "sha256-1IGONSVCVo5SmLKw90eqxaI5Mwc764O1ur+aMsc7h94="; + }) ]; # Causes build failure due to warning diff --git a/pkgs/applications/version-management/verco/default.nix b/pkgs/applications/version-management/verco/default.nix index 715ae0978cc1..407608cc22d5 100644 --- a/pkgs/applications/version-management/verco/default.nix +++ b/pkgs/applications/version-management/verco/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "verco"; - version = "6.7.0"; + version = "6.8.0"; src = fetchFromGitHub { owner = "vamolessa"; repo = pname; rev = "v${version}"; - sha256 = "sha256-H8rDaRVU3G3iuBv0Tz/YOuYbL2k8wEoEIIEG7hjU6eM="; + sha256 = "sha256-E1kqJLnTLPu38zvDGaPHiKSW/yKormbx5N1CBSzQxgc="; }; - cargoSha256 = "sha256-4Ou/stedL3WCY4Awsl++lc5fZ9gxd4uorf4G2/0DiPc="; + cargoSha256 = "sha256-9342LAChCv61kxTJoeOy7EdafMfR10s8dtkc2pTgXT0="; meta = with lib; { description = "A simple Git/Mercurial/PlasticSCM tui client based on keyboard shortcuts"; diff --git a/pkgs/applications/video/davinci-resolve/default.nix b/pkgs/applications/video/davinci-resolve/default.nix new file mode 100644 index 000000000000..289fcdad5227 --- /dev/null +++ b/pkgs/applications/video/davinci-resolve/default.nix @@ -0,0 +1,178 @@ +{ stdenv +, lib +, cacert +, curl +, runCommandLocal +, targetPlatform +, unzip +, appimage-run +, addOpenGLRunpath +, libGLU +, xorg +, buildFHSUserEnv +, bash +, writeText +, ocl-icd +, xkeyboard_config +, glib +, libarchive +}: + +let + davinci = ( + stdenv.mkDerivation rec { + pname = "davinci-resolve"; + version = "17.4.3"; + + nativeBuildInputs = [ unzip appimage-run addOpenGLRunpath ]; + + # Pretty sure, there are missing dependencies ... + buildInputs = [ libGLU xorg.libXxf86vm ]; + + src = runCommandLocal "${pname}-src.zip" + rec { + outputHashMode = "recursive"; + outputHashAlgo = "sha256"; + outputHash = "0hq374n26mbcds8f1z644cvnh4h2rjdrbxxxbj4p34mx9b04ab28"; + + impureEnvVars = lib.fetchers.proxyImpureEnvVars; + + nativeBuildInputs = [ curl ]; + + # ENV VARS + SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt"; + + DOWNLOADID = "5efad1a052e8471989f662338d5247f1"; + REFERID = "263d62f31cbb49e0868005059abcb0c9"; + SITEURL = "https://www.blackmagicdesign.com/api/register/us/download/${DOWNLOADID}"; + + USERAGENT = builtins.concatStringsSep " " [ + "User-Agent: Mozilla/5.0 (X11; Linux ${targetPlatform.linuxArch})" + "AppleWebKit/537.36 (KHTML, like Gecko)" + "Chrome/77.0.3865.75" + "Safari/537.36" + ]; + + REQJSON = builtins.toJSON { + "firstname" = "NixOS"; + "lastname" = "Linux"; + "email" = "someone@nixos.org"; + "phone" = "+31 71 452 5670"; + "country" = "nl"; + "state" = "Province of Utrecht"; + "city" = "Utrecht"; + "product" = "DaVinci Resolve"; + }; + + } '' + RESOLVEURL=$(curl \ + -s \ + -H 'Host: www.blackmagicdesign.com' \ + -H 'Accept: application/json, text/plain, */*' \ + -H 'Origin: https://www.blackmagicdesign.com' \ + -H "$USERAGENT" \ + -H 'Content-Type: application/json;charset=UTF-8' \ + -H "Referer: https://www.blackmagicdesign.com/support/download/$REFERID/Linux" \ + -H 'Accept-Encoding: gzip, deflate, br' \ + -H 'Accept-Language: en-US,en;q=0.9' \ + -H 'Authority: www.blackmagicdesign.com' \ + -H 'Cookie: _ga=GA1.2.1849503966.1518103294; _gid=GA1.2.953840595.1518103294' \ + --data-ascii "$REQJSON" \ + --compressed \ + "$SITEURL") + + curl \ + --retry 3 --retry-delay 3 \ + -H "Host: sw.blackmagicdesign.com" \ + -H "Upgrade-Insecure-Requests: 1" \ + -H "$USERAGENT" \ + -H "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8" \ + -H "Accept-Language: en-US,en;q=0.9" \ + --compressed \ + "$RESOLVEURL" \ + > $out + ''; + + # The unpack phase won't generate a directory + setSourceRoot = '' + sourceRoot=$PWD + ''; + + installPhase = '' + runHook preInstall + + export HOME=$PWD/home + mkdir -p $HOME + + mkdir -p $out + appimage-run ./DaVinci_Resolve_${version}_Linux.run -i -y -n -C $out + + mkdir -p $out/{configs,DolbyVision,easyDCP,Fairlight,GPUCache,logs,Media,"Resolve Disk Database",.crashreport,.license,.LUT} + runHook postInstall + ''; + + dontStrip = true; + + postFixup = '' + for program in $out/bin/*; do + isELF "$program" || continue + addOpenGLRunpath "$program" + done + + for program in $out/libs/*; do + isELF "$program" || continue + if [[ "$program" != *"libcudnn_cnn_infer"* ]];then + echo $program + addOpenGLRunpath "$program" + fi + done + ''; + } + ); +in +buildFHSUserEnv { + name = "davinci-resolve"; + targetPkgs = pkgs: with pkgs; [ + librsvg + libGLU + libGL + xorg.libICE + xorg.libSM + xorg.libXxf86vm + xorg.libxcb + udev + opencl-headers + alsa-lib + xorg.libX11 + xorg.libXext + expat + zlib + libuuid + bzip2 + libtool + ocl-icd + glib + libarchive + xdg-utils # xdg-open needed to open URLs + python + # currently they want python 3.6 which is EOL + #python3 + ]; + + runScript = "${bash}/bin/bash ${ + writeText "davinci-wrapper" + '' + export QT_XKB_CONFIG_ROOT="${xkeyboard_config}/share/X11/xkb" + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${davinci}/libs + ${davinci}/bin/resolve + '' + }"; + + meta = with lib; { + description = "Professional Video Editing, Color, Effects and Audio Post"; + homepage = "https://www.blackmagicdesign.com/products/davinciresolve/"; + license = licenses.unfree; + maintainers = with maintainers; [ jshcmpbll ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/data/fonts/noto-fonts/default.nix b/pkgs/data/fonts/noto-fonts/default.nix index 248d076b997a..4d91bf8905d5 100644 --- a/pkgs/data/fonts/noto-fonts/default.nix +++ b/pkgs/data/fonts/noto-fonts/default.nix @@ -71,11 +71,11 @@ let owner = "googlefonts"; repo = "noto-cjk"; inherit rev sha256; - sparseCheckout = "${typeface}/OTC"; + sparseCheckout = "${typeface}/Variable/OTC"; }; installPhase = '' - install -m444 -Dt $out/share/fonts/opentype/noto-cjk ${typeface}/OTC/*.ttc + install -m444 -Dt $out/share/fonts/opentype/noto-cjk ${typeface}/Variable/OTC/*.otf.ttc ''; passthru.tests.noto-fonts = nixosTests.noto-fonts; @@ -117,14 +117,14 @@ in typeface = "Sans"; version = "2.004"; rev = "9f7f3c38eab63e1d1fddd8d50937fe4f1eacdb1d"; - sha256 = "sha256-pNC/WJCYHSlU28E/CSFsrEMbyCe/6tjevDlOvDK9RwU="; + sha256 = "sha256-11d/78i21yuzxrfB5t2VQN9OBz/qZKeozuS6BrLFjzw="; }; noto-fonts-cjk-serif = mkNotoCJK { typeface = "Serif"; version = "2.000"; rev = "9f7f3c38eab63e1d1fddd8d50937fe4f1eacdb1d"; - sha256 = "sha256-Iy4lmWj5l+/Us/dJJ/Jl4MEojE9mrFnhNQxX2zhVngY="; + sha256 = "sha256-G+yl3LZvSFpbEUuuvattPDctKTzBCshOi970DcbPliE="; }; noto-fonts-emoji = let diff --git a/pkgs/desktops/gnome/core/gucharmap/default.nix b/pkgs/desktops/gnome/core/gucharmap/default.nix index 3dc08e66357a..dbea63db4a35 100644 --- a/pkgs/desktops/gnome/core/gucharmap/default.nix +++ b/pkgs/desktops/gnome/core/gucharmap/default.nix @@ -45,7 +45,7 @@ let }; in stdenv.mkDerivation rec { pname = "gucharmap"; - version = "14.0.2"; + version = "14.0.3"; outputs = [ "out" "lib" "dev" "devdoc" ]; @@ -54,7 +54,7 @@ in stdenv.mkDerivation rec { owner = "GNOME"; repo = pname; rev = version; - sha256 = "sha256-gyOm/S0ae0kX4AFUiglqyGRGB8C/KUuaG/dr/Wf1ug0="; + sha256 = "sha256-xO34CR+SWxtHuP6G8m0jla0rivVp3ddrsODNo50MhHw="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/core/sushi/default.nix b/pkgs/desktops/gnome/core/sushi/default.nix index 00ac8e40aad0..4c6f960d8c84 100644 --- a/pkgs/desktops/gnome/core/sushi/default.nix +++ b/pkgs/desktops/gnome/core/sushi/default.nix @@ -23,11 +23,11 @@ stdenv.mkDerivation rec { pname = "sushi"; - version = "41.0"; + version = "41.1"; src = fetchurl { url = "mirror://gnome/sources/sushi/${lib.versions.major version}/${pname}-${version}.tar.xz"; - sha256 = "m3UlaQzkNmJO+gpgV3NJNDLNDva49GSYLouETtqYmO4="; + sha256 = "JifbYWLnV3hZDAfhZbLzbqJNEjGlE7FkAj/G3fx1xKM="; }; nativeBuildInputs = [ diff --git a/pkgs/desktops/gnome/games/aisleriot/default.nix b/pkgs/desktops/gnome/games/aisleriot/default.nix index 5a7446862bdc..953a40623c0d 100644 --- a/pkgs/desktops/gnome/games/aisleriot/default.nix +++ b/pkgs/desktops/gnome/games/aisleriot/default.nix @@ -10,7 +10,7 @@ , librsvg , libxml2 , desktop-file-utils -, guile_3_0 +, guile , libcanberra-gtk3 , ninja , appstream-glib @@ -19,14 +19,14 @@ stdenv.mkDerivation rec { pname = "aisleriot"; - version = "3.22.21"; + version = "3.22.22"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "GNOME"; repo = pname; rev = version; - sha256 = "sha256-dpzuePxSoJcwUlj314r5G9A8aF1Yz49r+DxNTfA8/Ks="; + sha256 = "sha256-Jr4XEj6h+gI1gNqoJ/cJ3cDBB4mSbpzvOUQkwGxkLPs="; }; nativeBuildInputs = [ @@ -44,7 +44,7 @@ stdenv.mkDerivation rec { buildInputs = [ gtk3 librsvg - guile_3_0 + guile libcanberra-gtk3 ]; diff --git a/pkgs/desktops/gnome/games/five-or-more/default.nix b/pkgs/desktops/gnome/games/five-or-more/default.nix index f01d137979ec..ce532d1d5cd4 100644 --- a/pkgs/desktops/gnome/games/five-or-more/default.nix +++ b/pkgs/desktops/gnome/games/five-or-more/default.nix @@ -1,21 +1,46 @@ -{ lib, stdenv, fetchurl, meson, ninja, pkg-config, gnome, gtk3, wrapGAppsHook -, librsvg, libgnome-games-support, gettext, itstool, libxml2, python3, vala }: +{ stdenv +, lib +, fetchurl +, meson +, ninja +, pkg-config +, gnome +, gtk3 +, wrapGAppsHook +, librsvg +, libgnome-games-support +, gettext +, itstool +, libxml2 +, python3 +, vala +}: stdenv.mkDerivation rec { pname = "five-or-more"; - version = "3.32.2"; + version = "3.32.3"; src = fetchurl { url = "mirror://gnome/sources/five-or-more/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "19pf8wzbf3ciqf2k4bj9sddvyhckfd62x86pnqr6s8h4vn9jc6ii"; + sha256 = "LRDXLu/esyS0R9YyrwwySW4l/BWjwB230vAMm1HQnvQ="; }; nativeBuildInputs = [ - meson ninja pkg-config gettext itstool libxml2 python3 wrapGAppsHook + meson + ninja + pkg-config + gettext + itstool + libxml2 + python3 + wrapGAppsHook vala ]; + buildInputs = [ - gtk3 librsvg libgnome-games-support gnome.adwaita-icon-theme + gtk3 + librsvg + libgnome-games-support ]; postPatch = '' diff --git a/pkgs/development/python-modules/wled/default.nix b/pkgs/development/python-modules/wled/default.nix index 3bd0d5b55b90..362d4e4d2b29 100644 --- a/pkgs/development/python-modules/wled/default.nix +++ b/pkgs/development/python-modules/wled/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "wled"; - version = "0.13.1"; + version = "0.13.2"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "frenck"; repo = "python-wled"; rev = "v${version}"; - sha256 = "sha256-QQPrAfk+BX8mjqn9ISim9hLEZR2nbgxbkwCv+91yeRY="; + sha256 = "sha256-Rv0jaKkN6jQ7oiv1cBYx4HAr7IqPm57jZFykXayp0T0="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/continuous-integration/github-runner/default.nix b/pkgs/development/tools/continuous-integration/github-runner/default.nix index c8513d004af5..f53ebd645d05 100644 --- a/pkgs/development/tools/continuous-integration/github-runner/default.nix +++ b/pkgs/development/tools/continuous-integration/github-runner/default.nix @@ -43,13 +43,13 @@ let in stdenv.mkDerivation rec { pname = "github-runner"; - version = "2.289.1"; + version = "2.289.2"; src = fetchFromGitHub { owner = "actions"; repo = "runner"; rev = "v${version}"; - hash = "sha256-5TS/tW1hnDvPZQdR659rw+spLq98niyUms3BrixaKRE="; + hash = "sha256-yISJ/qGJ+tGnJOqpTUe+rkG4UGzTZ5tIXix6wuDKXO0="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/earthly/default.nix b/pkgs/development/tools/earthly/default.nix index 377d287e531e..86805daf1c73 100644 --- a/pkgs/development/tools/earthly/default.nix +++ b/pkgs/development/tools/earthly/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "earthly"; - version = "0.6.12"; + version = "0.6.13"; src = fetchFromGitHub { owner = "earthly"; repo = "earthly"; rev = "v${version}"; - sha256 = "sha256-M8DnSpQhW4i83cu9wp0ZKyP7137IQVjyBl0cgVvQmPI="; + sha256 = "sha256-xOsLFFa6OsfdXOjYZBV71gafaAAX9PfMokppMKJzlZg="; }; - vendorSha256 = "sha256-GvTWj0uEsCyC4/RL6woym8UwA3OCFx8NWkNQApnVMM8="; + vendorSha256 = "sha256-2bOaJdK12qGjjVtoBp3LeSyIiFwm4ZvxNI5yR0HriXI="; ldflags = [ "-s" "-w" diff --git a/pkgs/development/tools/esbuild/default.nix b/pkgs/development/tools/esbuild/default.nix index 33f3bfc19c12..8844af40f4d1 100644 --- a/pkgs/development/tools/esbuild/default.nix +++ b/pkgs/development/tools/esbuild/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "esbuild"; - version = "0.14.28"; + version = "0.14.29"; src = fetchFromGitHub { owner = "evanw"; repo = "esbuild"; rev = "v${version}"; - sha256 = "sha256-Z4Na4Tp5zNbzrOH14t+3rUTL8Q9OfyE6mUAdnETzFrs="; + sha256 = "sha256-v16wKi+CphROS9s3PdzzuRoh3gLfSUgincyTp38WKxQ="; }; vendorSha256 = "sha256-QPkBR+FscUc3jOvH7olcGUhM6OW4vxawmNJuRQxPuGs="; diff --git a/pkgs/development/tools/jql/default.nix b/pkgs/development/tools/jql/default.nix index d7f557edfb01..0154df2c7fc0 100644 --- a/pkgs/development/tools/jql/default.nix +++ b/pkgs/development/tools/jql/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "jql"; - version = "3.1.3"; + version = "3.2.0"; src = fetchFromGitHub { owner = "yamafaktory"; repo = pname; rev = "v${version}"; - sha256 = "sha256-kYAVgQa5NAfZ7EVzO/3fW3A5Zl8uaFXguvxBco8DfRY="; + sha256 = "sha256-U++yypq9M1C6Sh9rv3rmn/qwTXWdPFDBpjFS6eoS2L4="; }; - cargoSha256 = "sha256-Mz+1A7Wg7sh0pxg7umRym3UkXsMkRE0AQDTkt+e7l+s="; + cargoSha256 = "sha256-uyD+QBDfnZa3nfZcUAqruYqJ9nVAa5+XOPONds0ysXU="; meta = with lib; { description = "A JSON Query Language CLI tool built with Rust"; diff --git a/pkgs/development/tools/wrangler/default.nix b/pkgs/development/tools/wrangler/default.nix index dca054db3fea..c34c3b0a0376 100644 --- a/pkgs/development/tools/wrangler/default.nix +++ b/pkgs/development/tools/wrangler/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "wrangler"; - version = "1.19.10"; + version = "1.19.11"; src = fetchFromGitHub { owner = "cloudflare"; repo = pname; rev = "v${version}"; - sha256 = "sha256-RKOAs7MRHcGx6BNBml7WQ81bNvdB9ipd0R1ErLTwjTQ="; + sha256 = "sha256-8Vka8HTU0YkTS1DeQuqVLsnRGnig7Aiql5e/6NBk7qs="; }; - cargoSha256 = "sha256-9GvKDLuDIW5q1R5g20rtSScv2c0sLSo+hI9LSA4W3M8="; + cargoSha256 = "sha256-bw6Z4SW+NOFFpUJ5xGwdccv8KQnSri/TFxAJp+9fsWk="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix index 9fe93bac4420..f70faf37fac9 100644 --- a/pkgs/development/web/flyctl/default.nix +++ b/pkgs/development/web/flyctl/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "flyctl"; - version = "0.0.308"; + version = "0.0.310"; src = fetchFromGitHub { owner = "superfly"; repo = "flyctl"; rev = "v${version}"; - sha256 = "sha256-Di0egdreY3c6kulcvAl4dFfYpIuMocQzHiFW48kJ6u4="; + sha256 = "sha256-69yyH4og7FGS3+M72YhlrwjatucfGliHYcMpPi1ddjA="; }; preBuild = '' diff --git a/pkgs/os-specific/linux/intel-ocl/default.nix b/pkgs/os-specific/linux/intel-ocl/default.nix index 06cb18b23774..026ce80c645a 100644 --- a/pkgs/os-specific/linux/intel-ocl/default.nix +++ b/pkgs/os-specific/linux/intel-ocl/default.nix @@ -5,7 +5,11 @@ stdenv.mkDerivation rec { version = "5.0-63503"; src = fetchzip { - url = "https://registrationcenter-download.intel.com/akdlm/irc_nas/11396/SRB5.0_linux64.zip"; + # https://github.com/NixOS/nixpkgs/issues/166886 + urls = [ + "https://registrationcenter-download.intel.com/akdlm/irc_nas/11396/SRB5.0_linux64.zip" + "http://registrationcenter-download.intel.com/akdlm/irc_nas/11396/SRB5.0_linux64.zip" + ]; sha256 = "0qbp63l74s0i80ysh9ya8x7r79xkddbbz4378nms9i7a0kprg9p2"; stripRoot = false; }; diff --git a/pkgs/tools/misc/kak-lsp/default.nix b/pkgs/tools/misc/kak-lsp/default.nix index 772eb520869b..d2b79c4d011c 100644 --- a/pkgs/tools/misc/kak-lsp/default.nix +++ b/pkgs/tools/misc/kak-lsp/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "kak-lsp"; - version = "12.0.1"; + version = "12.1.0"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "sha256-K2GMoLaH7D6UtPuL+GJMqsPFwriyyi7WMdfzBmOceSA="; + sha256 = "sha256-5sPw95lSbswIUbNIZ4mpA3WeZt7u+a5s4KxkTnN14Sw="; }; - cargoSha256 = "sha256-suBBEHGHUlZyxKy5hwhc2K/qTNis75GY33+7QhpmGos="; + cargoSha256 = "sha256-rPsiMeoc8cWUgmqAxdDGrAQdurIH3bzNq5tpocnnegA="; buildInputs = lib.optionals stdenv.isDarwin [ Security SystemConfiguration ]; diff --git a/pkgs/tools/security/gnupg/1.nix b/pkgs/tools/security/gnupg/1.nix index 8fc5dce7ba04..b7bc395cc0a7 100644 --- a/pkgs/tools/security/gnupg/1.nix +++ b/pkgs/tools/security/gnupg/1.nix @@ -29,5 +29,6 @@ stdenv.mkDerivation rec { available. ''; platforms = platforms.all; + mainProgram = "gpg"; }; } diff --git a/pkgs/tools/security/gnupg/23.nix b/pkgs/tools/security/gnupg/23.nix index e80804cd002f..d9ad2d0a276f 100644 --- a/pkgs/tools/security/gnupg/23.nix +++ b/pkgs/tools/security/gnupg/23.nix @@ -93,5 +93,6 @@ stdenv.mkDerivation rec { ''; maintainers = with maintainers; [ fpletz vrthra ]; platforms = platforms.all; + mainProgram = "gpg"; }; } diff --git a/pkgs/tools/text/mdbook/default.nix b/pkgs/tools/text/mdbook/default.nix index d3a136d6bf75..3ca4d0d8a559 100644 --- a/pkgs/tools/text/mdbook/default.nix +++ b/pkgs/tools/text/mdbook/default.nix @@ -2,19 +2,25 @@ rustPlatform.buildRustPackage rec { pname = "mdbook"; - version = "0.4.12"; + version = "0.4.15"; src = fetchFromGitHub { owner = "rust-lang"; repo = "mdBook"; rev = "v${version}"; - sha256 = "sha256-2lxotwL3Dc9jRA12iKO5zotO80pa+RfUZucyDRgFOsI="; + sha256 = "sha256-FYuai7YeqrnL5XgOV/EvxIRAu3TkeKJvKiDxnx94PJ8="; }; - cargoSha256 = "sha256-TNd4pj4qSKgmmVtSCSKFCxNtv96xD7+24BPsLXPgiEI="; + cargoSha256 = "sha256-YWifpXrk+T8C3fGlURDKYWw7mD1TUjJbFHTlK84Tgpc="; buildInputs = lib.optionals stdenv.isDarwin [ CoreServices ]; + # Tests rely on unset 'RUST_LOG' value to emit INFO messages. + # 'RUST_LOG=' nixpkgs default enables warnings only and breaks tests. + # Can be removed when https://github.com/rust-lang/mdBook/pull/1777 + # is released. + logLevel = "info"; + meta = with lib; { description = "Create books from MarkDown"; homepage = "https://github.com/rust-lang/mdBook"; diff --git a/pkgs/tools/wayland/swayr/default.nix b/pkgs/tools/wayland/swayr/default.nix index 6237d1a88eeb..b35911832150 100644 --- a/pkgs/tools/wayland/swayr/default.nix +++ b/pkgs/tools/wayland/swayr/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "swayr"; - version = "0.15.0"; + version = "0.16.0"; src = fetchFromSourcehut { owner = "~tsdh"; repo = "swayr"; rev = "v${version}"; - sha256 = "sha256-GLOJjGr29v4oVNCWgjPWluIiSeLoIYeOw2HwmSfxA8Y="; + sha256 = "sha256-b35jGbAEQ3w46Oea21xiUODRDD7cixiMuPlc40YxelE="; }; - cargoSha256 = "sha256-gg/IHrgfDZT+3FNM/se5X1YMcHX127jMNI/WDEpMzy4="; + cargoSha256 = "sha256-EwK4F+XQWYhZqE4NMrghmVfWJ0znPJdGZLNUq6weoqQ="; patches = [ ./icon-paths.patch diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ff750e5200fe..6de516ef2e1a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1067,6 +1067,8 @@ with pkgs; ejson2env = callPackage ../tools/admin/ejson2env { }; + davinci-resolve = callPackage ../applications/video/davinci-resolve { }; + gamemode = callPackage ../tools/games/gamemode { libgamemode32 = pkgsi686Linux.gamemode.lib; };