From fa08eabc4ad369b8e59c87620ae3f8ca7ef96670 Mon Sep 17 00:00:00 2001 From: Tomo Date: Sat, 2 Nov 2024 20:36:14 +0000 Subject: [PATCH] atlassian-{bamboo,confluence,crowd,jira}: drop Support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements c.f. https://github.com/NixOS/nixpkgs/pull/353043#issuecomment-2452825826 --- .../manual/release-notes/rl-2411.section.md | 9 + nixos/modules/module-list.nix | 3 - nixos/modules/rename.nix | 3 + .../web-apps/atlassian/confluence.nix | 224 ------------------ .../services/web-apps/atlassian/crowd.nix | 193 --------------- .../services/web-apps/atlassian/jira.nix | 219 ----------------- pkgs/servers/atlassian/bamboo.nix | 38 --- pkgs/servers/atlassian/confluence.nix | 51 ---- pkgs/servers/atlassian/crowd.nix | 50 ---- pkgs/servers/atlassian/jira.nix | 44 ---- pkgs/top-level/aliases.nix | 4 + pkgs/top-level/all-packages.nix | 5 - 12 files changed, 16 insertions(+), 827 deletions(-) delete mode 100644 nixos/modules/services/web-apps/atlassian/confluence.nix delete mode 100644 nixos/modules/services/web-apps/atlassian/crowd.nix delete mode 100644 nixos/modules/services/web-apps/atlassian/jira.nix delete mode 100644 pkgs/servers/atlassian/bamboo.nix delete mode 100644 pkgs/servers/atlassian/confluence.nix delete mode 100644 pkgs/servers/atlassian/crowd.nix delete mode 100644 pkgs/servers/atlassian/jira.nix diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index 75d9dcfa235f..c5d1395ebb6a 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -672,6 +672,15 @@ lists by default. Backwards-compatible behavior can be enabled with `atomsCoercedToLists`. +- Atlassian Server products have been removed, as support for the Atlassian Server + products ended in February 2024 and there was insufficient interest in + maintaining the Atlassian Data Center replacements: + - The `atlassian-bamboo` package + - The `atlassian-confluence` package and its `services.confluence` NixOS module + - The `atlassian-crowd` package and its `services.crowd` NixOS module + - The `atlassian-jira` package and its `services.jira` NixOS module + + - `python3Packages.nose` has been removed, as it has been deprecated and unmaintained for almost a decade and does not work on Python 3.12. Please switch to `pytest` or another test runner/framework. diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index d05bafae4a23..7b753937e808 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -1390,9 +1390,6 @@ ./services/web-apps/alps.nix ./services/web-apps/anuko-time-tracker.nix ./services/web-apps/artalk.nix - ./services/web-apps/atlassian/confluence.nix - ./services/web-apps/atlassian/crowd.nix - ./services/web-apps/atlassian/jira.nix ./services/web-apps/audiobookshelf.nix ./services/web-apps/bluemap.nix ./services/web-apps/bookstack.nix diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix index 160ad91e42aa..18b7e9faaa72 100644 --- a/nixos/modules/rename.nix +++ b/nixos/modules/rename.nix @@ -62,7 +62,9 @@ in (mkRemovedOptionModule [ "services" "beegfsEnable" ] "The BeeGFS module has been removed") (mkRemovedOptionModule [ "services" "cgmanager" "enable"] "cgmanager was deprecated by lxc and therefore removed from nixpkgs.") (mkRemovedOptionModule [ "services" "chronos" ] "The corresponding package was removed from nixpkgs.") + (mkRemovedOptionModule [ "services" "confluence" ] "Atlassian software has been removed, as support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements") (mkRemovedOptionModule [ "services" "couchpotato" ] "The corresponding package was removed from nixpkgs.") + (mkRemovedOptionModule [ "services" "crowd" ] "Atlassian software has been removed, as support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements") (mkRemovedOptionModule [ "services" "dd-agent" ] "dd-agent was removed from nixpkgs in favor of the newer datadog-agent.") (mkRemovedOptionModule [ "services" "dnscrypt-proxy" ] "Use services.dnscrypt-proxy2 instead") (mkRemovedOptionModule [ "services" "dnscrypt-wrapper" ] '' @@ -82,6 +84,7 @@ in (mkRemovedOptionModule [ "services" "homeassistant-satellite"] "The `services.homeassistant-satellite` module has been replaced by `services.wyoming-satellite`.") (mkRemovedOptionModule [ "services" "hydron" ] "The `services.hydron` module has been removed as the project has been archived upstream since 2022 and is affected by a severe remote code execution vulnerability.") (mkRemovedOptionModule [ "services" "ihatemoney" ] "The ihatemoney module has been removed for lack of downstream maintainer") + (mkRemovedOptionModule [ "services" "jira" ] "Atlassian software has been removed, as support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements") (mkRemovedOptionModule [ "services" "kippo" ] "The corresponding package was removed from nixpkgs.") (mkRemovedOptionModule [ "services" "lshd" ] "The corresponding package was removed from nixpkgs as it had no maintainer in Nixpkgs and hasn't seen an upstream release in over a decades.") (mkRemovedOptionModule [ "services" "mailpile" ] "The corresponding package was removed from nixpkgs.") diff --git a/nixos/modules/services/web-apps/atlassian/confluence.nix b/nixos/modules/services/web-apps/atlassian/confluence.nix deleted file mode 100644 index 683a1c7603ef..000000000000 --- a/nixos/modules/services/web-apps/atlassian/confluence.nix +++ /dev/null @@ -1,224 +0,0 @@ -{ config, lib, pkgs, ... }: - -with lib; - -let - - cfg = config.services.confluence; - - pkg = cfg.package.override (optionalAttrs cfg.sso.enable { - enableSSO = cfg.sso.enable; - }); - - crowdProperties = pkgs.writeText "crowd.properties" '' - application.name ${cfg.sso.applicationName} - application.password ${if cfg.sso.applicationPassword != null then cfg.sso.applicationPassword else "@NIXOS_CONFLUENCE_CROWD_SSO_PWD@"} - application.login.url ${cfg.sso.crowd}/console/ - - crowd.server.url ${cfg.sso.crowd}/services/ - crowd.base.url ${cfg.sso.crowd}/ - - session.isauthenticated session.isauthenticated - session.tokenkey session.tokenkey - session.validationinterval ${toString cfg.sso.validationInterval} - session.lastvalidation session.lastvalidation - ''; - -in - -{ - options = { - services.confluence = { - enable = mkEnableOption "Atlassian Confluence service"; - - user = mkOption { - type = types.str; - default = "confluence"; - description = "User which runs confluence."; - }; - - group = mkOption { - type = types.str; - default = "confluence"; - description = "Group which runs confluence."; - }; - - home = mkOption { - type = types.str; - default = "/var/lib/confluence"; - description = "Home directory of the confluence instance."; - }; - - listenAddress = mkOption { - type = types.str; - default = "127.0.0.1"; - description = "Address to listen on."; - }; - - listenPort = mkOption { - type = types.port; - default = 8090; - description = "Port to listen on."; - }; - - catalinaOptions = mkOption { - type = types.listOf types.str; - default = []; - example = [ "-Xms1024m" "-Xmx2048m" "-Dconfluence.disable.peopledirectory.all=true" ]; - description = "Java options to pass to catalina/tomcat."; - }; - - proxy = { - enable = mkEnableOption "proxy support"; - - name = mkOption { - type = types.str; - example = "confluence.example.com"; - description = "Virtual hostname at the proxy"; - }; - - port = mkOption { - type = types.port; - default = 443; - example = 80; - description = "Port used at the proxy"; - }; - - scheme = mkOption { - type = types.str; - default = "https"; - example = "http"; - description = "Protocol used at the proxy."; - }; - }; - - sso = { - enable = mkEnableOption "SSO with Atlassian Crowd"; - - crowd = mkOption { - type = types.str; - example = "http://localhost:8095/crowd"; - description = "Crowd Base URL without trailing slash"; - }; - - applicationName = mkOption { - type = types.str; - example = "jira"; - description = "Exact name of this Confluence instance in Crowd"; - }; - - applicationPassword = mkOption { - type = types.nullOr types.str; - default = null; - description = "Application password of this Confluence instance in Crowd"; - }; - - applicationPasswordFile = mkOption { - type = types.nullOr types.str; - default = null; - description = "Path to the application password for Crowd of Confluence."; - }; - - validationInterval = mkOption { - type = types.int; - default = 2; - example = 0; - description = '' - Set to 0, if you want authentication checks to occur on each - request. Otherwise set to the number of minutes between request - to validate if the user is logged in or out of the Crowd SSO - server. Setting this value to 1 or higher will increase the - performance of Crowd's integration. - ''; - }; - }; - - package = mkPackageOption pkgs "atlassian-confluence" { }; - - jrePackage = mkPackageOption pkgs "oraclejre8" { - extraDescription = '' - ::: {.note } - Atlassian only supports the Oracle JRE (JRASERVER-46152). - ::: - ''; - }; - }; - }; - - config = mkIf cfg.enable { - users.users.${cfg.user} = { - isSystemUser = true; - group = cfg.group; - }; - - assertions = [ - { assertion = cfg.sso.enable -> ((cfg.sso.applicationPassword == null) != (cfg.sso.applicationPasswordFile)); - message = "Please set either applicationPassword or applicationPasswordFile"; - } - ]; - - warnings = mkIf (cfg.sso.enable && cfg.sso.applicationPassword != null) [ - "Using `services.confluence.sso.applicationPassword` is deprecated! Use `applicationPasswordFile` instead!" - ]; - - users.groups.${cfg.group} = {}; - - systemd.tmpfiles.rules = [ - "d '${cfg.home}' - ${cfg.user} - - -" - "d /run/confluence - - - - -" - - "L+ /run/confluence/home - - - - ${cfg.home}" - "L+ /run/confluence/logs - - - - ${cfg.home}/logs" - "L+ /run/confluence/temp - - - - ${cfg.home}/temp" - "L+ /run/confluence/work - - - - ${cfg.home}/work" - "L+ /run/confluence/server.xml - - - - ${cfg.home}/server.xml" - ]; - - systemd.services.confluence = { - description = "Atlassian Confluence"; - - wantedBy = [ "multi-user.target" ]; - requires = [ "postgresql.service" ]; - after = [ "postgresql.service" ]; - - path = [ cfg.jrePackage pkgs.bash ]; - - environment = { - CONF_USER = cfg.user; - JAVA_HOME = "${cfg.jrePackage}"; - CATALINA_OPTS = concatStringsSep " " cfg.catalinaOptions; - JAVA_OPTS = mkIf cfg.sso.enable "-Dcrowd.properties=${cfg.home}/crowd.properties"; - }; - - preStart = '' - mkdir -p ${cfg.home}/{logs,work,temp,deploy} - - sed -e 's,port="8090",port="${toString cfg.listenPort}" address="${cfg.listenAddress}",' \ - '' + (lib.optionalString cfg.proxy.enable '' - -e 's,protocol="org.apache.coyote.http11.Http11NioProtocol",protocol="org.apache.coyote.http11.Http11NioProtocol" proxyName="${cfg.proxy.name}" proxyPort="${toString cfg.proxy.port}" scheme="${cfg.proxy.scheme}",' \ - '') + '' - ${pkg}/conf/server.xml.dist > ${cfg.home}/server.xml - - ${optionalString cfg.sso.enable '' - install -m660 ${crowdProperties} ${cfg.home}/crowd.properties - ${optionalString (cfg.sso.applicationPasswordFile != null) '' - ${pkgs.replace-secret}/bin/replace-secret \ - '@NIXOS_CONFLUENCE_CROWD_SSO_PWD@' \ - ${cfg.sso.applicationPasswordFile} \ - ${cfg.home}/crowd.properties - ''} - ''} - ''; - - serviceConfig = { - User = cfg.user; - Group = cfg.group; - PrivateTmp = true; - Restart = "on-failure"; - RestartSec = "10"; - ExecStart = "${pkg}/bin/start-confluence.sh -fg"; - ExecStop = "${pkg}/bin/stop-confluence.sh"; - }; - }; - }; -} diff --git a/nixos/modules/services/web-apps/atlassian/crowd.nix b/nixos/modules/services/web-apps/atlassian/crowd.nix deleted file mode 100644 index 527fa1743df2..000000000000 --- a/nixos/modules/services/web-apps/atlassian/crowd.nix +++ /dev/null @@ -1,193 +0,0 @@ -{ config, lib, pkgs, ... }: - -with lib; - -let - - cfg = config.services.crowd; - - pkg = cfg.package.override { - home = cfg.home; - port = cfg.listenPort; - openidPassword = cfg.openidPassword; - } // (optionalAttrs cfg.proxy.enable { - proxyUrl = "${cfg.proxy.scheme}://${cfg.proxy.name}:${toString cfg.proxy.port}"; - }); - - crowdPropertiesFile = pkgs.writeText "crowd.properties" '' - application.name crowd-openid-server - application.password @NIXOS_CROWD_OPENID_PW@ - application.base.url http://localhost:${toString cfg.listenPort}/openidserver - application.login.url http://localhost:${toString cfg.listenPort}/openidserver - application.login.url.template http://localhost:${toString cfg.listenPort}/openidserver?returnToUrl=''${RETURN_TO_URL} - - crowd.server.url http://localhost:${toString cfg.listenPort}/crowd/services/ - - session.isauthenticated session.isauthenticated - session.tokenkey session.tokenkey - session.validationinterval 0 - session.lastvalidation session.lastvalidation - ''; - -in - -{ - options = { - services.crowd = { - enable = mkEnableOption "Atlassian Crowd service"; - - user = mkOption { - type = types.str; - default = "crowd"; - description = "User which runs Crowd."; - }; - - group = mkOption { - type = types.str; - default = "crowd"; - description = "Group which runs Crowd."; - }; - - home = mkOption { - type = types.str; - default = "/var/lib/crowd"; - description = "Home directory of the Crowd instance."; - }; - - listenAddress = mkOption { - type = types.str; - default = "127.0.0.1"; - description = "Address to listen on."; - }; - - listenPort = mkOption { - type = types.port; - default = 8092; - description = "Port to listen on."; - }; - - openidPassword = mkOption { - type = types.str; - default = "WILL_NEVER_BE_SET"; - description = "Application password for OpenID server."; - }; - - openidPasswordFile = mkOption { - type = types.nullOr types.str; - default = null; - description = "Path to the file containing the application password for OpenID server."; - }; - - catalinaOptions = mkOption { - type = types.listOf types.str; - default = []; - example = [ "-Xms1024m" "-Xmx2048m" ]; - description = "Java options to pass to catalina/tomcat."; - }; - - proxy = { - enable = mkEnableOption "reverse proxy support"; - - name = mkOption { - type = types.str; - example = "crowd.example.com"; - description = "Virtual hostname at the proxy"; - }; - - port = mkOption { - type = types.port; - default = 443; - example = 80; - description = "Port used at the proxy"; - }; - - scheme = mkOption { - type = types.str; - default = "https"; - example = "http"; - description = "Protocol used at the proxy."; - }; - - secure = mkOption { - type = types.bool; - default = true; - description = "Whether the connections to the proxy should be considered secure."; - }; - }; - - package = mkPackageOption pkgs "atlassian-crowd" { }; - - jrePackage = mkPackageOption pkgs "oraclejre8" { - extraDescription = '' - ::: {.note } - Atlassian only supports the Oracle JRE (JRASERVER-46152). - ::: - ''; - }; - }; - }; - - config = mkIf cfg.enable { - users.users.${cfg.user} = { - isSystemUser = true; - group = cfg.group; - }; - - users.groups.${cfg.group} = {}; - - systemd.tmpfiles.rules = [ - "d '${cfg.home}' - ${cfg.user} ${cfg.group} - -" - "d /run/atlassian-crowd - - - - -" - - "L+ /run/atlassian-crowd/database - - - - ${cfg.home}/database" - "L+ /run/atlassian-crowd/logs - - - - ${cfg.home}/logs" - "L+ /run/atlassian-crowd/work - - - - ${cfg.home}/work" - "L+ /run/atlassian-crowd/server.xml - - - - ${cfg.home}/server.xml" - ]; - - systemd.services.atlassian-crowd = { - description = "Atlassian Crowd"; - - wantedBy = [ "multi-user.target" ]; - requires = [ "postgresql.service" ]; - after = [ "postgresql.service" ]; - - path = [ cfg.jrePackage ]; - - environment = { - JAVA_HOME = "${cfg.jrePackage}"; - CATALINA_OPTS = concatStringsSep " " cfg.catalinaOptions; - CATALINA_TMPDIR = "/tmp"; - JAVA_OPTS = mkIf (cfg.openidPasswordFile != null) "-Dcrowd.properties=${cfg.home}/crowd.properties"; - }; - - preStart = '' - rm -rf ${cfg.home}/work - mkdir -p ${cfg.home}/{logs,database,work} - - sed -e 's,port="8095",port="${toString cfg.listenPort}" address="${cfg.listenAddress}",' \ - '' + (lib.optionalString cfg.proxy.enable '' - -e 's,compression="on",compression="off" protocol="HTTP/1.1" proxyName="${cfg.proxy.name}" proxyPort="${toString cfg.proxy.port}" scheme="${cfg.proxy.scheme}" secure="${boolToString cfg.proxy.secure}",' \ - '') + '' - ${pkg}/apache-tomcat/conf/server.xml.dist > ${cfg.home}/server.xml - - ${optionalString (cfg.openidPasswordFile != null) '' - install -m660 ${crowdPropertiesFile} ${cfg.home}/crowd.properties - ${pkgs.replace-secret}/bin/replace-secret \ - '@NIXOS_CROWD_OPENID_PW@' \ - ${cfg.openidPasswordFile} \ - ${cfg.home}/crowd.properties - ''} - ''; - - serviceConfig = { - User = cfg.user; - Group = cfg.group; - PrivateTmp = true; - Restart = "on-failure"; - RestartSec = "10"; - ExecStart = "${pkg}/start_crowd.sh -fg"; - }; - }; - }; -} diff --git a/nixos/modules/services/web-apps/atlassian/jira.nix b/nixos/modules/services/web-apps/atlassian/jira.nix deleted file mode 100644 index 40c5d95cae3a..000000000000 --- a/nixos/modules/services/web-apps/atlassian/jira.nix +++ /dev/null @@ -1,219 +0,0 @@ -{ config, lib, pkgs, ... }: - -with lib; - -let - - cfg = config.services.jira; - - pkg = cfg.package.override (optionalAttrs cfg.sso.enable { - enableSSO = cfg.sso.enable; - }); - - crowdProperties = pkgs.writeText "crowd.properties" '' - application.name ${cfg.sso.applicationName} - application.password @NIXOS_JIRA_CROWD_SSO_PWD@ - application.login.url ${cfg.sso.crowd}/console/ - - crowd.server.url ${cfg.sso.crowd}/services/ - crowd.base.url ${cfg.sso.crowd}/ - - session.isauthenticated session.isauthenticated - session.tokenkey session.tokenkey - session.validationinterval ${toString cfg.sso.validationInterval} - session.lastvalidation session.lastvalidation - ''; - -in - -{ - options = { - services.jira = { - enable = mkEnableOption "Atlassian JIRA service"; - - user = mkOption { - type = types.str; - default = "jira"; - description = "User which runs JIRA."; - }; - - group = mkOption { - type = types.str; - default = "jira"; - description = "Group which runs JIRA."; - }; - - home = mkOption { - type = types.str; - default = "/var/lib/jira"; - description = "Home directory of the JIRA instance."; - }; - - listenAddress = mkOption { - type = types.str; - default = "127.0.0.1"; - description = "Address to listen on."; - }; - - listenPort = mkOption { - type = types.port; - default = 8091; - description = "Port to listen on."; - }; - - catalinaOptions = mkOption { - type = types.listOf types.str; - default = []; - example = [ "-Xms1024m" "-Xmx2048m" ]; - description = "Java options to pass to catalina/tomcat."; - }; - - proxy = { - enable = mkEnableOption "reverse proxy support"; - - name = mkOption { - type = types.str; - example = "jira.example.com"; - description = "Virtual hostname at the proxy"; - }; - - port = mkOption { - type = types.port; - default = 443; - example = 80; - description = "Port used at the proxy"; - }; - - scheme = mkOption { - type = types.str; - default = "https"; - example = "http"; - description = "Protocol used at the proxy."; - }; - - secure = mkOption { - type = types.bool; - default = true; - description = "Whether the connections to the proxy should be considered secure."; - }; - }; - - sso = { - enable = mkEnableOption "SSO with Atlassian Crowd"; - - crowd = mkOption { - type = types.str; - example = "http://localhost:8095/crowd"; - description = "Crowd Base URL without trailing slash"; - }; - - applicationName = mkOption { - type = types.str; - example = "jira"; - description = "Exact name of this JIRA instance in Crowd"; - }; - - applicationPasswordFile = mkOption { - type = types.str; - description = "Path to the file containing the application password of this JIRA instance in Crowd"; - }; - - validationInterval = mkOption { - type = types.int; - default = 2; - example = 0; - description = '' - Set to 0, if you want authentication checks to occur on each - request. Otherwise set to the number of minutes between request - to validate if the user is logged in or out of the Crowd SSO - server. Setting this value to 1 or higher will increase the - performance of Crowd's integration. - ''; - }; - }; - - package = mkPackageOption pkgs "atlassian-jira" { }; - - jrePackage = mkPackageOption pkgs "oraclejre8" { - extraDescription = '' - ::: {.note } - Atlassian only supports the Oracle JRE (JRASERVER-46152). - ::: - ''; - }; - }; - }; - - config = mkIf cfg.enable { - users.users.${cfg.user} = { - isSystemUser = true; - group = cfg.group; - home = cfg.home; - }; - - users.groups.${cfg.group} = {}; - - systemd.tmpfiles.rules = [ - "d '${cfg.home}' - ${cfg.user} - - -" - "d /run/atlassian-jira - - - - -" - - "L+ /run/atlassian-jira/home - - - - ${cfg.home}" - "L+ /run/atlassian-jira/logs - - - - ${cfg.home}/logs" - "L+ /run/atlassian-jira/work - - - - ${cfg.home}/work" - "L+ /run/atlassian-jira/temp - - - - ${cfg.home}/temp" - "L+ /run/atlassian-jira/server.xml - - - - ${cfg.home}/server.xml" - ]; - - systemd.services.atlassian-jira = { - description = "Atlassian JIRA"; - - wantedBy = [ "multi-user.target" ]; - requires = [ "postgresql.service" ]; - after = [ "postgresql.service" ]; - - path = [ cfg.jrePackage pkgs.bash ]; - - environment = { - JIRA_USER = cfg.user; - JIRA_HOME = cfg.home; - JAVA_HOME = "${cfg.jrePackage}"; - CATALINA_OPTS = concatStringsSep " " cfg.catalinaOptions; - JAVA_OPTS = mkIf cfg.sso.enable "-Dcrowd.properties=${cfg.home}/crowd.properties"; - }; - - preStart = '' - mkdir -p ${cfg.home}/{logs,work,temp,deploy} - - sed -e 's,port="8080",port="${toString cfg.listenPort}" address="${cfg.listenAddress}",' \ - '' + (lib.optionalString cfg.proxy.enable '' - -e 's,protocol="HTTP/1.1",protocol="HTTP/1.1" proxyName="${cfg.proxy.name}" proxyPort="${toString cfg.proxy.port}" scheme="${cfg.proxy.scheme}" secure="${toString cfg.proxy.secure}",' \ - '') + '' - ${pkg}/conf/server.xml.dist > ${cfg.home}/server.xml - - ${optionalString cfg.sso.enable '' - install -m660 ${crowdProperties} ${cfg.home}/crowd.properties - ${pkgs.replace-secret}/bin/replace-secret \ - '@NIXOS_JIRA_CROWD_SSO_PWD@' \ - ${cfg.sso.applicationPasswordFile} \ - ${cfg.home}/crowd.properties - ''} - ''; - - serviceConfig = { - User = cfg.user; - Group = cfg.group; - PrivateTmp = true; - Restart = "on-failure"; - RestartSec = "10"; - ExecStart = "${pkg}/bin/start-jira.sh -fg"; - ExecStop = "${pkg}/bin/stop-jira.sh"; - }; - }; - }; - - imports = [ - (mkRemovedOptionModule [ "services" "jira" "sso" "applicationPassword" ] '' - Use `applicationPasswordFile` instead! - '') - ]; -} diff --git a/pkgs/servers/atlassian/bamboo.nix b/pkgs/servers/atlassian/bamboo.nix deleted file mode 100644 index b5e97a87da56..000000000000 --- a/pkgs/servers/atlassian/bamboo.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ stdenvNoCC, lib, fetchurl, mysql_jdbc -, withMysql ? true -}: - - -stdenvNoCC.mkDerivation rec { - pname = "atlassian-bamboo"; - version = "9.6.4"; - - src = fetchurl { - url = "https://product-downloads.atlassian.com/software/bamboo/downloads/atlassian-bamboo-${version}.tar.gz"; - hash = "sha256-Gd4+rH/40s9AvJi/waEVfVwWtT0H3bSlknNV6wxGpNg="; - }; - - buildPhase = '' - echo "bamboo.home=/run/bamboo/home" > atlassian-bamboo/WEB-INF/classes/bamboo-init.properties - mv conf/server.xml conf/server.xml.dist - ln -sf /run/atlassian-bamboo/server.xml conf/server.xml - rm -r logs; ln -sf /run/atlassian-bamboo/logs/ . - rm -r temp; ln -sf /run/atlassian-bamboo/temp/ . - rm -r work; ln -sf /run/atlassian-bamboo/work/ . - '' + lib.optionalString withMysql '' - cp -v ${mysql_jdbc}/share/java/*jar atlassian-bamboo/lib/ - ''; - - installPhase = '' - cp -rva . $out - patchShebangs $out/bin - ''; - - meta = with lib; { - description = "Bamboo Data Center is a continuous delivery server"; - homepage = "https://www.atlassian.com/software/bamboo"; - sourceProvenance = with sourceTypes; [ binaryBytecode ]; - license = with licenses; [ unfree ]; - maintainers = with maintainers; [ techknowlogick ]; - }; -} diff --git a/pkgs/servers/atlassian/confluence.nix b/pkgs/servers/atlassian/confluence.nix deleted file mode 100644 index ea33a66ee044..000000000000 --- a/pkgs/servers/atlassian/confluence.nix +++ /dev/null @@ -1,51 +0,0 @@ -{ stdenvNoCC, lib, fetchurl, mysql_jdbc ? null -, enableSSO ? false -, crowdProperties ? null -, withMysql ? true -}: - -assert withMysql -> (mysql_jdbc != null); - -lib.warnIf (crowdProperties != null) "Using `crowdProperties` is deprecated!" -(stdenvNoCC.mkDerivation rec { - pname = "atlassian-confluence"; - version = "9.0.1"; - - src = fetchurl { - url = "https://product-downloads.atlassian.com/software/confluence/downloads/${pname}-${version}.tar.gz"; - hash = "sha256-WCshWmJaTfyjRLaXUtkDuXHO5eEhHa/rDCPVFSLd3aU="; - }; - - buildPhase = '' - echo "confluence.home=/run/confluence/home" > confluence/WEB-INF/classes/confluence-init.properties - mv conf/server.xml conf/server.xml.dist - ln -sf /run/confluence/home/deploy conf/Standalone - ln -sf /run/confluence/server.xml conf/server.xml - rm -r logs; ln -sf /run/confluence/logs/ . - rm -r work; ln -sf /run/confluence/work/ . - rm -r temp; ln -sf /run/confluence/temp/ . - '' + lib.optionalString enableSSO '' - substituteInPlace confluence/WEB-INF/classes/seraph-config.xml \ - --replace com.atlassian.confluence.user.ConfluenceAuthenticator\ - com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator - '' + lib.optionalString (crowdProperties != null) '' - cat < confluence/WEB-INF/classes/crowd.properties - ${crowdProperties} - EOF - '' + lib.optionalString withMysql '' - cp -v ${mysql_jdbc}/share/java/*jar confluence/WEB-INF/lib/ - ''; - - installPhase = '' - cp -rva . $out - patchShebangs $out/bin - ''; - - meta = with lib; { - description = "Team collaboration software written in Java and mainly used in corporate environments"; - homepage = "https://www.atlassian.com/software/confluence"; - sourceProvenance = with sourceTypes; [ binaryBytecode ]; - license = licenses.unfree; - maintainers = with maintainers; [ willibutz ciil techknowlogick ]; - }; -}) diff --git a/pkgs/servers/atlassian/crowd.nix b/pkgs/servers/atlassian/crowd.nix deleted file mode 100644 index 44c44a0d2681..000000000000 --- a/pkgs/servers/atlassian/crowd.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ lib, stdenv, fetchurl, home ? "/var/lib/crowd" -, port ? 8092, proxyUrl ? null, openidPassword ? "WILL_NEVER_BE_SET" }: - -lib.warnIf (openidPassword != "WILL_NEVER_BE_SET") "Using `crowdProperties` is deprecated!" -(stdenv.mkDerivation rec { - pname = "atlassian-crowd"; - version = "5.0.1"; - - src = fetchurl { - url = "https://www.atlassian.com/software/crowd/downloads/binary/${pname}-${version}.tar.gz"; - sha256 = "sha256-ccXSNuiXP0+b9WObboikqVd0nKH0Fi2gMVEF3+WAx5M="; - }; - - buildPhase = '' - mv apache-tomcat/conf/server.xml apache-tomcat/conf/server.xml.dist - ln -s /run/atlassian-crowd/server.xml apache-tomcat/conf/server.xml - - rm -rf apache-tomcat/{logs,work} - ln -s /run/atlassian-crowd/logs apache-tomcat/logs - ln -s /run/atlassian-crowd/work apache-tomcat/work - - ln -s /run/atlassian-crowd/database database - - substituteInPlace apache-tomcat/bin/startup.sh --replace start run - - echo "crowd.home=${home}" > crowd-webapp/WEB-INF/classes/crowd-init.properties - substituteInPlace build.properties \ - --replace "openidserver.url=http://localhost:8095/openidserver" \ - "openidserver.url=http://localhost:${toString port}/openidserver" - substituteInPlace crowd-openidserver-webapp/WEB-INF/classes/crowd.properties \ - --replace "http://localhost:8095/" \ - "http://localhost:${toString port}/" - sed -r -i crowd-openidserver-webapp/WEB-INF/classes/crowd.properties \ - -e 's,application.password\s+password,application.password ${openidPassword},' - '' + lib.optionalString (proxyUrl != null) '' - sed -i crowd-openidserver-webapp/WEB-INF/classes/crowd.properties \ - -e 's,http://localhost:${toString port}/openidserver,${proxyUrl}/openidserver,' - ''; - - installPhase = '' - cp -rva . $out - ''; - - meta = with lib; { - description = "Single sign-on and identity management tool"; - homepage = "https://www.atlassian.com/software/crowd"; - license = licenses.unfree; - maintainers = [ ]; - }; -}) diff --git a/pkgs/servers/atlassian/jira.nix b/pkgs/servers/atlassian/jira.nix deleted file mode 100644 index ea0f6579845b..000000000000 --- a/pkgs/servers/atlassian/jira.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ stdenv -, lib -, fetchurl -, gawk -, enableSSO ? false -, makeWrapper -}: - -stdenv.mkDerivation rec { - pname = "atlassian-jira"; - version = "9.17.1"; - - src = fetchurl { - url = "https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz"; - hash = "sha256-hSwPVYIN1/BG6d8UepopLEMExjwDg/w/Bwj9k27nmDQ="; - }; - - nativeBuildInputs = [ makeWrapper ]; - - buildPhase = '' - mv conf/server.xml conf/server.xml.dist - ln -sf /run/atlassian-jira/server.xml conf/server.xml - rm -r logs; ln -sf /run/atlassian-jira/logs/ . - rm -r work; ln -sf /run/atlassian-jira/work/ . - rm -r temp; ln -sf /run/atlassian-jira/temp/ . - substituteInPlace bin/check-java.sh \ - --replace "awk" "${gawk}/bin/gawk" - '' + lib.optionalString enableSSO '' - substituteInPlace atlassian-jira/WEB-INF/classes/seraph-config.xml \ - --replace com.atlassian.jira.security.login.JiraSeraphAuthenticator \ - com.atlassian.jira.security.login.SSOSeraphAuthenticator - ''; - - installPhase = '' - cp -rva . $out - ''; - - meta = with lib; { - description = "Proprietary issue tracking product, also providing project management functions"; - homepage = "https://www.atlassian.com/software/jira"; - license = licenses.unfree; - maintainers = with maintainers; [ ciil megheaiulian techknowlogick ]; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 00ae5e1dbca9..7db3127df523 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -115,6 +115,10 @@ mapAliases { aria = aria2; # Added 2024-03-26 armcord = throw "ArmCord was renamed to legcord by the upstream developers. Action is required to migrate configurations between the two applications. Please see this PR for more details: https://github.com/NixOS/nixpkgs/pull/347971"; # Added 2024-10-11 aseprite-unfree = aseprite; # Added 2023-08-26 + atlassian-bamboo = throw "Atlassian software has been removed, as support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements"; # Added 2024-11-02 + atlassian-confluence = throw "Atlassian software has been removed, as support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements"; # Added 2024-11-02 + atlassian-crowd = throw "Atlassian software has been removed, as support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements"; # Added 2024-11-02 + atlassian-jira = throw "Atlassian software has been removed, as support for the Atlassian Server products ended in February 2024 and there was insufficient interest in maintaining the Atlassian Data Center replacements"; # Added 2024-11-02 audaciousQt5 = throw "'audaciousQt5' has been removed, since audacious is built with Qt 6 now"; # Added 2024-07-06 auditBlasHook = throw "'auditBlasHook' has been removed since it never worked"; # Added 2024-04-02 aumix = throw "'aumix' has been removed due to lack of maintenance upstream. Consider using 'pamixer' for CLI or 'pavucontrol' for GUI"; # Added 2024-09-14 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2e47a9b6b669..a6992f6a702c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23969,11 +23969,6 @@ with pkgs; appdaemon = callPackage ../servers/home-assistant/appdaemon.nix { }; - atlassian-bamboo = callPackage ../servers/atlassian/bamboo.nix { }; - atlassian-confluence = callPackage ../servers/atlassian/confluence.nix { }; - atlassian-crowd = callPackage ../servers/atlassian/crowd.nix { }; - atlassian-jira = callPackage ../servers/atlassian/jira.nix { }; - cadvisor = callPackage ../servers/monitoring/cadvisor { }; cassandra_3_0 = callPackage ../servers/nosql/cassandra/3.0.nix {