From a21e759ac7a6b72a3d02814c2bfb26bc4f49204c Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Thu, 7 Jul 2022 14:33:54 +0300 Subject: Rework guix.scm to use latest commit Rather than specifying a specific commit in the development guix.scm this commit has the system automatically get the latest commit and use that for building the package object. --- guix.scm | 84 +++++++++++++++++++++++++++++++++++++--------------------------- 1 file changed, 49 insertions(+), 35 deletions(-) (limited to 'guix.scm') diff --git a/guix.scm b/guix.scm index 0c78fc1..2db6063 100644 --- a/guix.scm +++ b/guix.scm @@ -1,4 +1,9 @@ -(use-modules (guix packages) +(use-modules (git oid) + (guix gexp) + (git bindings) + (git reference) + (git repository) + (guix packages) (guix git-download) (gnu packages check) (gnu packages databases) @@ -8,38 +13,47 @@ (gnu packages python-check) ((guix licenses) #:prefix license:)) -(let ((commit "4808ae57ac83ef00e679c94fe6844c72f18735b9") - (revision "2")) - (package - (name "genenetwork-qc") - (version (git-version "0.0.1" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://git.genenetwork.org/fredmanglis/gnqc_py.git") - (commit commit))) - (sha256 - (base32 - "14lbdbkqa5aiwldafirgqsfcydbqqbhz30vrf80afxj9sqxcscd9")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "pytest"))))))) - (inputs - (list python-mypy - python-pylint - python-pytest - python-hypothesis)) - (propagated-inputs - (list redis)) - (synopsis "GeneNetwork Quality Control Application") - (description - "GeneNetwork qc is a quality control application for the data files that +(define %source-dir (dirname (current-filename))) + +(libgit2-init!) +(define gnqc-py + (let ((commit (oid->string + (reference-target + (repository-head (repository-open %source-dir))))) + (revision "3")) + (package + (name "genenetwork-qc") + (version (git-version "0.0.1" revision commit)) + (source (local-file %source-dir + "gnqc_py-checkout" + #:recursive? #t + #:select? (git-predicate %source-dir))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest"))))))) + (inputs + (list python-mypy + python-pylint + python-pytest + python-hypothesis)) + (propagated-inputs + (list redis + python-redis + python-flask + python-jsonpickle + python-mysqlclient)) + (synopsis "GeneNetwork Quality Control Application") + (description + "GeneNetwork qc is a quality control application for the data files that eventually are used to add to the data in the GeneNetwork project.") - (home-page "https://git.genenetwork.org/fredmanglis/gnqc_py") - (license license:agpl3+))) + (home-page "https://git.genenetwork.org/fredmanglis/gnqc_py") + (license license:agpl3+)))) + +(libgit2-shutdown!) + +gnqc-py -- cgit v1.2.3