diff options
-rw-r--r-- | nixos/doc/manual/release-notes/rl-2311.section.md | 3 | ||||
-rw-r--r-- | nixos/modules/services/web-apps/akkoma.nix | 6 | ||||
-rw-r--r-- | nixos/modules/services/web-apps/mobilizon.nix | 4 | ||||
-rw-r--r-- | pkgs/development/beam-modules/default.nix | 2 | ||||
-rw-r--r-- | pkgs/servers/akkoma/default.nix | 4 | ||||
-rw-r--r-- | pkgs/servers/mobilizon/default.nix | 2 | ||||
-rw-r--r-- | pkgs/servers/web-apps/plausible/default.nix | 1 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 27 |
8 files changed, 38 insertions, 11 deletions
diff --git a/nixos/doc/manual/release-notes/rl-2311.section.md b/nixos/doc/manual/release-notes/rl-2311.section.md index 11da28aac34ff..deb6ba46ec2ec 100644 --- a/nixos/doc/manual/release-notes/rl-2311.section.md +++ b/nixos/doc/manual/release-notes/rl-2311.section.md @@ -390,6 +390,9 @@ - `zfs` was updated from 2.1.x to 2.2.0, [enabling newer kernel support and adding new features](https://github.com/openzfs/zfs/releases/tag/zfs-2.2.0). +- Elixir now defaults to version + [v1.15](https://elixir-lang.org/blog/2023/06/19/elixir-v1-15-0-released/). + - A new option was added to the virtualisation module that enables specifying explicitly named network interfaces in QEMU VMs. The existing `virtualisation.vlans` is still supported for cases where the name of the network interface is irrelevant. - DocBook option documentation is no longer supported, all module documentation now uses markdown. diff --git a/nixos/modules/services/web-apps/akkoma.nix b/nixos/modules/services/web-apps/akkoma.nix index eaee70c712bb8..5f9bbbd663744 100644 --- a/nixos/modules/services/web-apps/akkoma.nix +++ b/nixos/modules/services/web-apps/akkoma.nix @@ -86,7 +86,7 @@ let # Erlang/Elixir uses a somewhat special format for IP addresses erlAddr = addr: fileContents (pkgs.runCommand addr { - nativeBuildInputs = with pkgs; [ elixir ]; + nativeBuildInputs = [ cfg.package.elixirPackage ]; code = '' case :inet.parse_address('${addr}') do {:ok, addr} -> IO.inspect addr @@ -96,7 +96,7 @@ let passAsFile = [ "code" ]; } ''elixir "$codePath" >"$out"''); - format = pkgs.formats.elixirConf { }; + format = pkgs.formats.elixirConf { elixir = cfg.package.elixirPackage; }; configFile = format.generate "config.exs" (replaceSec (attrsets.updateManyAttrsByPath [{ @@ -146,7 +146,7 @@ let initSecretsScript = writeShell { name = "akkoma-init-secrets"; - runtimeInputs = with pkgs; [ coreutils elixir ]; + runtimeInputs = with pkgs; [ coreutils cfg.package.elixirPackage ]; text = let key-base = web.secret_key_base; jwt-signer = ex.":joken".":default_signer"; diff --git a/nixos/modules/services/web-apps/mobilizon.nix b/nixos/modules/services/web-apps/mobilizon.nix index e9264a38f0e61..343c5cead2b15 100644 --- a/nixos/modules/services/web-apps/mobilizon.nix +++ b/nixos/modules/services/web-apps/mobilizon.nix @@ -8,7 +8,7 @@ let user = "mobilizon"; group = "mobilizon"; - settingsFormat = pkgs.formats.elixirConf { elixir = pkgs.elixir_1_14; }; + settingsFormat = pkgs.formats.elixirConf { elixir = cfg.package.elixirPackage; }; configFile = settingsFormat.generate "mobilizon-config.exs" cfg.settings; @@ -309,7 +309,7 @@ in genCookie = "IO.puts(Base.encode32(:crypto.strong_rand_bytes(32)))"; evalElixir = str: '' - ${pkgs.elixir_1_14}/bin/elixir --eval '${str}' + ${cfg.package.elixirPackage}/bin/elixir --eval '${str}' ''; in '' diff --git a/pkgs/development/beam-modules/default.nix b/pkgs/development/beam-modules/default.nix index 421d5f7ffbc05..b7b2cc9c7dcfe 100644 --- a/pkgs/development/beam-modules/default.nix +++ b/pkgs/development/beam-modules/default.nix @@ -43,7 +43,7 @@ let elvis-erlang = callPackage ./elvis-erlang { }; # BEAM-based languages. - elixir = elixir_1_14; + elixir = elixir_1_15; elixir_1_15 = lib'.callElixir ../interpreters/elixir/1.15.nix { inherit erlang; diff --git a/pkgs/servers/akkoma/default.nix b/pkgs/servers/akkoma/default.nix index 36fa26bd0181e..fca88e6a3cdba 100644 --- a/pkgs/servers/akkoma/default.nix +++ b/pkgs/servers/akkoma/default.nix @@ -172,6 +172,10 @@ beamPackages.mixRelease rec { passthru = { tests = with nixosTests; { inherit akkoma akkoma-confined; }; inherit mixNixDeps; + + # Used to make sure the service uses the same version of elixir as + # the package + elixirPackage = beamPackages.elixir; }; meta = with lib; { diff --git a/pkgs/servers/mobilizon/default.nix b/pkgs/servers/mobilizon/default.nix index 73ae391eadc23..a4dca53c0802d 100644 --- a/pkgs/servers/mobilizon/default.nix +++ b/pkgs/servers/mobilizon/default.nix @@ -8,6 +8,7 @@ , cmake , nixosTests , mobilizon-frontend +, ... }: let @@ -126,6 +127,7 @@ mixRelease rec { ${mix2nix}/bin/mix2nix $SRC/mix.lock > pkgs/servers/mobilizon/mix.nix cat $SRC/js/package.json > pkgs/servers/mobilizon/package.json ''; + elixirPackage = beamPackages.elixir; }; meta = with lib; { diff --git a/pkgs/servers/web-apps/plausible/default.nix b/pkgs/servers/web-apps/plausible/default.nix index 9255a92f280b6..e933877a53ab4 100644 --- a/pkgs/servers/web-apps/plausible/default.nix +++ b/pkgs/servers/web-apps/plausible/default.nix @@ -4,6 +4,7 @@ , fetchFromGitHub , nodejs , nixosTests +, ... }: let diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 758ea117d4ae8..5b1a53d779445 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -740,7 +740,9 @@ with pkgs; inherit (darwin) DarwinTools; }; - mix2nix = callPackage ../development/tools/mix2nix { }; + mix2nix = callPackage ../development/tools/mix2nix { + elixir = elixir_1_14; + }; n98-magerun = callPackage ../development/tools/misc/n98-magerun { }; @@ -1546,7 +1548,10 @@ with pkgs; adminer = callPackage ../servers/adminer { }; - akkoma = callPackage ../servers/akkoma { }; + akkoma = callPackage ../servers/akkoma { + elixir = elixir_1_14; + beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_14; }); + }; akkoma-frontends = recurseIntoAttrs { akkoma-fe = callPackage ../servers/akkoma/akkoma-fe { }; admin-fe = callPackage ../servers/akkoma/admin-fe { }; @@ -3995,6 +4000,7 @@ with pkgs; livebook = callPackage ../servers/web-apps/livebook { elixir = elixir_1_15; + beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_15; }); }; lsix = callPackage ../tools/graphics/lsix { }; @@ -4099,7 +4105,10 @@ with pkgs; play-with-mpv = callPackage ../tools/video/play-with-mpv { }; - plausible = callPackage ../servers/web-apps/plausible { }; + plausible = callPackage ../servers/web-apps/plausible { + elixir = elixir_1_14; + beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_14; }); + }; pam-reattach = callPackage ../os-specific/darwin/pam-reattach { }; @@ -6021,6 +6030,8 @@ with pkgs; moar = callPackage ../tools/misc/moar { }; mobilizon = callPackage ../servers/mobilizon { + elixir = elixir_1_14; + beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_14; }); mobilizon-frontend = callPackage ../servers/mobilizon/frontend.nix { }; }; @@ -12146,7 +12157,10 @@ with pkgs; tautulli = python3Packages.callPackage ../servers/tautulli { }; - pleroma = callPackage ../servers/pleroma { }; + pleroma = callPackage ../servers/pleroma { + elixir = elixir_1_14; + beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_14; }); + }; plfit = callPackage ../tools/misc/plfit { python = null; @@ -35358,7 +35372,10 @@ with pkgs; wavebox = libsForQt5.callPackage ../applications/networking/instant-messengers/wavebox { }; - sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { }; + sonic-pi = libsForQt5.callPackage ../applications/audio/sonic-pi { + elixir = elixir_1_14; + beamPackages = beamPackages.extend (self: super: { elixir = elixir_1_14; }); + }; stag = callPackage ../applications/misc/stag { curses = ncurses; |