Unverified Commit f0b2d8da authored by Sander's avatar Sander
Browse files

devenv: add locale fixes for non-NixOS systems

parent 45111489
Loading
Loading
Loading
Loading
+30 −5
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@
  lib,
  stdenv,
  fetchFromGitHub,
  makeWrapper,
  makeBinaryWrapper,
  rustPlatform,
  testers,
  cachix,
@@ -11,6 +11,7 @@
  nixVersions,
  openssl,
  pkg-config,
  glibcLocalesUtf8,
  devenv, # required to run version test
}:

@@ -55,7 +56,7 @@ rustPlatform.buildRustPackage {
  '';

  nativeBuildInputs = [
    makeWrapper
    makeBinaryWrapper
    pkg-config
    sqlx-cli
  ];
@@ -66,8 +67,32 @@ rustPlatform.buildRustPackage {
      darwin.apple_sdk.frameworks.SystemConfiguration
    ];

  postInstall = ''
    wrapProgram $out/bin/devenv --set DEVENV_NIX ${devenv_nix} --prefix PATH ":" "$out/bin:${cachix}/bin"
  postInstall =
    let
      setDefaultLocaleArchive = lib.optionalString (glibcLocalesUtf8 != null) ''
        --set-default LOCALE_ARCHIVE ${glibcLocalesUtf8}/lib/locale/locale-archive
      '';
    in
    ''
      wrapProgram $out/bin/devenv \
        --prefix PATH ":" "$out/bin:${cachix}/bin" \
        --set DEVENV_NIX ${devenv_nix} \
        ${setDefaultLocaleArchive}

      # Generate manpages
      cargo xtask generate-manpages --out-dir man
      installManPage man/*

      # Generate shell completions
      compdir=./completions
      for shell in bash fish zsh; do
        cargo xtask generate-shell-completion $shell --out-dir $compdir
      done

      installShellCompletion --cmd devenv \
        --bash $compdir/devenv.bash \
        --fish $compdir/devenv.fish \
        --zsh $compdir/_devenv
    '';

  passthru.tests = {