diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index c94182b83e15..32517fb31054 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -13446,6 +13446,12 @@ github = "Mephistophiles"; githubId = 4850908; }; + merrkry = { + email = "merrkry@tsubasa.moe"; + name = "merrkry"; + github = "merrkry"; + githubId = 124278440; + }; mevatron = { email = "mevatron@gmail.com"; name = "mevatron"; diff --git a/nixos/doc/manual/installation/installing.chapter.md b/nixos/doc/manual/installation/installing.chapter.md index 8f37eb353937..b927c7c0e877 100644 --- a/nixos/doc/manual/installation/installing.chapter.md +++ b/nixos/doc/manual/installation/installing.chapter.md @@ -220,6 +220,8 @@ The NixOS installer ships with multiple partitioning tools. The examples below use `parted`, but also provides `fdisk`, `gdisk`, `cfdisk`, and `cgdisk`. +Use the command 'lsblk' to find the name of your 'disk' device. + The recommended partition scheme differs depending if the computer uses *Legacy Boot* or *UEFI*. diff --git a/pkgs/by-name/by/byedpi/package.nix b/pkgs/by-name/by/byedpi/package.nix index d081c059dcc7..bf8a27e8e2d3 100644 --- a/pkgs/by-name/by/byedpi/package.nix +++ b/pkgs/by-name/by/byedpi/package.nix @@ -6,13 +6,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "byedpi"; - version = "0.13.1"; + version = "0.14.1"; src = fetchFromGitHub { owner = "hufrea"; repo = "byedpi"; rev = "refs/tags/v${finalAttrs.version}"; - hash = "sha256-Sf5Ik8+9nKhum4/faGf44Y/gQggldyRsFUVmd9XPKOA="; + hash = "sha256-JdL+3ETNxaEtOLUhgLSABL9C8w/EM4Ay37OXU5jLCFA="; }; installPhase = '' diff --git a/pkgs/by-name/cd/cdecl/package.nix b/pkgs/by-name/cd/cdecl/package.nix index c500e095d1f2..07a265629942 100644 --- a/pkgs/by-name/cd/cdecl/package.nix +++ b/pkgs/by-name/cd/cdecl/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "cdecl"; - version = "18.3"; + version = "18.4.1"; src = fetchFromGitHub { owner = "paul-j-lucas"; repo = "cdecl"; rev = "refs/tags/cdecl-${finalAttrs.version}"; - hash = "sha256-w6n/7oAl6D7cBG/YIauhjFjHs+ygF3ugKWv0lgY1G9Q="; + hash = "sha256-GtNB55zFIpt6yYE3olC3yQr2RLsS9AMewzJKDcb67GM="; }; strictDeps = true; diff --git a/pkgs/by-name/mo/motoc/Cargo.lock b/pkgs/by-name/mo/motoc/Cargo.lock index 7f88b562651d..e6b1027f6726 100644 --- a/pkgs/by-name/mo/motoc/Cargo.lock +++ b/pkgs/by-name/mo/motoc/Cargo.lock @@ -62,9 +62,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.86" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" +checksum = "4e1496f8fb1fbf272686b8d37f523dab3e4a7443300055e74cdaa449f3114356" [[package]] name = "approx" @@ -132,15 +132,15 @@ checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "bytemuck" -version = "1.17.1" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773d90827bc3feecfb67fab12e24de0749aad83c74b9504ecde46237b5cd24e2" +checksum = "94bbb0ad554ad961ddc5da507a12a29b14e4ae5bda06b19f575a3e6079d2e2ae" [[package]] name = "cc" -version = "1.1.16" +version = "1.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9d013ecb737093c0e86b151a7b837993cf9ec6c502946cfb44bedc392421e0b" +checksum = "b62ac837cdb5cb22e10a256099b4fc502b1dfe560cb282963a974d7abd80e476" dependencies = [ "shlex", ] @@ -511,7 +511,7 @@ dependencies = [ [[package]] name = "motoc" -version = "0.2.0" +version = "0.3.1" dependencies = [ "anyhow", "bindgen 0.70.1", @@ -738,9 +738,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustix" -version = "0.38.36" +version = "0.38.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f55e80d50763938498dd5ebb18647174e0c76dc38c5505294bb224624f30f36" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" dependencies = [ "bitflags", "errno", @@ -772,18 +772,18 @@ checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" [[package]] name = "serde" -version = "1.0.209" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.209" +version = "1.0.210" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", @@ -846,9 +846,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "unicode-ident" -version = "1.0.12" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" [[package]] name = "unicode-segmentation" diff --git a/pkgs/by-name/mo/motoc/package.nix b/pkgs/by-name/mo/motoc/package.nix index eda819a45595..23b0b6b135a4 100644 --- a/pkgs/by-name/mo/motoc/package.nix +++ b/pkgs/by-name/mo/motoc/package.nix @@ -8,13 +8,13 @@ rustPlatform.buildRustPackage rec { pname = "motoc"; - version = "0.2.0"; + version = "0.3.1"; src = fetchFromGitHub { owner = "galister"; repo = "motoc"; rev = "refs/tags/v${version}"; - hash = "sha256-7p25F2bRba3LxS8UAkHvhb+GyOsKUMj7bhiK5ZJ0Jkk="; + hash = "sha256-119RWsAM5kKjsxA6wGdjhB99G31QaYlZBRaFCg5TtmI="; }; cargoLock = { diff --git a/pkgs/by-name/ra/raffi/package.nix b/pkgs/by-name/ra/raffi/package.nix index d32478ba7069..eab58d3c5d5a 100644 --- a/pkgs/by-name/ra/raffi/package.nix +++ b/pkgs/by-name/ra/raffi/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage rec { pname = "raffi"; - version = "0.4.0"; + version = "0.5.1"; src = fetchFromGitHub { owner = "chmouel"; repo = "raffi"; rev = "v${version}"; - hash = "sha256-i4PM82vGb9Z2pwW006114/h9crokVLUpLxNjr7tgAU8="; + hash = "sha256-25dH6LprqcZq9Px5nFNrGHk/2Tn23TZMLVZVic0unU8="; }; - cargoHash = "sha256-DS56H2XjEgdXC9TKLjwyfLpFHB9dUThhr8pNFEJuAZE="; + cargoHash = "sha256-bkNjlX8WH8+q4I+VfYZeraf2vyHtDFZQCbXzsdehCZQ="; nativeBuildInputs = [ makeBinaryWrapper diff --git a/pkgs/by-name/ts/tsukimi/package.nix b/pkgs/by-name/ts/tsukimi/package.nix new file mode 100644 index 000000000000..fc984dde21a0 --- /dev/null +++ b/pkgs/by-name/ts/tsukimi/package.nix @@ -0,0 +1,96 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, + pkg-config, + mpv-unwrapped, + ffmpeg, + libadwaita, + gst_all_1, + openssl, + libepoxy, + wrapGAppsHook4, + makeDesktopItem, + copyDesktopItems, + stdenv, +}: +rustPlatform.buildRustPackage rec { + pname = "tsukimi"; + version = "0.12.2"; + + src = fetchFromGitHub { + owner = "tsukinaha"; + repo = "tsukimi"; + rev = "v${version}"; + hash = "sha256-pJ+SUNGQS/kqBdOg21GgDeZThcjnB0FhgG00qLfqxYA="; + }; + + cargoHash = "sha256-PCJiSyfEgK8inzoRmRvnAU50kLnyVhNrgLrwtBUFpIU="; + + nativeBuildInputs = [ + pkg-config + wrapGAppsHook4 + copyDesktopItems + ]; + + buildInputs = + [ + mpv-unwrapped + ffmpeg + libadwaita + openssl + libepoxy + ] + ++ (with gst_all_1; [ + gstreamer + gst-plugins-base + gst-plugins-good + gst-plugins-bad + gst-plugins-ugly + gst-libav + ]); + + doCheck = false; # tests require networking + + desktopItems = [ + (makeDesktopItem { + name = "Tsukimi"; + exec = "tsukimi"; + type = "Application"; + icon = "tsukimi"; + categories = [ "AudioVideo" ]; + startupWMClass = "moe.tsuna.tsukimi"; + desktopName = "Tsukimi"; + }) + ]; + + postPatch = '' + substituteInPlace build.rs \ + --replace-fail 'i18n/locale' "$out/share/locale" + + substituteInPlace src/main.rs \ + --replace-fail '/usr/share/locale' "$out/share/locale" + ''; + + postInstall = '' + install -Dm644 moe.tsuna.tsukimi.gschema.xml -t $out/share/glib-2.0/schemas + glib-compile-schemas $out/share/glib-2.0/schemas + + install -Dm644 resources/ui/icons/tsukimi.png -t $out/share/pixmaps + ''; + + meta = { + description = "Simple third-party Emby client, featured with GTK4-RS, MPV and GStreamer"; + homepage = "https://github.com/tsukinaha/tsukimi"; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ + merrkry + aleksana + ]; + mainProgram = "tsukimi"; + platforms = lib.platforms.linux; + # libmpv2 crate fail to compile + # expected raw pointer `*const u8` found raw pointer `*const i8` + broken = stdenv.isAarch64; + }; +} diff --git a/pkgs/by-name/ya/yabai/package.nix b/pkgs/by-name/ya/yabai/package.nix index c6554adf968e..9cc32a64fff7 100644 --- a/pkgs/by-name/ya/yabai/package.nix +++ b/pkgs/by-name/ya/yabai/package.nix @@ -27,7 +27,7 @@ let in stdenv'.mkDerivation (finalAttrs: { pname = "yabai"; - version = "7.1.2"; + version = "7.1.3"; src = finalAttrs.passthru.sources.${stdenv.hostPlatform.system} @@ -96,13 +96,13 @@ stdenv'.mkDerivation (finalAttrs: { # See the comments on https://github.com/NixOS/nixpkgs/pull/188322 for more information. "aarch64-darwin" = fetchzip { url = "https://github.com/koekeishiya/yabai/releases/download/v${finalAttrs.version}/yabai-v${finalAttrs.version}.tar.gz"; - hash = "sha256-4ZJs7Xpou0Ek0CCCjbK47Nu/XPpuTpBDU8GJz5AsaUg="; + hash = "sha256-wp5B24DYX1RYHS/3+4WRRCzVE6FyCzatJDpzJWrEIpQ="; }; "x86_64-darwin" = fetchFromGitHub { owner = "koekeishiya"; repo = "yabai"; rev = "v${finalAttrs.version}"; - hash = "sha256-H+7vH6AjP6HQ1ifXe8qlLSh0FQu8KJkwr+38C5akk/c="; + hash = "sha256-hCwI6ziUR4yuJOv4MQXh3ufbausaDrG8XfjR+jIOeC4="; }; }; diff --git a/pkgs/development/python-modules/nice-go/default.nix b/pkgs/development/python-modules/nice-go/default.nix index 9319ba10cda5..946d129e95c4 100644 --- a/pkgs/development/python-modules/nice-go/default.nix +++ b/pkgs/development/python-modules/nice-go/default.nix @@ -17,14 +17,14 @@ buildPythonPackage rec { pname = "nice-go"; - version = "0.3.8"; + version = "0.3.9"; pyproject = true; src = fetchFromGitHub { owner = "IceBotYT"; repo = "nice-go"; rev = "refs/tags/${version}"; - hash = "sha256-d035AA8N2yjkUJh2TBqkp2RLvH89cJXC4mFrny1sJ6k="; + hash = "sha256-Gb6VDHADtqmVXMPwic0NokWm5GmhTpy7g+o/rYxrBZk="; }; build-system = [ poetry-core ]; diff --git a/pkgs/development/python-modules/xsdata/default.nix b/pkgs/development/python-modules/xsdata/default.nix index 0e16d17bd348..387eefcd14bf 100644 --- a/pkgs/development/python-modules/xsdata/default.nix +++ b/pkgs/development/python-modules/xsdata/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "xsdata"; - version = "24.7"; + version = "24.9"; pyproject = true; disabled = pythonOlder "3.8"; @@ -28,7 +28,7 @@ buildPythonPackage rec { owner = "tefra"; repo = "xsdata"; rev = "refs/tags/v${version}"; - hash = "sha256-7rROd0iKs/SuIZGUwVDbusKgp7APIlvFto43Q3QCfZk="; + hash = "sha256-wQSrdAS4E6AmpP+pKviFomLrcSHLROhTWHg/hYGTaeQ="; }; patches = [ diff --git a/pkgs/development/tools/misc/cvise/default.nix b/pkgs/development/tools/misc/cvise/default.nix index 228f8ed98a67..d74dfaa7e760 100644 --- a/pkgs/development/tools/misc/cvise/default.nix +++ b/pkgs/development/tools/misc/cvise/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonApplication , fetchFromGitHub +, clang-tools , cmake , colordiff , flex @@ -34,11 +35,11 @@ buildPythonApplication rec { # Avoid blanket -Werror to evade build failures on less # tested compilers. substituteInPlace CMakeLists.txt \ - --replace " -Werror " " " + --replace-fail " -Werror " " " substituteInPlace cvise/utils/testing.py \ - --replace "'colordiff --version'" "'${colordiff}/bin/colordiff --version'" \ - --replace "'colordiff'" "'${colordiff}/bin/colordiff'" + --replace-fail "'colordiff --version'" "'${colordiff}/bin/colordiff --version'" \ + --replace-fail "'colordiff'" "'${colordiff}/bin/colordiff'" ''; nativeBuildInputs = [ @@ -65,6 +66,12 @@ buildPythonApplication rec { unifdef ]; + cmakeFlags = [ + # By default `cvise` looks it up in `llvm` bin directory. But + # `nixpkgs` moves it into a separate derivation. + "-DCLANG_FORMAT_PATH=${clang-tools}/bin/clang-format" + ]; + disabledTests = [ # Needs gcc, fails when run noninteractively (without tty). "test_simple_reduction" diff --git a/pkgs/games/steam/steam.nix b/pkgs/games/steam/steam.nix index 151a1ba5be46..bbdb946a6b06 100644 --- a/pkgs/games/steam/steam.nix +++ b/pkgs/games/steam/steam.nix @@ -1,22 +1,21 @@ { lib, stdenv, fetchurl, runtimeShell, traceDeps ? false, bash }: -let - traceLog = "/tmp/steam-trace-dependencies.log"; - version = "1.0.0.74"; - -in stdenv.mkDerivation { +stdenv.mkDerivation (finalAttrs: { pname = "steam-original"; - inherit version; + version = "1.0.0.81"; src = fetchurl { # use archive url so the tarball doesn't 404 on a new release - url = "https://repo.steampowered.com/steam/archive/stable/steam_${version}.tar.gz"; - sha256 = "sha256-sO07g3j1Qejato2LWJ2FrW3AzfMCcBz46HEw7aKxojQ="; + url = "https://repo.steampowered.com/steam/archive/stable/steam_${finalAttrs.version}.tar.gz"; + hash = "sha256-Gia5182s4J4E3Ia1EeC5kjJX9mSltsr+b+1eRtEXtPk="; }; makeFlags = [ "DESTDIR=$(out)" "PREFIX=" ]; - postInstall = '' + postInstall = + let + traceLog = "/tmp/steam-trace-dependencies.log"; + in '' rm $out/bin/steamdeps ${lib.optionalString traceDeps '' cat > $out/bin/steamdeps < $out/share/applications/steam.desktop ''; + passthru.updateScript = ./update-bootstrap.py; + meta = with lib; { description = "Digital distribution platform"; longDescription = '' @@ -51,4 +52,4 @@ in stdenv.mkDerivation { maintainers = with maintainers; [ jagajaga ]; mainProgram = "steam"; }; -} +}) diff --git a/pkgs/games/steam/update-bootstrap.py b/pkgs/games/steam/update-bootstrap.py new file mode 100755 index 000000000000..7720a08f4fce --- /dev/null +++ b/pkgs/games/steam/update-bootstrap.py @@ -0,0 +1,31 @@ +#!/usr/bin/env nix-shell +#!nix-shell --pure --keep NIX_PATH -i python3 -p git nix-update "python3.withPackages (ps: [ ps.beautifulsoup4 ps.requests ])" + +import sys +import re +import requests +import subprocess +from bs4 import BeautifulSoup + +VERSION_PATTERN = re.compile(r'^steam_(?P(\d+\.)+)tar.gz$') + +found_versions = [] +response = requests.get("https://repo.steampowered.com/steam/archive/stable/") +soup = BeautifulSoup (response.text, "html.parser") +for a in soup.find_all("a"): + href = a["href"] + if not href.endswith(".tar.gz"): + continue + + match = VERSION_PATTERN.match(href) + if match is not None: + version = match.groupdict()["ver"][0:-1] + found_versions.append(version) + +if len(found_versions) == 0: + print("Failed to find available versions!", file=sys.stderr) + sys.exit(1) + +found_versions.sort() +subprocess.run(["nix-update", "--version", found_versions[-1], "steamPackages.steam"]) +found_versions[0] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0313ae3d8c06..b7f391babcfa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15413,18 +15413,12 @@ with pkgs; libllvm = llvmPackages.libllvm; llvm-manpages = llvmPackages.llvm-manpages; + # Please remove all this logic when bumping to LLVM 19 and make this + # a simple alias. llvmPackages = let # This returns the minimum supported version for the platform. The # assumption is that or any later version is good. - choose = platform: - /**/ if platform.isDarwin then 16 - else if platform.isFreeBSD then 18 - else if platform.isOpenBSD then 18 - else if platform.isAndroid then 12 - else if platform.isLinux then 18 - else if platform.isWasm then 16 - # For unknown systems, assume the latest version is required. - else 18; + choose = platform: if platform.isDarwin then 16 else 18; # We take the "max of the mins". Why? Since those are lower bounds of the # supported version set, this is like intersecting those sets and then # taking the min bound of that.