diff options
author | Doron Behar <doron.behar@gmail.com> | 2024-06-23 00:07:37 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-23 00:07:37 +0300 |
commit | 9c7e7d8f18751c304bd984c9c1928b4d9f8ffe3d (patch) | |
tree | 1248416bdce41dbe5e853c1721abddf720eee50d | |
parent | 4d61bb6cf2d7082b395c559894444f69c9b2cbe4 (diff) | |
parent | 7645dde0593cc1fcc899d73f71b9b5290d1771d3 (diff) |
Merge pull request #258058 from doronbehar/pkg/transmission_4
transmission: sent a warning and alias it to transmission_3
-rw-r--r-- | nixos/doc/manual/release-notes/rl-2411.section.md | 4 | ||||
-rw-r--r-- | nixos/modules/services/torrent/transmission.nix | 5 | ||||
-rw-r--r-- | nixos/tests/all-tests.nix | 2 | ||||
-rw-r--r-- | pkgs/applications/networking/p2p/torrential/default.nix | 4 | ||||
-rw-r--r-- | pkgs/build-support/fetchtorrent/default.nix | 4 | ||||
-rw-r--r-- | pkgs/by-name/tr/transmission_3/package.nix (renamed from pkgs/applications/networking/p2p/transmission/default.nix) | 4 | ||||
-rw-r--r-- | pkgs/by-name/tr/transmission_3/transmission-3.00-openssl-3.patch (renamed from pkgs/applications/networking/p2p/transmission/transmission-3.00-openssl-3.patch) | 0 | ||||
-rw-r--r-- | pkgs/top-level/aliases.nix | 10 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 9 | ||||
-rw-r--r-- | pkgs/top-level/release.nix | 3 |
10 files changed, 31 insertions, 14 deletions
diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index f71fef49ba50..543e0a76f7c4 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -23,6 +23,10 @@ ## Backward Incompatibilities {#sec-release-24.11-incompatibilities} +- `transmission` package has been aliased with a `trace` warning to `transmission_3`. Since [Transmission 4 has been released last year](https://github.com/transmission/transmission/releases/tag/4.0.0), and Transmission 3 will eventually go away, it was decided perform this warning alias to make people aware of the new version. The `services.transmission.package` defaults to `transmission_3` as well because the upgrade can cause data loss in certain specific usage patterns (examples: [#5153](https://github.com/transmission/transmission/issues/5153), [#6796](https://github.com/transmission/transmission/issues/6796)). Please make sure to back up to your data directory per your usage: + - `transmission-gtk`: `~/.config/transmission` + - `transmission-daemon` using NixOS module: `${config.services.transmission.home}/.config/transmission-daemon` (defaults to `/var/lib/transmission/.config/transmission-daemon`) + - `androidenv.androidPkgs_9_0` has been removed, and replaced with `androidenv.androidPkgs` for a more complete Android SDK including support for Android 9 and later. - `wstunnel` has had a major version upgrade that entailed rewriting the program in Rust. diff --git a/nixos/modules/services/torrent/transmission.nix b/nixos/modules/services/torrent/transmission.nix index 52b472631dcf..ceef0db78b09 100644 --- a/nixos/modules/services/torrent/transmission.nix +++ b/nixos/modules/services/torrent/transmission.nix @@ -174,7 +174,10 @@ in }; }; - package = mkPackageOption pkgs "transmission" {}; + package = mkPackageOption pkgs "transmission" { + default = "transmission_3"; + example = "pkgs.transmission_4"; + }; downloadDirPermissions = mkOption { type = with types; nullOr str; diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index f2aa9c6c7314..3e53e30fd8d6 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -981,7 +981,7 @@ in { traefik = handleTestOn ["aarch64-linux" "x86_64-linux"] ./traefik.nix {}; trafficserver = handleTest ./trafficserver.nix {}; transfer-sh = handleTest ./transfer-sh.nix {}; - transmission = handleTest ./transmission.nix { transmission = pkgs.transmission; }; + transmission_3 = handleTest ./transmission.nix { transmission = pkgs.transmission_3; }; transmission_4 = handleTest ./transmission.nix { transmission = pkgs.transmission_4; }; # tracee requires bpf tracee = handleTestOn ["x86_64-linux"] ./tracee.nix {}; diff --git a/pkgs/applications/networking/p2p/torrential/default.nix b/pkgs/applications/networking/p2p/torrential/default.nix index cfc10c3f7466..2d9028bcc979 100644 --- a/pkgs/applications/networking/p2p/torrential/default.nix +++ b/pkgs/applications/networking/p2p/torrential/default.nix @@ -17,7 +17,7 @@ , libevent , libgee , libnatpmp -, libtransmission +, libtransmission_3 , libutp , miniupnpc , openssl @@ -54,7 +54,7 @@ stdenv.mkDerivation rec { libevent libgee libnatpmp - libtransmission + libtransmission_3 libutp miniupnpc openssl diff --git a/pkgs/build-support/fetchtorrent/default.nix b/pkgs/build-support/fetchtorrent/default.nix index 126748678bf2..041c1b9dcb39 100644 --- a/pkgs/build-support/fetchtorrent/default.nix +++ b/pkgs/build-support/fetchtorrent/default.nix @@ -1,4 +1,4 @@ -{ lib, runCommand, transmission_noSystemd, rqbit, writeShellScript, formats, cacert, rsync }: +{ lib, runCommand, transmission_3_noSystemd, rqbit, writeShellScript, formats, cacert, rsync }: let urlRegexp = ''.*xt=urn:bt[im]h:([^&]{64}|[^&]{40}).*''; in @@ -32,7 +32,7 @@ let in runCommand name { inherit meta; - nativeBuildInputs = [ cacert ] ++ (if (backend == "transmission" ) then [ transmission_noSystemd ] else if (backend == "rqbit") then [ rqbit ] else throw "rqbit or transmission are the only available backends for fetchtorrent"); + nativeBuildInputs = [ cacert ] ++ (if (backend == "transmission" ) then [ transmission_3_noSystemd ] else if (backend == "rqbit") then [ rqbit ] else throw "rqbit or transmission are the only available backends for fetchtorrent"); outputHashAlgo = if hash != "" then null else "sha256"; outputHash = hash; outputHashMode = if recursiveHash then "recursive" else "flat"; diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/by-name/tr/transmission_3/package.nix index 39c160c771d8..3b5c4d30d2f8 100644 --- a/pkgs/applications/networking/p2p/transmission/default.nix +++ b/pkgs/by-name/tr/transmission_3/package.nix @@ -117,12 +117,12 @@ stdenv.mkDerivation (finalAttrs: { ''; passthru.tests = { - apparmor = nixosTests.transmission; # starts the service with apparmor enabled + apparmor = nixosTests.transmission_3; # starts the service with apparmor enabled smoke-test = nixosTests.bittorrent; }; meta = { - description = "Fast, easy and free BitTorrent client"; + description = "Fast, easy and free BitTorrent client (deprecated version 3)"; mainProgram = if enableQt then "transmission-qt" else if enableGTK3 then "transmission-gtk" else "transmission-cli"; longDescription = '' Transmission is a BitTorrent client which features a simple interface diff --git a/pkgs/applications/networking/p2p/transmission/transmission-3.00-openssl-3.patch b/pkgs/by-name/tr/transmission_3/transmission-3.00-openssl-3.patch index f288298cbf3d..f288298cbf3d 100644 --- a/pkgs/applications/networking/p2p/transmission/transmission-3.00-openssl-3.patch +++ b/pkgs/by-name/tr/transmission_3/transmission-3.00-openssl-3.patch diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 09179f9fb40c..32324f66bd7e 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -34,6 +34,12 @@ let dontDistribute alias else alias; + transmission3Warning = { prefix ? "", suffix ? "" }: let + p = "${prefix}transmission${suffix}"; + p3 = "${prefix}transmission_3${suffix}"; + p4 = "${prefix}transmission_4${suffix}"; + in "${p} has been renamed to ${p3} since ${p4} is also available. Note that upgrade caused data loss for some users so backup is recommended (see NixOS 24.11 release notes for details)"; + # Make sure that we are not shadowing something from all-packages.nix. checkInPkgs = n: alias: if builtins.hasAttr n super @@ -1336,6 +1342,10 @@ mapAliases ({ tokyo-night-gtk = tokyonight-gtk-theme; # Added 2024-01-28 tootle = throw "'tootle' has been removed as it is not maintained upstream. Consider using 'tuba' instead"; # Added 2024-02-11 tor-browser-bundle-bin = tor-browser; # Added 2023-09-23 + transmission = lib.warn (transmission3Warning {}) transmission_3; # Added 2024-06-10 + transmission-gtk = lib.warn (transmission3Warning {suffix = "-gtk";}) transmission_3-gtk; # Added 2024-06-10 + transmission-qt = lib.warn (transmission3Warning {suffix = "-qt";}) transmission_3-qt; # Added 2024-06-10 + libtransmission = lib.warn (transmission3Warning {prefix = "lib";}) libtransmission_3; # Added 2024-06-10 transfig = fig2dev; # Added 2022-02-15 transifex-client = transifex-cli; # Added 2023-12-29 trezor_agent = trezor-agent; # Added 2024-01-07 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5a7a472e1b8b..8d63363da0ea 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -34726,15 +34726,14 @@ with pkgs; transcribe = callPackage ../applications/audio/transcribe { }; - transmission = callPackage ../applications/networking/p2p/transmission { }; - libtransmission = transmission.override { + libtransmission_3 = transmission_3.override { installLib = true; enableDaemon = false; enableCli = false; }; - transmission-gtk = transmission.override { enableGTK3 = true; }; - transmission-qt = transmission.override { enableQt = true; }; - transmission_noSystemd = transmission.override { enableSystemd = false; }; + transmission_3-gtk = transmission_3.override { enableGTK3 = true; }; + transmission_3-qt = transmission_3.override { enableQt = true; }; + transmission_3_noSystemd = transmission_3.override { enableSystemd = false; }; # Needs macOS >= 10.14.6 transmission_4 = darwin.apple_sdk_11_0.callPackage ../applications/networking/p2p/transmission/4.nix { diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 4f95c7d084ef..04f10bb0fac1 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -125,7 +125,8 @@ let jobs.gimp.x86_64-darwin jobs.emacs.x86_64-darwin jobs.wireshark.x86_64-darwin - jobs.transmission-gtk.x86_64-darwin + jobs.transmission_3-gtk.x86_64-darwin + jobs.transmission_4-gtk.x86_64-darwin # Tests /* |