about summary refs log tree commit diff
path: root/pkgs/by-name/oh
diff options
context:
space:
mode:
authorAnderson Torres <torres.anderson.85@protonmail.com>2023-11-23 16:48:09 -0300
committerAnderson Torres <torres.anderson.85@protonmail.com>2023-11-25 20:11:49 -0300
commitdbed3c605f8dd7c0272693df1a57532392c4ca36 (patch)
treefd586f889aad668132ce5406c650296bdc78e8dd /pkgs/by-name/oh
parenta95272e67f75b85e19b3796d99e56e9a435a2179 (diff)
oh-my-fish: migrate to by-name
Diffstat (limited to 'pkgs/by-name/oh')
-rw-r--r--pkgs/by-name/oh/oh-my-fish/omf-install6
-rw-r--r--pkgs/by-name/oh/oh-my-fish/package.nix62
2 files changed, 68 insertions, 0 deletions
diff --git a/pkgs/by-name/oh/oh-my-fish/omf-install b/pkgs/by-name/oh/oh-my-fish/omf-install
new file mode 100644
index 0000000000000..0b8be218e38a6
--- /dev/null
+++ b/pkgs/by-name/oh/oh-my-fish/omf-install
@@ -0,0 +1,6 @@
+#!@runtimeShell@
+
+@fish@/bin/fish \
+    @OMF@/share/oh-my-fish/bin/install \
+    --noninteractive \
+    --offline=@OMF@/share/oh-my-fish
diff --git a/pkgs/by-name/oh/oh-my-fish/package.nix b/pkgs/by-name/oh/oh-my-fish/package.nix
new file mode 100644
index 0000000000000..0801eb628347a
--- /dev/null
+++ b/pkgs/by-name/oh/oh-my-fish/package.nix
@@ -0,0 +1,62 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, fish
+, runtimeShell
+, substituteAll
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "oh-my-fish";
+  version = "unstable-2022-03-27";
+
+  src = fetchFromGitHub {
+    owner = "oh-my-fish";
+    repo = "oh-my-fish";
+    rev = "d428b723c8c18fef3b2a00b8b8b731177f483ad8";
+    hash = "sha256-msItKEPe7uSUpDAfCfdYZjt5NyfM3KtOrLUTO9NGqlg=";
+  };
+
+  buildInputs = [
+    fish
+  ];
+
+  strictDeps = true;
+
+  dontConfigure = true;
+  dontBuild = true;
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -pv $out/bin $out/share/oh-my-fish
+    cp -vr * $out/share/oh-my-fish
+
+    cp -v ${substituteAll {
+      name = "omf-install";
+      src = ./omf-install;
+      OMF = placeholder "out";
+      inherit fish runtimeShell;
+    }} $out/bin/omf-install
+
+    chmod +x $out/bin/omf-install
+    cat $out/bin/omf-install
+
+    runHook postInstall
+  '';
+
+  meta = {
+    homepage = "https://github.com/oh-my-fish/oh-my-fish";
+    description = "The Fish Shell Framework";
+    longDescription = ''
+      Oh My Fish provides core infrastructure to allow you to install packages
+      which extend or modify the look of your shell. It's fast, extensible and
+      easy to use.
+    '';
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ AndersonTorres ];
+    mainProgram = "omf-install";
+    inherit (fish.meta) platforms;
+  };
+})
+# TODO: customize the omf-install script