Commit 20c7d8a

HPCesia <me@hpcesia.com>
2026-09-11 07:52:05
flyline: init
1 parent 4cb8529
Changed files (3)
pkgs/flyline/default.nix
@@ -0,0 +1,38 @@
+# Adapted from upstream nix/package.nix: builtins.fetchGit is forbidden by the
+# restrict-eval CI check, hence cargoHash; the binary is GPL-3.0-only, hence gpl3Only.
+{
+  lib,
+  rustPlatform,
+  fetchFromGitHub,
+  stdenv,
+  nix-update-script,
+}:
+rustPlatform.buildRustPackage (finalAttrs: {
+  pname = "flyline";
+  version = "1.8.0";
+
+  src = fetchFromGitHub {
+    owner = "HalFrgrd";
+    repo = "flyline";
+    tag = "v${finalAttrs.version}";
+    hash = "sha256-gmkp9gxI5xcU0n2rCc1TBh7C+cWi0GwIUyP7C+xKuA4=";
+  };
+
+  cargoHash = "sha256-pf8JMBQxUoLjo7mpqFYa/yJpZc2ZJOZqMx0oMEKB7wA=";
+  doCheck = false;
+
+  # macOS-only: fix Mach-O reproducibility leaks and re-add -undefined
+  # dynamic_lookup, which exporting RUSTFLAGS would otherwise drop.
+  preConfigure = lib.optionalString stdenv.hostPlatform.isDarwin ''
+    export RUSTFLAGS="--remap-path-prefix=$NIX_BUILD_TOP=/build -C link-arg=-undefined -C link-arg=dynamic_lookup -C link-arg=-Wl,-install_name,@rpath/libflyline.dylib -C link-arg=-Wl,-reproducible''${RUSTFLAGS:+ $RUSTFLAGS}"
+  '';
+
+  passthru.updateScript = nix-update-script {};
+
+  meta = {
+    description = "Bash plugin to replace readline for a modern line editing experience";
+    homepage = "https://github.com/HalFrgrd/flyline";
+    license = lib.licenses.gpl3Only;
+    platforms = lib.platforms.unix;
+  };
+})
default.nix
@@ -25,6 +25,8 @@ in rec {
 
   elio = callPackage ./pkgs/elio {};
 
+  flyline = callPackage ./pkgs/flyline {};
+
   gitmal = callPackage ./pkgs/gitmal {};
 
   harmonoid = callPackage ./pkgs/harmonoid {};
README.md
@@ -10,6 +10,7 @@
 | Path | Name | Version | License | Description |
 | --- | --- | --- | --- | --- |
 | `elio` | [elio](https://github.com/elio-fm/elio) | `1.12.0` | [MIT](https://spdx.org/licenses/MIT.html) | Snappy, batteries-included terminal file manager with rich previews, inline images, bulk actions, and trash support |
+| `flyline` | [flyline](https://github.com/HalFrgrd/flyline) | `1.8.0` | [GPL-3.0-only](https://spdx.org/licenses/GPL-3.0-only.html) | Bash plugin to replace readline for a modern line editing experience |
 | `gitmal` | [gitmal](https://github.com/antonmedv/gitmal) | `1.0.2` | [MIT](https://spdx.org/licenses/MIT.html) |  A static page generator for repos |
 | `harmonoid` | [harmonoid](https://harmonoid.com/) | `0.3.32` | **Unfree** | Plays & manages your music library. Looks beautiful & juicy. |
 | `kelivo` | [kelivo](https://github.com/Chevey339/kelivo) | `1.2.6` | [AGPL-3.0-only](https://spdx.org/licenses/AGPL-3.0-only.html) | LLM chat client |