Skip to content
60 changes: 28 additions & 32 deletions pkgs/applications/networking/instant-messengers/teams/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -26,37 +26,33 @@ let
};

appName = "Teams.app";
in
stdenv.mkDerivation {
inherit pname meta;
version = versions.darwin;

darwin = stdenv.mkDerivation {
inherit pname meta;
version = versions.darwin;

src = fetchurl {
url = "https://statics.teams.cdn.office.net/production-osx/${versions.darwin}/Teams_osx.pkg";
hash = hashes.darwin;
};

nativeBuildInputs = [ xar cpio makeWrapper ];

unpackPhase = ''
xar -xf $src
zcat < Teams_osx_app.pkg/Payload | cpio -i
'';

sourceRoot = "Microsoft\ Teams.app";
dontPatch = true;
dontConfigure = true;
dontBuild = true;

installPhase = ''
runHook preInstall
mkdir -p $out/{Applications/${appName},bin}
cp -R . $out/Applications/${appName}
makeWrapper $out/Applications/${appName}/Contents/MacOS/Teams $out/bin/teams
runHook postInstall
'';
src = fetchurl {
url = "https://statics.teams.cdn.office.net/production-osx/${versions.darwin}/Teams_osx.pkg";
hash = hashes.darwin;
};
in
if stdenv.isDarwin
then darwin
else throw "Teams app for Linux has been removed as it is unmaintained by upstream. (2023-09-29)"
Comment on lines -59 to -62
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it unreasonable to still include this error message for Linux users?

Copy link
Member Author

@infinisil infinisil Dec 22, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's no good infrastructure to have that easily, and I think the default error for unsupported platforms is good enough:

error: Package ‘teams-1.6.00.4464’ in /home/tweagysil/src/nixpkgs/pr/pkgs/applications/networking/instant-messengers/teams/default.nix:18
  is not available on the requested hostPlatform:
    hostPlatform.config = "x86_64-unknown-linux-gnu"
    package.meta.platforms = [
      "x86_64-darwin"
      "aarch64-darwin"
    ]
    package.meta.badPlatforms = [ ]
  , refusing to evaluate.


nativeBuildInputs = [ xar cpio makeWrapper ];

unpackPhase = ''
xar -xf $src
zcat < Teams_osx_app.pkg/Payload | cpio -i
'';

sourceRoot = "Microsoft\ Teams.app";
dontPatch = true;
dontConfigure = true;
dontBuild = true;

installPhase = ''
runHook preInstall
mkdir -p $out/{Applications/${appName},bin}
cp -R . $out/Applications/${appName}
makeWrapper $out/Applications/${appName}/Contents/MacOS/Teams $out/bin/teams
runHook postInstall
'';
}
4 changes: 2 additions & 2 deletions pkgs/by-name/gr/gruvbox-plus-icons/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
, stdenvNoCC
, fetchFromGitHub
, gtk3
, breeze-icons
, plasma5Packages
, gnome-icon-theme
, hicolor-icon-theme
}:
Expand All @@ -21,7 +21,7 @@ stdenvNoCC.mkDerivation {

nativeBuildInputs = [ gtk3 ];

propagatedBuildInputs = [ breeze-icons gnome-icon-theme hicolor-icon-theme ];
propagatedBuildInputs = [ plasma5Packages.breeze-icons gnome-icon-theme hicolor-icon-theme ];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these changes necessary? They seem to bringing more than just the icons into scope for an icon package.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah this is necessary because on master, this fails:

$ nix-instantiate -A gruvbox-plus-icons --arg config '{ allowAliases = false; }'
error:
       … while calling the 'throw' builtin

         at /home/tweagysil/src/nixpkgs/pr/lib/customisation.nix:206:13:

          205|        then makeOverridable f allArgs
          206|        else throw "lib.customisation.callPackageWith: ${error}";
             |             ^
          207|

       error: lib.customisation.callPackageWith: Function called without required argument "breeze-icons" at /home/tweagysil/src/nixpkgs/pr/pkgs/by-name/gr/gruvbox-plus-icons/package.nix:6

This is because breeze-icons is an alias. We can look into aliases.nix to see where it comes from:

inherit (plasma5Packages)
akonadi akregator arianna ark bluedevil bomber bovo breeze-grub breeze-gtk
breeze-icons breeze-plymouth breeze-qt5 colord-kde discover dolphin dragon elisa falkon

So the change here just inlines the alias, therefore not using the alias anymore

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah I see


installPhase = ''
runHook preInstall
Expand Down
4 changes: 2 additions & 2 deletions pkgs/development/compilers/dotnet/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ dotnetCombined = with dotnetCorePackages; combinePackages [ sdk_6_0 aspnetcore_7
Hashes and urls are retrieved from:
https://dotnet.microsoft.com/download/dotnet
*/
{ callPackage }:
{ lib, config, callPackage }:
let
buildDotnet = attrs: callPackage (import ./build-dotnet.nix attrs) {};
buildAttrs = {
Expand Down Expand Up @@ -35,7 +35,7 @@ in
inherit systemToDotnetRid;

combinePackages = attrs: callPackage (import ./combine-packages.nix attrs) {};

} // lib.optionalAttrs config.allowAliases {
# EOL
sdk_2_1 = throw "Dotnet SDK 2.1 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
sdk_2_2 = throw "Dotnet SDK 2.2 is EOL, please use 6.0 (LTS) or 7.0 (Current)";
Expand Down
3 changes: 1 addition & 2 deletions pkgs/development/libraries/wtk/default.nix
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
{ lib, stdenv, requireFile, unzip, xorg }:

assert stdenv.hostPlatform.system == "i686-linux";

stdenv.mkDerivation rec {
pname = "sun-java-wtk";
version = "2.5.2_01";
Expand All @@ -23,5 +21,6 @@ stdenv.mkDerivation rec {
description = "Sun Java Wireless Toolkit 2.5.2_01 for CLDC";
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
license = lib.licenses.unfree;
platforms = [ "i686-linux" ];
};
}
4 changes: 2 additions & 2 deletions pkgs/development/tools/gofumpt/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
, buildGoModule
, fetchFromGitHub
, nix-update-script
, testVersion
, testers
, gofumpt
}:

Expand Down Expand Up @@ -30,7 +30,7 @@ buildGoModule rec {

passthru = {
updateScript = nix-update-script { };
tests.version = testVersion {
tests.version = testers.testVersion {
package = gofumpt;
version = "v${version}";
};
Expand Down
12 changes: 0 additions & 12 deletions pkgs/servers/nextcloud/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -42,18 +42,6 @@ let
};
};
in {
nextcloud25 = throw ''
Nextcloud v25 has been removed from `nixpkgs` as the support for is dropped
by upstream in 2023-10. Please upgrade to at least Nextcloud v26 by declaring

services.nextcloud.package = pkgs.nextcloud26;

in your NixOS config.

WARNING: if you were on Nextcloud 24 you have to upgrade to Nextcloud 25
first on 23.05 because Nextcloud doesn't support upgrades across multiple major versions!
'';

Comment on lines -45 to -56
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still fairly recent. Can we not remove this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure what you mean. I just moved this part around while keeping the same error message, since I know close to nothing about all of these packages 😆

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah just saw #276112 (comment) haha

nextcloud26 = generic {
version = "26.0.10";
hash = "sha256-yArkYMxOmvfQsJd6TJJX+t22a/V5OW9nwHfgLZsmlIw=";
Expand Down
34 changes: 34 additions & 0 deletions pkgs/top-level/aliases.nix
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,9 @@ mapAliases ({
ccloud-cli = throw "ccloud-cli has been removed, please use confluent-cli instead"; # Added 2023-06-09
certmgr-selfsigned = certmgr; # Added 2023-11-30
chefdk = throw "chefdk has been removed due to being deprecated upstream by Chef Workstation"; # Added 2023-03-22
chia = throw "chia has been removed. see https://github.com/NixOS/nixpkgs/pull/270254"; # Added 2023-11-30
chia-dev-tools = throw "chia-dev-tools has been removed. see https://github.com/NixOS/nixpkgs/pull/270254"; # Added 2023-11-30
chia-plotter = throw "chia-plotter has been removed. see https://github.com/NixOS/nixpkgs/pull/270254"; # Added 2023-11-30
chocolateDoom = chocolate-doom; # Added 2023-05-01
chrome-gnome-shell = gnome-browser-connector; # Added 2022-07-27
chromiumBeta = throw "'chromiumBeta' has been removed due to the lack of maintenance in nixpkgs. Consider using 'chromium' instead."; # Added 2023-10-18
Expand Down Expand Up @@ -202,6 +205,9 @@ mapAliases ({
dot-http = throw "'dot-http' has been removed: abandoned by upstream. Use hurl instead."; # Added 2023-01-16
dotty = scala_3; # Added 2023-08-20
dotnet-netcore = dotnet-runtime; # Added 2021-10-07
dotnet-sdk_2 = dotnetCorePackages.sdk_2_1; # Added 2020-01-19
dotnet-sdk_3 = dotnetCorePackages.sdk_3_1; # Added 2020-01-19
dotnet-sdk_5 = dotnetCorePackages.sdk_5_0; # Added 2020-09-11
drgeo = throw "'drgeo' has been removed as it is outdated and unmaintained"; # Added 2023-10-15
dtv-scan-tables_linuxtv = dtv-scan-tables; # Added 2023-03-03
dtv-scan-tables_tvheadend = dtv-scan-tables; # Added 2023-03-03
Expand Down Expand Up @@ -604,6 +610,18 @@ mapAliases ({
minetestserver_5 = minetestserver; # Added 2023-12-11
minizip2 = pkgs.minizip-ng; # Added 2022-12-28
mirage-im = throw "'mirage-im' has been removed, as it was broken and unmaintained"; # Added 2023-11-26
mod_dnssd = apacheHttpdPackages.mod_dnssd; # Added 2014-11-07
mod_fastcgi = apacheHttpdPackages.mod_fastcgi; # Added 2014-11-07
mod_python = apacheHttpdPackages.mod_python; # Added 2014-11-07
mod_wsgi = apacheHttpdPackages.mod_wsgi; # Added 2014-11-07
mod_ca = apacheHttpdPackages.mod_ca; # Added 2019-12-24
mod_crl = apacheHttpdPackages.mod_crl; # Added 2019-12-24
mod_csr = apacheHttpdPackages.mod_csr; # Added 2019-12-24
mod_ocsp = apacheHttpdPackages.mod_ocsp; # Added 2019-12-24
mod_scep = apacheHttpdPackages.mod_scep; # Added 2019-12-24
mod_spkac = apacheHttpdPackages.mod_spkac; # Added 2019-12-24
mod_pkcs12 = apacheHttpdPackages.mod_pkcs12; # Added 2019-12-24
mod_timestamp = apacheHttpdPackages.mod_timestamp; # Added 2019-12-24
monero = monero-cli; # Added 2021-11-28
mongodb-4_0 = throw "mongodb-4_0 has been removed, it's end of life since April 2022"; # Added 2023-01-05
mongodb-4_2 = throw "mongodb-4_2 has been removed, it's end of life since April 2023"; # Added 2023-06-06
Expand All @@ -629,10 +647,26 @@ mapAliases ({

net_snmp = throw "'net_snmp' has been renamed to/replaced by 'net-snmp'"; # Converted to throw 2023-09-10
netbox_3_3 = throw "netbox 3.3 series has been removed as it was EOL"; # Added 2023-09-02
nextcloud25 = throw ''
Nextcloud v25 has been removed from `nixpkgs` as the support for is dropped
by upstream in 2023-10. Please upgrade to at least Nextcloud v26 by declaring

services.nextcloud.package = pkgs.nextcloud26;

in your NixOS config.

WARNING: if you were on Nextcloud 24 you have to upgrade to Nextcloud 25
first on 23.05 because Nextcloud doesn't support upgrades across multiple major versions!
''; # Added 2023-10-13
Comment on lines +650 to +660
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Disregard my previous comment about the message being removed.

nextcloud25Packages = throw "Nextcloud25 is EOL!"; # Added 2023-10-13
nagiosPluginsOfficial = monitoring-plugins;
neochat = libsForQt5.kdeGear.neochat; # added 2022-05-10
nitrokey-udev-rules = libnitrokey; # Added 2023-03-25
nix-direnv-flakes = nix-direnv;
nix-repl = throw ( # Added 2018-08-26
"nix-repl has been removed because it's not maintained anymore, " +
"use `nix repl` instead. Also see https://github.com/NixOS/nixpkgs/pull/44903"
);
nix-review = throw "'nix-review' has been renamed to/replaced by 'nixpkgs-review'"; # Converted to throw 2023-09-10
nix-template-rpm = throw "'nix-template-rpm' has been removed as it is broken and unmaintained" ; # Added 2023-11-20
nixFlakes = nixVersions.stable; # Added 2021-05-21
Expand Down
38 changes: 5 additions & 33 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -939,9 +939,6 @@ with pkgs;

dotnetCorePackages = recurseIntoAttrs (callPackage ../development/compilers/dotnet {});

dotnet-sdk_2 = dotnetCorePackages.sdk_2_1;
dotnet-sdk_3 = dotnetCorePackages.sdk_3_1;
dotnet-sdk_5 = dotnetCorePackages.sdk_5_0;
dotnet-sdk_6 = dotnetCorePackages.sdk_6_0;
dotnet-sdk_7 = dotnetCorePackages.sdk_7_0;
dotnet-sdk_8 = dotnetCorePackages.sdk_8_0;
Expand Down Expand Up @@ -11229,9 +11226,8 @@ with pkgs;
grocy = callPackage ../servers/grocy { };

inherit (callPackage ../servers/nextcloud {})
nextcloud25 nextcloud26 nextcloud27 nextcloud28;
nextcloud26 nextcloud27 nextcloud28;

nextcloud25Packages = throw "Nextcloud25 is EOL!";
nextcloud26Packages = callPackage ../servers/nextcloud/packages {
apps = lib.importJSON ../servers/nextcloud/packages/26.json;
};
Expand Down Expand Up @@ -26205,7 +26201,6 @@ with pkgs;

mod_dnssd = callPackage ../servers/http/apache-modules/mod_dnssd { };

mod_evasive = throw "mod_evasive is not supported on Apache httpd 2.4";

mod_perl = callPackage ../servers/http/apache-modules/mod_perl { };

Expand All @@ -26215,8 +26210,6 @@ with pkgs;

mod_tile = callPackage ../servers/http/apache-modules/mod_tile { };

mod_wsgi = self.mod_wsgi2;
mod_wsgi2 = throw "mod_wsgi2 has been removed since Python 2 is EOL. Use mod_wsgi3 instead";
mod_wsgi3 = callPackage ../servers/http/apache-modules/mod_wsgi { };

mod_itk = callPackage ../servers/http/apache-modules/mod_itk { };
Expand All @@ -26226,6 +26219,10 @@ with pkgs;
php = pkgs.php.override { inherit apacheHttpd; };

subversion = pkgs.subversion.override { httpServer = true; inherit apacheHttpd; };
} // lib.optionalAttrs config.allowAliases {
mod_evasive = throw "mod_evasive is not supported on Apache httpd 2.4";
mod_wsgi = self.mod_wsgi2;
mod_wsgi2 = throw "mod_wsgi2 has been removed since Python 2 is EOL. Use mod_wsgi3 instead";
};

apacheHttpdPackages_2_4 = recurseIntoAttrs (apacheHttpdPackagesFor apacheHttpd_2_4 apacheHttpdPackages_2_4);
Expand Down Expand Up @@ -26695,20 +26692,6 @@ with pkgs;

mkchromecast = libsForQt5.callPackage ../applications/networking/mkchromecast { };

# Backwards compatibility.
mod_dnssd = apacheHttpdPackages.mod_dnssd;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This broke building GNOME with aliases disabled, fixed in #278744

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ofborg didn't catch it when calculating outpaths because of #271123 (comment) as well, by the way (I've been investigating this)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm working on a fix

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mod_fastcgi = apacheHttpdPackages.mod_fastcgi;
mod_python = apacheHttpdPackages.mod_python;
mod_wsgi = apacheHttpdPackages.mod_wsgi;
mod_ca = apacheHttpdPackages.mod_ca;
mod_crl = apacheHttpdPackages.mod_crl;
mod_csr = apacheHttpdPackages.mod_csr;
mod_ocsp = apacheHttpdPackages.mod_ocsp;
mod_scep = apacheHttpdPackages.mod_scep;
mod_spkac = apacheHttpdPackages.mod_spkac;
mod_pkcs12 = apacheHttpdPackages.mod_pkcs12;
mod_timestamp = apacheHttpdPackages.mod_timestamp;

inherit (callPackages ../servers/mpd {
inherit (darwin.apple_sdk.frameworks) AudioToolbox AudioUnit;
}) mpd mpd-small mpdWithFeatures;
Expand Down Expand Up @@ -37037,12 +37020,6 @@ with pkgs;

cgminer = callPackage ../applications/blockchains/cgminer { };

chia = throw "chia has been removed. see https://github.com/NixOS/nixpkgs/pull/270254";

chia-dev-tools = throw "chia-dev-tools has been removed. see https://github.com/NixOS/nixpkgs/pull/270254";

chia-plotter = throw "chia-plotter has been removed. see https://github.com/NixOS/nixpkgs/pull/270254";

clboss = callPackage ../applications/blockchains/clboss { };

clightning = callPackage ../applications/blockchains/clightning { };
Expand Down Expand Up @@ -40771,11 +40748,6 @@ with pkgs;

nix-universal-prefetch = callPackage ../tools/package-management/nix-universal-prefetch { };

nix-repl = throw (
"nix-repl has been removed because it's not maintained anymore, " +
"use `nix repl` instead. Also see https://github.com/NixOS/nixpkgs/pull/44903"
);

nixpkgs-review = callPackage ../tools/package-management/nixpkgs-review { };

nix-serve = callPackage ../tools/package-management/nix-serve { };
Expand Down