fish-foreign-env: move to fishPlugins.foreign-env

And relocate the installed fish functions to the `vendor_functions.d` so
that they're automatically loaded.
This commit is contained in:
pacien 2020-12-29 09:44:18 +01:00
parent 59c1b6d0e7
commit d94921db12
7 changed files with 23 additions and 16 deletions

View file

@ -309,6 +309,14 @@
Based on <xref linkend="opt-system.stateVersion" />, existing installations will continue to work.
</para>
</listitem>
<listitem>
<para>
<package>fish-foreign-env</package> is now an alias for the
<package>fishPlugins.foreign-env</package> package, in which the fish
functions have been relocated to the
<literal>vendor_functions.d</literal> directory to be loaded automatically.
</para>
</listitem>
<listitem>
<para>
The prometheus json exporter is now managed by the prometheus community. Together with additional features

View file

@ -112,7 +112,7 @@ in
environment.etc."fish/nixos-env-preinit.fish".text = ''
# This happens before $__fish_datadir/config.fish sets fish_function_path, so it is currently
# unset. We set it and then completely erase it, leaving its configuration to $__fish_datadir/config.fish
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $__fish_datadir/functions
set fish_function_path ${pkgs.fishPlugins.foreign-env}/share/fish/vendor_functions.d $__fish_datadir/functions
# source the NixOS environment config
if [ -z "$__NIXOS_SET_ENVIRONMENT_DONE" ]
@ -128,7 +128,7 @@ in
# if we haven't sourced the general config, do it
if not set -q __fish_nixos_general_config_sourced
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
set --prepend fish_function_path ${pkgs.fishPlugins.foreign-env}/share/fish/vendor_functions.d
fenv source /etc/fish/foreign-env/shellInit > /dev/null
set -e fish_function_path[1]
@ -142,7 +142,7 @@ in
# if we haven't sourced the login config, do it
status --is-login; and not set -q __fish_nixos_login_config_sourced
and begin
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
set --prepend fish_function_path ${pkgs.fishPlugins.foreign-env}/share/fish/vendor_functions.d
fenv source /etc/fish/foreign-env/loginShellInit > /dev/null
set -e fish_function_path[1]
@ -158,7 +158,7 @@ in
and begin
${fishAliases}
set fish_function_path ${pkgs.fish-foreign-env}/share/fish-foreign-env/functions $fish_function_path
set --prepend fish_function_path ${pkgs.fishPlugins.foreign-env}/share/fish/vendor_functions.d
fenv source /etc/fish/foreign-env/interactiveShellInit > /dev/null
set -e fish_function_path[1]

View file

@ -6,6 +6,8 @@ lib.makeScope newScope (self: with self; {
fishtape = callPackage ./fishtape.nix { };
foreign-env = callPackage ./foreign-env { };
pure = callPackage ./pure.nix { };
})

View file

@ -1,7 +1,7 @@
{ stdenv, fetchFromGitHub, gnused, bash, coreutils }:
{ lib, buildFishPlugin, fetchFromGitHub, gnused, bash, coreutils }:
stdenv.mkDerivation {
pname = "fish-foreign-env";
buildFishPlugin {
pname = "foreign-env";
version = "git-20200209";
src = fetchFromGitHub {
@ -11,18 +11,16 @@ stdenv.mkDerivation {
sha256 = "00xqlyl3lffc5l0viin1nyp819wf81fncqyz87jx8ljjdhilmgbs";
};
installPhase = ''
mkdir -p $out/share/fish-foreign-env/functions/
cp functions/* $out/share/fish-foreign-env/functions/
patches = [ ./suppress-harmless-warnings.patch ];
preInstall = ''
sed -e "s|sed|${gnused}/bin/sed|" \
-e "s|bash|${bash}/bin/bash|" \
-e "s|\| tr|\| ${coreutils}/bin/tr|" \
-i $out/share/fish-foreign-env/functions/*
-i functions/*
'';
patches = [ ./suppress-harmless-warnings.patch ];
meta = with stdenv.lib; {
meta = with lib; {
description = "A foreign environment interface for Fish shell";
license = licenses.mit;
maintainers = with maintainers; [ jgillich ];

View file

@ -158,6 +158,7 @@ mapAliases ({
firefoxWrapper = firefox; # 2015-09
firestr = throw "firestr has been removed."; # added 2019-12-08
fish-foreign-env = fishPlugins.foreign-env; # added 2020-12-29
flameGraph = flamegraph; # added 2018-04-25
flvtool2 = throw "flvtool2 has been removed."; # added 2020-11-03
foldingathome = fahclient; # added 2020-09-03

View file

@ -8841,8 +8841,6 @@ in
fishPlugins = recurseIntoAttrs (callPackage ../shells/fish/plugins { });
fish-foreign-env = callPackage ../shells/fish/fish-foreign-env { };
ion = callPackage ../shells/ion {
inherit (darwin) Security;
};