diff --git a/snamellit/packages/atuin-bin.scm b/snamellit/packages/atuin-bin.scm new file mode 100644 index 0000000..d368ac9 --- /dev/null +++ b/snamellit/packages/atuin-bin.scm @@ -0,0 +1,56 @@ +(define-module (snamellit packages atuin-bin) + #:use-module (ice-9 string-fun) + #:use-module (gnu packages base) + #:use-module (gnu packages curl) + #:use-module (gnu packages version-control) + #:use-module (gnu packages xorg) + #:use-module (gnu packages tls) + #:use-module (gnu packages compression) + #:use-module (gnu packages gcc) + #:use-module (guix download) + #:use-module (guix packages) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (nonguix build-system binary)) + +(define libstdc++ + ;; Libstdc++ matching the default GCC. + (make-libstdc++ gcc)) + +(define-public atuin-bin + (package + (name "atuin-bin") + (version "18.3.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/atuinsh/atuin/releases/download/v" version + "/atuin-x86_64-unknown-linux-gnu.tar.gz")) + (sha256 + (base32 + "14hp673i8in9adahg01bldlwyip7kg5vdnqi5jczinv8ibxnswg3")))) + (build-system binary-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'binary-unpack) + (replace 'unpack + (lambda* (#:key inputs #:allow-other-keys) + (invoke "tar" "xvzf" (assoc-ref inputs "source") + "--strip-components" "1")))) + #:install-plan + `(("atuin" "/bin/")) + #:patchelf-plan + `(("atuin" ("glibc" "libgccjit" "libstdc++"))))) + (inputs + `(("curl" ,curl) + ("libgccjit" ,libgccjit) + ("libstdc++" ,libstdc++) + ("glibc" ,glibc) + ("zlib" ,zlib))) + (synopsis "Sync, search and backup shell history") + (description "Atuin replaces your existing shell history with a SQLite database, and records additional context for your commands. Additionally, it provides optional and fully encrypted synchronisation of your history between machines, via an Atuin server.") + (home-page "https://atuin.sh/") + (license license:expat))) + +atuin-bin