From ed52b1f5d469fa6d113845fe7fa90d1f5dcc05e9 Mon Sep 17 00:00:00 2001 From: Peter Tillemans Date: Thu, 6 Jun 2024 21:10:44 +0200 Subject: [PATCH] remove babashka --- snamellit/tools.scm | 107 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 snamellit/tools.scm diff --git a/snamellit/tools.scm b/snamellit/tools.scm new file mode 100644 index 0000000..ee3e09e --- /dev/null +++ b/snamellit/tools.scm @@ -0,0 +1,107 @@ +(define-module (snamellit tools) + #:use-module (gnu packages base) + #:use-module (gnu packages compression) + #:use-module (gnu packages gcc) + #:use-module (gnu packages java) + #:use-module (guix build-system copy) + #:use-module (guix download) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (nonguix build-system binary)) + + + +(define-public butler + (package + (name "butler") + (version "15.21.0") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append + "https://broth.itch.ovh/butler/linux-amd64/" version "/archive/default")) + (sha256 + (base32 + "071frbwjclb0g9gkfh2lxcbkk4c57jhppr8f3dhcgbswvvmgqh5n")))) + (build-system binary-build-system) + (arguments + (list #:install-plan #~'(("butler" "bin/") ("7z.so" "lib") ("libc7zip.so" "lib")) + #:patchelf-plan #~'(("butler")) + #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'chmod + (lambda _ + (chmod "butler" #o755)))))) + (inputs (list glibc)) + (supported-systems '("x86_64-linux")) + (home-page "https://github.com/itchio/butler") + (synopsis "Itch.io command line tools") + (description "A command line interface to Itch.io which enables automated game project uploads.") + (license license:expat))) + +(define-public gradle + (package + (name "gradle") + (version "8.4") + (source (origin + (method url-fetch) + (uri (string-append "https://downloads.gradle.org/distributions/gradle-" version "-bin.zip")) + (sha256 + (base32 "1bkjxw7i0lm17pdyyvka4xpl6z0cdj0izagphync6839i2pg66iy")))) + (build-system copy-build-system) + (inputs (list `(,openjdk20 "jdk"))) + (native-inputs (list unzip)) + (synopsis "My Gradle, a java build system") + (description + "Gradle is the other build system and package manager for java programs") + (home-page "https://maven.apache.org/") + (license license:asl2.0))) + + +(define-public terraform + (package + (name "snam-terraform") + (version "1.8.4") + (source (origin + (method url-fetch) + (uri (string-append "https://releases.hashicorp.com/terraform/" version "/terraform_" version "_linux_amd64.zip")) + (sha256 + (base32 + "1i181cmzwlrx8d40z1spilcwgnhkzwalrg8822d23sqdmrs7a5hj")))) + (build-system binary-build-system) + (supported-systems '("x86_64-linux")) + (arguments '( + #:install-plan + `(("." ("terraform") "bin/")) + #:phases + (modify-phases %standard-phases + ;; this is required because standard unpack expects + ;; the archive to contain a directory with everything inside it, + ;; while babashka's release .tar.gz only contains the `bb` binary. + (replace 'unpack + (lambda* (#:key inputs #:allow-other-keys) + (system* (which "unzip") + (assoc-ref inputs "source")) + #t))))) + (inputs + `(("libstdc++" ,(make-libstdc++ gcc)) + ("zlib" ,zlib))) + (native-inputs + `(("unzip" ,unzip))) + (synopsis "A tool to describe and deploy infrastructure as code") + (description + "Terraform allows you to describe your complete infrastructure in the form of code. Even if your servers come from different providers such as AWS or Azure, Terraform helps you build and manage these resources in parallel across providers.") + (home-page "https://hashicorp.com/terraform") + (license #f))) + +(define-public snam-terraform-1.6 + (package + (inherit terraform) + (version "1.6.6") + (source (origin + (method url-fetch) + (uri (string-append "https://releases.hashicorp.com/terraform/" version "/terraform_" version "_linux_amd64.zip")) + (sha256 + (base32 + "002g0ypkkfqy5nf989jyk3m1l7l0455hsaq11xfhr5lbv4zqh5yi")))))) + +snam-terraform-1.6