Merge branch 'master' into staging
This commit is contained in:
		
						commit
						d614f0bba9
					
				
					 29 changed files with 2539 additions and 423 deletions
				
			
		|  | @ -717,7 +717,7 @@ to be passed to the @code{udev} service.") | |||
| (define-public git-repo | ||||
|   (package | ||||
|     (name "git-repo") | ||||
|     (version "2.3") | ||||
|     (version "2.4.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -726,7 +726,7 @@ to be passed to the @code{udev} service.") | |||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (string-append "git-repo-" version "-checkout")) | ||||
|        (sha256 | ||||
|         (base32 "0jrll0mjfwakyjvlhbxwsdi32jhgss9mwz8c8h24n1qbqqxysrk4")))) | ||||
|         (base32 "0khg1731927gvin73dcbw1657kbfq4k7agla5rpzqcnwkk5agzg3")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  | @ -735,47 +735,48 @@ to be passed to the @code{udev} service.") | |||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (git (assoc-ref inputs "git")) | ||||
|                     (gpg (assoc-ref inputs "gnupg")) | ||||
|                     (ssh (assoc-ref inputs "ssh"))) | ||||
|                (substitute* '("repo" "git_command.py") | ||||
|                  (("^GIT = 'git'") | ||||
|                   (string-append "GIT = '" git "/bin/git'"))) | ||||
|                (substitute* "repo" | ||||
|                  ((" cmd = \\['gpg',") | ||||
|                   (string-append " cmd = ['" gpg "/bin/gpg',"))) | ||||
|                (substitute* "git_config.py" | ||||
|                  ((" command_base = \\['ssh',") | ||||
|                   (string-append " command_base = ['" ssh "/bin/ssh',"))) | ||||
|                #t))) | ||||
|          (add-before 'build 'do-not-clone-this-source | ||||
|          (add-before 'build 'do-not-self-update | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (repo-dir (string-append out "/share/" ,name))) | ||||
|                (substitute* "repo" | ||||
|                  (("^def _FindRepo\\(\\):.*") | ||||
|                   (format #f " | ||||
| def _FindRepo(): | ||||
|   '''Look for a repo installation, starting at the current directory.''' | ||||
|   # Use the installed version of git-repo. | ||||
|   repo_main = '~a/main.py' | ||||
|   curdir = os.getcwd() | ||||
|   olddir = None | ||||
|   while curdir != '/' and curdir != olddir: | ||||
|     dot_repo = os.path.join(curdir, repodir) | ||||
|     if os.path.isdir(dot_repo): | ||||
|       return (repo_main, dot_repo) | ||||
|     else: | ||||
|       olddir = curdir | ||||
|       curdir = os.path.dirname(curdir) | ||||
|   return None, '' | ||||
|              ;; Setting the REPO_MAIN variable to an absolute file name is | ||||
|              ;; enough to have _FindRepo return the store main.py file.  The | ||||
|              ;; self update mechanism is activated with the call to _Init() in | ||||
|              ;; main(), so we bypass it. | ||||
| 
 | ||||
|   # The remaining of this function is dead code.  It was used to | ||||
|   # find a git-checked-out version in the local project.\n" repo-dir)) | ||||
|                  ;; Neither clone, check out, nor verify the git repository | ||||
|                  (("(^\\s+)_Clone\\(.*\\)") "") | ||||
|                  (("(^\\s+)_Checkout\\(.*\\)") "") | ||||
|                  ((" rev = _Verify\\(.*\\)") " rev = None")) | ||||
|                #t))) | ||||
|              ;; Ticket requesting upstream to provide a mean to disable the | ||||
|              ;; self update mechanism: | ||||
|              ;; https://bugs.chromium.org/p/gerrit/issues/detail?id=12407. | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (repo-main (string-append out "/share/git-repo/main.py"))) | ||||
|                (substitute* "repo" | ||||
|                  (("^REPO_MAIN = .*") | ||||
|                   (format #f "REPO_MAIN = ~s~%" repo-main)) | ||||
|                  ((" _Init\\(args, gitc_init=\\(cmd ==.*" all) | ||||
|                   (string-append "True #" all))) | ||||
|                ;; Prevent repo from trying to git describe its version from | ||||
|                ;; the (disabled) self updated copy. | ||||
|                (substitute* "git_command.py" | ||||
|                  (("ver = getattr\\(RepoSourceVersion.*") | ||||
|                   (format #f "ver = ~s~%" ,version))) | ||||
|                (substitute* "subcmds/version.py" | ||||
|                  (("rp_ver = .*") | ||||
|                   (format #f "rp_ver = ~s~%" ,version))) | ||||
|                ;; Prevent repo from adding its (disabled) self update copy to | ||||
|                ;; the list of projects to fetch when using 'repo sync'. | ||||
|                (substitute* "subcmds/sync.py" | ||||
|                  (("to_fetch\\.extend\\(all_projects\\).*" all) | ||||
|                   (string-append "#" all)) | ||||
|                  (("self\\._Fetch\\(to_fetch") | ||||
|                   "self._Fetch(all_projects") | ||||
|                  (("_PostRepoFetch\\(rp, opt\\.repo_verify).*" all) | ||||
|                   (string-append "#" all)))))) | ||||
|          (delete 'build) ; nothing to build | ||||
|          (add-before 'check 'configure-git | ||||
|            (lambda _ | ||||
|  | @ -800,7 +801,6 @@ def _FindRepo(): | |||
|     (inputs | ||||
|      ;; TODO: Add git-remote-persistent-https once it is available in guix | ||||
|      `(("git" ,git) | ||||
|        ("gnupg" ,gnupg) | ||||
|        ("ssh" ,openssh))) | ||||
|     (native-inputs | ||||
|      `(("pytest" ,python-pytest))) | ||||
|  |  | |||
|  | @ -35,8 +35,9 @@ | |||
|   "Return a list of Emacs 'autoloads' files in DIRECTORY. | ||||
| The files in the list do not have extensions (.el, .elc)." | ||||
|   ;; `directory-files' doesn't honor group in regexp. | ||||
|   (mapcar #'file-name-sans-extension | ||||
|           (directory-files directory 'full-name guix-emacs-autoloads-regexp))) | ||||
|   (delete-dups (mapcar #'file-name-sans-extension | ||||
|                        (directory-files directory 'full-name | ||||
|                                         guix-emacs-autoloads-regexp)))) | ||||
| 
 | ||||
| ;;;###autoload | ||||
| (defun guix-emacs-autoload-packages () | ||||
|  |  | |||
|  | @ -410,7 +410,7 @@ computational cluster.") | |||
| (define-public bedtools | ||||
|   (package | ||||
|     (name "bedtools") | ||||
|     (version "2.27.1") | ||||
|     (version "2.29.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/arq5x/bedtools2/releases/" | ||||
|  | @ -418,7 +418,7 @@ computational cluster.") | |||
|                                   "bedtools-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1ndg5yknrxl4djx8ddzgk12rrbiidfpmkkg5z3f95jzryfxarhn8")))) | ||||
|                 "0m3hk6548846w83a9s5drsczvy67n2azx41kj71n03klb2gbzwg3")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:test-target "test" | ||||
|  | @ -427,7 +427,8 @@ computational cluster.") | |||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'configure)))) | ||||
|     (native-inputs `(("python" ,python-2))) | ||||
|     (native-inputs | ||||
|      `(("python" ,python-wrapper))) | ||||
|     (inputs | ||||
|      `(("samtools" ,samtools) | ||||
|        ("zlib" ,zlib))) | ||||
|  | @ -440,7 +441,7 @@ genome arithmetic: that is, set theory on the genome.  For example, bedtools | |||
| allows one to intersect, merge, count, complement, and shuffle genomic | ||||
| intervals from multiple files in widely-used genomic file formats such as BAM, | ||||
| BED, GFF/GTF, VCF.") | ||||
|     (license license:gpl2))) | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| ;; Later releases of bedtools produce files with more columns than | ||||
| ;; what Ribotaper expects. | ||||
|  | @ -5306,7 +5307,7 @@ BAM and Wiggle files in both transcript-coordinate and genomic-coordinate.") | |||
| (define-public rseqc | ||||
|   (package | ||||
|     (name "rseqc") | ||||
|     (version "2.6.1") | ||||
|     (version "3.0.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -5314,28 +5315,18 @@ BAM and Wiggle files in both transcript-coordinate and genomic-coordinate.") | |||
|         (string-append "mirror://sourceforge/rseqc/" | ||||
|                        "RSeQC-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 "15ly0254yi032qzkdplg00q144qfdsd986gh62829rl5bkxhj330")) | ||||
|        (modules '((guix build utils))) | ||||
|        (snippet | ||||
|         '(begin | ||||
|            ;; remove bundled copy of pysam | ||||
|            (delete-file-recursively "lib/pysam") | ||||
|            (substitute* "setup.py" | ||||
|              ;; remove dependency on outdated "distribute" module | ||||
|              (("^from distribute_setup import use_setuptools") "") | ||||
|              (("^use_setuptools\\(\\)") "") | ||||
|              ;; do not use bundled copy of pysam | ||||
|              (("^have_pysam = False") "have_pysam = True")) | ||||
|            #t)))) | ||||
|         (base32 | ||||
|          "0gbb9iyb7swiv5455fm5rg98r7l6qn27v564yllqjd574hncpx6m")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments `(#:python ,python-2)) | ||||
|     (inputs | ||||
|      `(("python-cython" ,python2-cython) | ||||
|        ("python-pysam" ,python2-pysam) | ||||
|        ("python-numpy" ,python2-numpy) | ||||
|      `(("python-cython" ,python-cython) | ||||
|        ("python-bx-python" ,python-bx-python) | ||||
|        ("python-pybigwig" ,python-pybigwig) | ||||
|        ("python-pysam" ,python-pysam) | ||||
|        ("python-numpy" ,python-numpy) | ||||
|        ("zlib" ,zlib))) | ||||
|     (native-inputs | ||||
|      `(("python-nose" ,python2-nose))) | ||||
|      `(("python-nose" ,python-nose))) | ||||
|     (home-page "http://rseqc.sourceforge.net/") | ||||
|     (synopsis "RNA-seq quality control package") | ||||
|     (description | ||||
|  | @ -6581,7 +6572,7 @@ profiles, and associated taxonomic information.") | |||
| (define-public vcftools | ||||
|   (package | ||||
|     (name "vcftools") | ||||
|     (version "0.1.15") | ||||
|     (version "0.1.16") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -6589,7 +6580,7 @@ profiles, and associated taxonomic information.") | |||
|                     version "/vcftools-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1qw30c45wihgy632rbz4rh3njnwj4msj46l1rsgdhyg6bgypmr1i")))) | ||||
|                 "1qqlx7flfv7axrjwkaz6njkscsl1d0jw98ns8d8bh1n1hd1pgz6v")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; no "check" target | ||||
|  | @ -6617,17 +6608,18 @@ data in the form of VCF files.") | |||
| (define-public infernal | ||||
|   (package | ||||
|     (name "infernal") | ||||
|     (version "1.1.2") | ||||
|     (version "1.1.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "http://eddylab.org/software/infernal/" | ||||
|                                   "infernal-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0sr2hiz3qxfwqpz3whxr6n82p3x27336v3f34iqznp10hks2935c")))) | ||||
|                 "0pm8bm3s6nfa0av4x6m6h27lsg12b3lz3jm0fyh1mc77l2isd61v")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("perl" ,perl))) ; for tests | ||||
|      `(("perl" ,perl) | ||||
|        ("python" ,python))) ; for tests | ||||
|     (home-page "http://eddylab.org/infernal/") | ||||
|     (synopsis "Inference of RNA alignments") | ||||
|     (description "Infernal (\"INFERence of RNA ALignment\") is a tool for | ||||
|  | @ -6638,7 +6630,7 @@ profile, but it scores a combination of sequence consensus and RNA secondary | |||
| structure consensus, so in many cases, it is more capable of identifying RNA | ||||
| homologs that conserve their secondary structure more than their primary | ||||
| sequence.") | ||||
|     ;; Infernal 1.1.2 requires VMX or SSE capability for parallel instructions. | ||||
|     ;; Infernal 1.1.3 requires VMX or SSE capability for parallel instructions. | ||||
|     (supported-systems '("i686-linux" "x86_64-linux")) | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
|  |  | |||
|  | @ -670,7 +670,20 @@ it fits within common partitioning schemes.") | |||
|   (make-u-boot-sunxi64-package "pine64-lts" "aarch64-linux-gnu")) | ||||
| 
 | ||||
| (define-public u-boot-pinebook | ||||
|   (make-u-boot-sunxi64-package "pinebook" "aarch64-linux-gnu")) | ||||
|   (let ((base (make-u-boot-sunxi64-package "pinebook" "aarch64-linux-gnu"))) | ||||
|     (package | ||||
|       (inherit base) | ||||
|       (arguments | ||||
|        (substitute-keyword-arguments (package-arguments base) | ||||
|          ((#:phases phases) | ||||
|           `(modify-phases ,phases | ||||
|              (add-after 'unpack 'patch-pinebook-config | ||||
|                ;; Fix regression with LCD video output introduced in 2020.01 | ||||
|                ;; https://patchwork.ozlabs.org/patch/1225130/ | ||||
|                (lambda _ | ||||
|                  (substitute* "configs/pinebook_defconfig" | ||||
|                    (("CONFIG_VIDEO_BRIDGE_ANALOGIX_ANX6345=y") "CONFIG_VIDEO_BRIDGE_ANALOGIX_ANX6345=y\nCONFIG_VIDEO_BPP32=y")) | ||||
|                  #t))))))))) | ||||
| 
 | ||||
| (define-public u-boot-bananapi-m2-ultra | ||||
|   (make-u-boot-package "Bananapi_M2_Ultra" "arm-linux-gnueabihf")) | ||||
|  |  | |||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							|  | @ -8,7 +8,7 @@ | |||
| ;;; Copyright © 2016, 2017, 2018, 2019 Chris Marusich <cmmarusich@gmail.com> | ||||
| ;;; Copyright © 2015, 2016, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org> | ||||
| ;;; Copyright © 2016 Adriano Peluso <catonano@gmail.com> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016 David Thompson <davet@gnu.org> | ||||
| ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com> | ||||
| ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org> | ||||
|  | @ -16,7 +16,7 @@ | |||
| ;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> | ||||
| ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net> | ||||
| ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net> | ||||
| ;;; Copyright © 2017, 2018, 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com> | ||||
| ;;; Copyright © 2017, 2018, 2019 Clément Lassieur <clement@lassieur.org> | ||||
|  | @ -155,6 +155,7 @@ | |||
|   #:use-module (gnu packages video) | ||||
|   #:use-module (gnu packages haskell-xyz) | ||||
|   #:use-module (gnu packages wordnet) | ||||
|   #:use-module (gnu packages photo) | ||||
|   #:use-module (guix utils) | ||||
|   #:use-module (srfi srfi-1) | ||||
|   #:use-module (ice-9 match)) | ||||
|  | @ -3434,9 +3435,7 @@ for Flow files.") | |||
|                    (out (assoc-ref outputs "out")) | ||||
|                    (version ,(version-major+minor (package-version python)))) | ||||
|                (with-directory-excursion | ||||
|                    (string-append out | ||||
|                                   "/share/emacs/site-lisp/guix.d/" | ||||
|                                   "flycheck-grammalecte-" ,version) | ||||
|                  (string-append out "/share/emacs/site-lisp") | ||||
|                  (symlink (string-append grammalecte "/lib/" | ||||
|                                          "python" version "/site-packages/" | ||||
|                                          "grammalecte") | ||||
|  | @ -4711,6 +4710,47 @@ number.") | |||
| @code{org-mode} to be rendered as UTF-8 characters.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-org-superstar | ||||
|   (package | ||||
|     (name "emacs-org-superstar") | ||||
|     (version "1.0.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/integral-dw/org-superstar-mode.git") | ||||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "0q6180qwjpha10zsiw0ni6lanyjwlj8141a6qivfcs8nwczz7nvz")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-org" ,emacs-org))) | ||||
|     (home-page "https://github.com/integral-dw/org-superstar-mode") | ||||
|     (synopsis "Prettify headings and plain lists in Org mode") | ||||
|     (description "This package prettifies headings and plain lists in | ||||
| Org mode.  It is a direct descendant of @code{org-bullets}, with most | ||||
| of the code base completely rewritten. | ||||
| 
 | ||||
| Currently, this package prettifies Org heading lines by: | ||||
| @itemize | ||||
| @item replacing trailing bullets by UTF-8 bullets, | ||||
| @item hiding leading stars, customizing their look or removing them from vision, | ||||
| @item applying a custom face to the header bullet, | ||||
| @item applying a custom face to the leading bullets, | ||||
| @item using double-bullets for inline tasks, | ||||
| @item (optional) using special bullets for TODO keywords. | ||||
| @end itemize | ||||
| 
 | ||||
| It also prettifies Org plain list bullets by: | ||||
| @itemize | ||||
| @item replacing each bullet type (*, + and -) with UTF-8 bullets, | ||||
| @item applying a custom face to item bullets. | ||||
| @end itemize | ||||
| 
 | ||||
| Features degrade gracefully when viewed from terminal.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-org-pomodoro | ||||
|   ;; Last release version was from 2016. | ||||
|   (let ((commit "aa07c11318f91219336197e62c47bc7a3d090479") | ||||
|  | @ -7434,7 +7474,8 @@ xref, etc...) are still available, but with better integration.") | |||
|          #:phases | ||||
|          ;; The package provides autoloads. | ||||
|          (modify-phases %standard-phases | ||||
|            (delete 'make-autoloads)))) | ||||
|            (delete 'make-autoloads) | ||||
|            (delete 'enable-autoloads-compilation)))) | ||||
|       (synopsis "Quicklisp support for SLY") | ||||
|       (description | ||||
|        "@command{sly-quicklisp} is an external contrib for SLY that provides a | ||||
|  | @ -7491,7 +7532,10 @@ additional support for working with ASDF projects.") | |||
|       (propagated-inputs | ||||
|        `(("emacs-sly" ,emacs-sly))) | ||||
|       (arguments | ||||
|        '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include))) | ||||
|        '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include) | ||||
|          #:phases (modify-phases %standard-phases | ||||
|                     ;; Byte compilation of the autoload file fails. | ||||
|                     (delete 'enable-autoloads-compilation)))) | ||||
|       (synopsis "Named-readtables support for SLY") | ||||
|       (description | ||||
|        "@command{sly-named-readtables} is an external contrib for SLY that | ||||
|  | @ -7525,7 +7569,8 @@ file.") | |||
|          #:phases | ||||
|          ;; The package provides autoloads. | ||||
|          (modify-phases %standard-phases | ||||
|            (delete 'make-autoloads)))) | ||||
|            (delete 'make-autoloads) | ||||
|            (delete 'enable-autoloads-compilation)))) | ||||
|       (synopsis "Expand Common Lisp macros inside source files with SLY") | ||||
|       (description | ||||
|        "@command{sly-macrostep} is a SLY contrib for expanding CL macros right | ||||
|  | @ -7641,7 +7686,7 @@ extensions.") | |||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-evil-collection | ||||
|   (let ((commit "eb36c82a84d313e961777dc78fd4ff1d718efdf6") | ||||
|   (let ((commit "a478a95a8a3665e40bdae3bab2a0519db6c1f29c") | ||||
|         (revision "13")) | ||||
|     (package | ||||
|       (name "emacs-evil-collection") | ||||
|  | @ -7654,7 +7699,7 @@ extensions.") | |||
|                 (file-name (git-file-name name version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "0wi84x9176y4xjl7zpn882achfamx3a2ixlj4nvflxfh6q1qg7bz")))) | ||||
|                   "15ii5lw6hs4yyl22yyzfwzagdma2sman4rm5gq4m9773g4ava515")))) | ||||
|       (build-system emacs-build-system) | ||||
|       (propagated-inputs | ||||
|        `(("emacs-evil" ,emacs-evil) | ||||
|  | @ -12024,6 +12069,10 @@ match and total match information in the mode-line in various search modes.") | |||
|         (base32 | ||||
|          "0vb338bhjpsnrf60qgxny4z5rjrnifahnrv9axd4shay89d894zq")))) | ||||
|     (build-system emacs-build-system) | ||||
|     ;; Byte compilation of the autoload file fails. | ||||
|     (arguments | ||||
|      `(#:phases (modify-phases %standard-phases | ||||
|                   (delete 'enable-autoloads-compilation)))) | ||||
|     (home-page "https://elpa.gnu.org/packages/seq.html") | ||||
|     (synopsis | ||||
|      "Forward @code{cl-generic} compatibility for Emacs before version 25") | ||||
|  | @ -17365,8 +17414,7 @@ asynchronous communications, the RPC response is fairly good.") | |||
|              (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|                (let ((perl (assoc-ref inputs "perl")) | ||||
|                      (dir (string-append  (assoc-ref outputs "out") | ||||
|                                           "/share/emacs/site-lisp/guix.d/edbi-" | ||||
|                                           ,version))) | ||||
|                                           "/share/emacs/site-lisp"))) | ||||
|                  (substitute* (string-append dir  "/edbi.el") | ||||
|                    (("\"perl\"") (string-append "\"" perl "/bin/perl\""))) | ||||
|                  (chmod (string-append dir "/edbi-bridge.pl") #o555) | ||||
|  | @ -21560,3 +21608,62 @@ variables.") | |||
|      "This library is a Company back-end providing auto-completion for | ||||
| emoji.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-exiftool | ||||
|   (package | ||||
|     (name "emacs-exiftool") | ||||
|     (version "0.3.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://git.systemreboot.net/exiftool.el/") | ||||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0bv58is66cz21yhc0qqkp1z4nk13zfi2l7i6pjbhyi0g1n88qqyv")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #t | ||||
|        #:test-command '("make" "-C" "tests") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'configure | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (make-file-writable "exiftool.el") | ||||
|              (emacs-substitute-variables "exiftool.el" | ||||
|                ("exiftool-executable" | ||||
|                 (string-append (assoc-ref inputs "perl-image-exiftool") | ||||
|                                "/bin/exiftool"))) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("perl-image-exiftool" ,perl-image-exiftool))) | ||||
|     (home-page "https://git.systemreboot.net/exiftool.el/about/") | ||||
|     (synopsis "Elisp wrapper around ExifTool") | ||||
|     (description "@code{emacs-exiftool} is an Elisp wrapper around ExifTool. | ||||
| ExifTool supports reading and writing metadata in various formats including | ||||
| EXIF, XMP and IPTC.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-password-generator | ||||
|   (package | ||||
|     (name "emacs-password-generator") | ||||
|     (version "1.01") | ||||
|     (home-page "https://github.com/zargener/emacs-password-genarator") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url home-page) | ||||
|              (commit "904cdb591a04305ba882ce19e1d117f5fa60f7d3"))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1qgvn79qz1h8ykm5i1qv2fja4v2y0g2i0n5sf7byhnqhqlwn63nv")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (synopsis "Generate passwords inside Emacs") | ||||
|     (description "@code{emacs-password-generator} provides simple functions to | ||||
| generate random passwords and insert them into the current buffer.  It also | ||||
| supports generation of phonetic and numeric passwords.") | ||||
|     (license license:artistic2.0))) | ||||
|  |  | |||
|  | @ -129,6 +129,11 @@ | |||
|      `(#:tests? #f                      ; no check target | ||||
|        #:configure-flags (list "--with-modules" | ||||
|                                "--disable-build-details") | ||||
|        #:modules ((guix build emacs-utils) | ||||
|                   (guix build glib-or-gtk-build-system) | ||||
|                   (guix build utils)) | ||||
|        #:imported-modules ((guix build emacs-utils) | ||||
|                            ,@%glib-or-gtk-build-system-modules) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'configure 'fix-/bin/pwd | ||||
|  | @ -139,13 +144,12 @@ | |||
|                 "pwd")) | ||||
|              #t)) | ||||
|          (add-after 'install 'install-site-start | ||||
|            ;; Use 'guix-emacs' in "site-start.el".  This way, Emacs packages | ||||
|            ;; provided by Guix and installed in | ||||
|            ;; ~/.guix-profile/share/emacs/site-lisp/guix.d/PACKAGE-VERSION are | ||||
|            ;; automatically found. | ||||
|            ;; Use 'guix-emacs' in "site-start.el", which is used autoload the | ||||
|            ;; Elisp packages found in EMACSLOADPATH. | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let* ((out      (assoc-ref outputs "out")) | ||||
|                     (lisp-dir (string-append out "/share/emacs/site-lisp"))) | ||||
|                     (lisp-dir (string-append out "/share/emacs/site-lisp")) | ||||
|                     (emacs (string-append out "/bin/emacs"))) | ||||
|                (copy-file (assoc-ref inputs "guix-emacs.el") | ||||
|                           (string-append lisp-dir "/guix-emacs.el")) | ||||
|                (with-output-to-file (string-append lisp-dir "/site-start.el") | ||||
|  | @ -158,6 +162,9 @@ | |||
|                ;; share/emacs/site-lisp union when added to EMACSLOADPATH, | ||||
|                ;; which leads to conflicts. | ||||
|                (delete-file (string-append lisp-dir "/subdirs.el")) | ||||
|                ;; Byte compile the site-start files. | ||||
|                (parameterize ((%emacs emacs)) | ||||
|                  (emacs-byte-compile-directory lisp-dir)) | ||||
|                #t)))))) | ||||
|     (inputs | ||||
|      `(("gnutls" ,gnutls) | ||||
|  | @ -326,6 +333,12 @@ languages.") | |||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      (substitute-keyword-arguments (package-arguments emacs) | ||||
|        ((#:modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)) | ||||
|        ((#:imported-modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)) | ||||
|        ((#:phases phases) | ||||
|         `(modify-phases ,phases | ||||
|            (delete 'install-site-start))) | ||||
|  | @ -345,6 +358,12 @@ editor (with xwidgets support)") | |||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      (substitute-keyword-arguments (package-arguments emacs) | ||||
|        ((#:modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)) | ||||
|        ((#:imported-modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)) | ||||
|        ((#:configure-flags flags ''()) | ||||
|         `(cons "--with-xwidgets" ,flags)))) | ||||
|     (inputs | ||||
|  | @ -358,6 +377,14 @@ editor (with xwidgets support)") | |||
|     (synopsis "The extensible, customizable, self-documenting text | ||||
| editor (console only)") | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      (substitute-keyword-arguments (package-arguments emacs) | ||||
|        ((#:modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)) | ||||
|        ((#:imported-modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)))) | ||||
|     (inputs (fold alist-delete | ||||
|                   (package-inputs emacs) | ||||
|                   '("libx11" "gtk+" "libxft" "libtiff" "giflib" "libjpeg" | ||||
|  | @ -376,9 +403,15 @@ editor (without an X toolkit)" ) | |||
|     (inputs (append `(("inotify-tools" ,inotify-tools)) | ||||
|                     (alist-delete "gtk+" (package-inputs emacs)))) | ||||
|     (arguments | ||||
|      `(,@(substitute-keyword-arguments (package-arguments emacs) | ||||
|            ((#:configure-flags cf) | ||||
|             `(cons "--with-x-toolkit=no" ,cf))))))) | ||||
|      (substitute-keyword-arguments (package-arguments emacs) | ||||
|        ((#:modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)) | ||||
|        ((#:imported-modules _) | ||||
|         `((guix build emacs-utils) | ||||
|           ,@%gnu-build-system-modules)) | ||||
|        ((#:configure-flags cf) | ||||
|         `(cons "--with-x-toolkit=no" ,cf)))))) | ||||
| 
 | ||||
| (define-public guile-emacs | ||||
|   (let ((commit "41120e0f595b16387eebfbf731fff70481de1b4b") | ||||
|  |  | |||
|  | @ -14,6 +14,7 @@ | |||
| ;;; Copyright © 2019 Jovany Leandro G.C <bit4bit@riseup.net> | ||||
| ;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com> | ||||
| ;;; Copyright © 2019 John Soo <jsoo1@asu.edu> | ||||
| ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -793,138 +794,123 @@ language.") | |||
| (define-public ao | ||||
|   (deprecated-package "ao-cad" libfive)) | ||||
| 
 | ||||
| ;; TODO Add doc https://gitlab.com/kicad/services/kicad-doc/-/tree/master | ||||
| (define-public kicad | ||||
|     (package | ||||
|       (name "kicad") | ||||
|       (version "5.1.5") | ||||
|       (source | ||||
|        (origin | ||||
|          (method url-fetch) | ||||
|          (file-name (string-append name "-" version ".tar.xz")) | ||||
|          (uri (string-append | ||||
|                 "https://launchpad.net/kicad/" (version-major version) | ||||
|                 ".0/" version "/+download/kicad-" version ".tar.xz")) | ||||
|          (sha256 | ||||
|           (base32 "0x3417f2pa7p65s9f7l49rqbnrzy8gz6i0n07mlbxqbnm0fmlql0")))) | ||||
|       (build-system cmake-build-system) | ||||
|       (arguments | ||||
|        `(#:out-of-source? #t | ||||
|          #:tests? #f ; no tests | ||||
|          #:build-type "Release" | ||||
|          #:configure-flags | ||||
|          (list "-DKICAD_SCRIPTING_PYTHON3=ON" | ||||
|                "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON" | ||||
|                "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE") | ||||
|          #:phases | ||||
|          (modify-phases %standard-phases | ||||
|            (add-after 'install 'wrap-program | ||||
|              ;; Ensure correct Python at runtime. | ||||
|              (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|                (let* ((out (assoc-ref outputs "out")) | ||||
|                       (python (assoc-ref inputs "python")) | ||||
|                       (file (string-append out "/bin/kicad")) | ||||
|                       (path (string-append | ||||
|                              out | ||||
|                              "/lib/python" | ||||
|                              ,(version-major+minor | ||||
|                                 (package-version python)) | ||||
|                              "/site-packages:" | ||||
|                              (getenv "PYTHONPATH")))) | ||||
|                  (wrap-program file | ||||
|                    `("PYTHONPATH" ":" prefix (,path)) | ||||
|                    `("PATH" ":" prefix | ||||
|                      (,(string-append python "/bin:"))))) | ||||
|                #t))))) | ||||
|       (native-inputs | ||||
|        `(("boost" ,boost) | ||||
|          ("gettext" ,gnu-gettext) | ||||
|          ("pkg-config" ,pkg-config) | ||||
|          ("swig" ,swig) | ||||
|          ("zlib" ,zlib))) | ||||
|       (inputs | ||||
|        `(("cairo" ,cairo) | ||||
|          ("curl" ,curl) | ||||
|          ("desktop-file-utils" ,desktop-file-utils) | ||||
|          ("glew" ,glew) | ||||
|          ("glm" ,glm) | ||||
|          ("hicolor-icon-theme" ,hicolor-icon-theme) | ||||
|          ("libngspice" ,libngspice) | ||||
|          ("libsm" ,libsm) | ||||
|          ("mesa" ,mesa) | ||||
|          ("opencascade-oce" ,opencascade-oce) | ||||
|          ("openssl" ,openssl) | ||||
|          ("python" ,python) | ||||
|          ("wxwidgets" ,wxwidgets) | ||||
|          ("wxpython" ,python-wxpython))) | ||||
|       (home-page "https://kicad-pcb.org/") | ||||
|       (synopsis "Electronics Design Automation Suite") | ||||
|       (description "Kicad is a program for the formation of printed circuit | ||||
|   (package | ||||
|     (name "kicad") | ||||
|     (version "5.1.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (file-name (string-append name "-" version ".tar.xz")) | ||||
|        (uri (string-append | ||||
|              "https://launchpad.net/kicad/" (version-major version) | ||||
|              ".0/" version "/+download/kicad-" version ".tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 "0x3417f2pa7p65s9f7l49rqbnrzy8gz6i0n07mlbxqbnm0fmlql0")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      `(#:out-of-source? #t | ||||
|        #:tests? #f                      ; no tests | ||||
|        #:build-type "Release" | ||||
|        #:configure-flags | ||||
|        (list "-DKICAD_SCRIPTING_PYTHON3=ON" | ||||
|              "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON" | ||||
|              "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'install 'install-translations | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (copy-recursively (assoc-ref inputs "kicad-i18l") | ||||
|                                (assoc-ref outputs "out")) | ||||
|              #t)) | ||||
|          (add-after 'install 'wrap-program | ||||
|            ;; Ensure correct Python at runtime. | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (python (assoc-ref inputs "python")) | ||||
|                     (file (string-append out "/bin/kicad")) | ||||
|                     (path (string-append | ||||
|                            out | ||||
|                            "/lib/python" | ||||
|                            ,(version-major+minor | ||||
|                              (package-version python)) | ||||
|                            "/site-packages:" | ||||
|                            (getenv "PYTHONPATH")))) | ||||
|                (wrap-program file | ||||
|                  `("PYTHONPATH" ":" prefix (,path)) | ||||
|                  `("PATH" ":" prefix | ||||
|                    (,(string-append python "/bin:"))))) | ||||
|              #t))))) | ||||
|     (native-search-paths | ||||
|      (list (search-path-specification | ||||
|             (variable "KICAD_TEMPLATE_DIR") | ||||
|             (files '("share/kicad/template"))) | ||||
|            (search-path-specification | ||||
|             (variable "KICAD_SYMBOL_DIR") ; symbol path | ||||
|             (files '("share/kicad/library"))) | ||||
|            (search-path-specification | ||||
|             (variable "KISYSMOD")       ; footprint path | ||||
|             (files '("share/kicad/modules"))) | ||||
|            (search-path-specification | ||||
|             (variable "KISYS3DMOD")     ; 3D model path | ||||
|             (files '("share/kicad/modules/packages3d"))))) | ||||
|     (native-inputs | ||||
|      `(("boost" ,boost) | ||||
|        ("desktop-file-utils" ,desktop-file-utils) | ||||
|        ("gettext" ,gnu-gettext) | ||||
|        ("kicad-i18l" ,kicad-i18l) | ||||
|        ("pkg-config" ,pkg-config) | ||||
|        ("swig" ,swig) | ||||
|        ("zlib" ,zlib))) | ||||
|     (inputs | ||||
|      `(("cairo" ,cairo) | ||||
|        ("curl" ,curl) | ||||
|        ("glew" ,glew) | ||||
|        ("glm" ,glm) | ||||
|        ("hicolor-icon-theme" ,hicolor-icon-theme) | ||||
|        ("libngspice" ,libngspice) | ||||
|        ("libsm" ,libsm) | ||||
|        ("mesa" ,mesa) | ||||
|        ("opencascade-oce" ,opencascade-oce) | ||||
|        ("openssl" ,openssl) | ||||
|        ("python" ,python-wrapper) | ||||
|        ("wxwidgets" ,wxwidgets) | ||||
|        ("wxpython" ,python-wxpython))) | ||||
|     (home-page "https://kicad-pcb.org/") | ||||
|     (synopsis "Electronics Design Automation Suite") | ||||
|     (description "Kicad is a program for the formation of printed circuit | ||||
| boards and electrical circuits.  The software has a number of programs that | ||||
| perform specific functions, for example, pcbnew (Editing PCB), eeschema (editing | ||||
| electrical diagrams), gerbview (viewing Gerber files) and others.") | ||||
|       (license license:gpl3+))) | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public kicad-library | ||||
|   (let ((version "4.0.7")) | ||||
|     (package | ||||
|       (name "kicad-library") | ||||
|       (version version) | ||||
|       (source | ||||
|        (origin | ||||
|          (method url-fetch) | ||||
|          (uri (string-append | ||||
|                "https://kicad-downloads.s3.cern.ch/libraries/kicad-library-" | ||||
|                version ".tar.gz")) | ||||
|          (sha256 | ||||
|           (base32 "1azb7v1y3l6j329r9gg7f4zlg0wz8nh4s4i5i0l9s4yh9r6i9zmv")))) | ||||
|       (build-system cmake-build-system) | ||||
|       (arguments | ||||
|        `(#:out-of-source? #t | ||||
|          #:tests? #f                    ; no tests | ||||
|          #:phases | ||||
|          (modify-phases %standard-phases | ||||
|            (add-after 'install 'install-footprints ; from footprints tarball | ||||
|              (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|                (invoke "tar" "xvf" | ||||
|                        (assoc-ref inputs "kicad-footprints") | ||||
|                        "-C" (string-append (assoc-ref outputs "out") | ||||
|                                            "/share/kicad/modules") | ||||
|                        "--strip-components=1"))) | ||||
|            ;; We change the default global footprint file, which is generated if | ||||
|            ;; it doesn't exist in user's home directory, from the one using the | ||||
|            ;; github plugin, to the one using the KISYSMOD environment path. | ||||
|            (add-after 'install-footprints 'use-pretty-footprint-table | ||||
|              (lambda* (#:key outputs #:allow-other-keys) | ||||
|                (let* ((out (assoc-ref outputs "out")) | ||||
|                       (template-dir (string-append out "/share/kicad/template")) | ||||
|                       (fp-lib-table (string-append template-dir "/fp-lib-table"))) | ||||
|                  (delete-file fp-lib-table) | ||||
|                  (copy-file (string-append fp-lib-table ".for-pretty") | ||||
|                             fp-lib-table)) | ||||
|                #t))))) | ||||
|       (native-search-paths | ||||
|        (list (search-path-specification | ||||
|               (variable "KISYSMOD")     ; footprint path | ||||
|               (files '("share/kicad/modules"))) | ||||
|              (search-path-specification | ||||
|               (variable "KISYS3DMOD")   ; 3D model path | ||||
|               (files '("share/kicad/modules/packages3d"))))) | ||||
|       ;; Kicad distributes footprints in a separate tarball. | ||||
|       (native-inputs | ||||
|        `(("kicad-footprints" | ||||
|           ,(origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append | ||||
|                    "http://downloads.kicad-pcb.org/libraries/kicad-footprints-" | ||||
|                    version ".tar.gz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "08qrz5zzsb5127jlnv24j0sgiryd5nqwg3lfnwi8j9a25agqk13j")))))) | ||||
|       (home-page "https://kicad-pcb.org/") | ||||
|       (synopsis "Libraries for kicad") | ||||
|       (description "This package provides Kicad component, footprint and 3D | ||||
| render model libraries.") | ||||
|       (license license:lgpl2.0+)))) | ||||
| (define kicad-i18l | ||||
|   (package | ||||
|     (name "kicad-i18l") | ||||
|     (version "5.1.5") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://gitlab.com/kicad/code/kicad-i18n.git") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1rfpifl8vky1gba2angizlb2n7mwmsiai3r6ip6qma60wdj8sbd3")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'build) | ||||
|          (delete 'check)))) | ||||
|     (native-inputs | ||||
|      `(("gettext" ,gnu-gettext))) | ||||
|     (home-page "https://kicad-pcb.org/") | ||||
|     (synopsis "KiCad GUI translations") | ||||
|     (description "This package contains the po files that are used for the GUI | ||||
| translations for KiCad.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public kicad-symbols | ||||
|   (package | ||||
|  | @ -943,9 +929,9 @@ render model libraries.") | |||
|     (arguments | ||||
|      `(#:tests? #f))                    ; no tests exist | ||||
|     (home-page "https://kicad-pcb.org/") | ||||
|     (synopsis "Official KiCad schematic symbol libraries for KiCad 5") | ||||
|     (synopsis "Official KiCad schematic symbol libraries") | ||||
|     (description "This package contains the official KiCad schematic symbol | ||||
| libraries for KiCad 5.") | ||||
| libraries.") | ||||
|     ;; TODO: Exception: "To the extent that the creation of electronic designs | ||||
|     ;; that use 'Licensed Material' can be considered to be 'Adapted Material', | ||||
|     ;; then the copyright holder waives article 3 of the license with respect to | ||||
|  | @ -954,6 +940,58 @@ libraries for KiCad 5.") | |||
|     ;; See <https://github.com/KiCad/kicad-symbols/blob/master/LICENSE.md>. | ||||
|     (license license:cc-by-sa4.0))) | ||||
| 
 | ||||
| (define-public kicad-footprints | ||||
|   (package | ||||
|     (inherit kicad-symbols) | ||||
|     (name "kicad-footprints") | ||||
|     (version "5.1.5") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/KiCad/kicad-footprints.git") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1c4whgn14qhz4yqkl46w13p6rpv1k0hsc9s9h9368fxfcz9knb2j")))) | ||||
|     (synopsis "Official KiCad footprint libraries") | ||||
|     (description "This package contains the official KiCad footprint libraries."))) | ||||
| 
 | ||||
| (define-public kicad-packages3d | ||||
|   (package | ||||
|     (inherit kicad-symbols) | ||||
|     (name "kicad-packages3d") | ||||
|     (version "5.1.5") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/KiCad/kicad-packages3d.git") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0cff2ms1bsw530kqb1fr1m2pjixyxzwa81mxgac3qpbcf8fnpvaz")))) | ||||
|     (synopsis "Official KiCad 3D model libraries") | ||||
|     (description "This package contains the official KiCad 3D model libraries."))) | ||||
| 
 | ||||
| (define-public kicad-templates | ||||
|   (package | ||||
|     (inherit kicad-symbols) | ||||
|     (name "kicad-templates") | ||||
|     (version "5.1.5") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/KiCad/kicad-templates.git") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0cs3bm3zb5ngw5ldn0lzw5bvqm4kvcidyrn76438alffwiz2b15g")))) | ||||
|     (synopsis "Official KiCad project and worksheet templates") | ||||
|     (description "This package contains the official KiCad project and | ||||
| worksheet templates."))) | ||||
| 
 | ||||
| (define-public linsmith | ||||
|   (package | ||||
|     (name "linsmith") | ||||
|  |  | |||
|  | @ -188,7 +188,7 @@ by the b43-open driver of Linux-libre.") | |||
|     (name (string-replace-substring | ||||
|            (string-append "opensbi-" platform "-" variant) | ||||
|            "_" "-")) | ||||
|     (version "0.5") | ||||
|     (version "0.6") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -197,7 +197,7 @@ by the b43-open driver of Linux-libre.") | |||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "0qc73xbiy79qqkwxmp4mg15q8n8k26njkyqb6n0jw5dyibd6hb85")))) | ||||
|         (base32 "129ypdga0fzn657n2f42g2a1vx3hf8x7sd78h06d35pgkry0jkl7")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(,@(if (and (not (string-prefix? "riscv64" (%current-system))) | ||||
|  | @ -240,12 +240,14 @@ for platform-specific firmwares executing in M-mode.") | |||
| (define-public opensbi-qemu-virt | ||||
|   (make-opensbi-package "qemu" "virt")) | ||||
| 
 | ||||
| (define-public opensbi-qemu-sifive-u | ||||
|   (make-opensbi-package "qemu" "sifive_u")) | ||||
| 
 | ||||
| (define-public opensbi-sifive-fu540 | ||||
|   (make-opensbi-package "sifive" "fu540")) | ||||
| 
 | ||||
| (define-public opensbi-qemu-sifive-u | ||||
|   ;; Dropped upstream, as all functionality is present in the sifive-fu540 | ||||
|   ;; target for recent versions of qemu, u-boot and linux. | ||||
|   (deprecated-package "opensbi-qemu-sifive-u" opensbi-sifive-fu540)) | ||||
| 
 | ||||
| (define-public seabios | ||||
|   (package | ||||
|     (name "seabios") | ||||
|  |  | |||
|  | @ -8,7 +8,7 @@ | |||
| ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net> | ||||
| ;;; Copyright © 2017, 2018 Mark H Weaver <mhw@netris.org> | ||||
| ;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com> | ||||
| ;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot> | ||||
| ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
|  | @ -306,7 +306,6 @@ the freedesktop.org XDG Base Directory specification.") | |||
|           "-Dcgroup-controller=elogind" | ||||
|           "-Dman=true" | ||||
|           ;; Disable some tests. | ||||
|           "-Dtests=false" | ||||
|           "-Dslow-tests=false")) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|  | @ -324,6 +323,46 @@ the freedesktop.org XDG Base Directory specification.") | |||
|                (("=/run/dbus/system_bus_socket") | ||||
|                 "=/var/run/dbus/system_bus_socket")) | ||||
|              #t)) | ||||
|          (add-after 'unpack 'adjust-tests | ||||
|            (lambda _ | ||||
|              ;; This test tries to copy some bytes from /usr/lib/os-release, | ||||
|              ;; which does not exist in the build container.  Choose something | ||||
|              ;; more likely to be available. | ||||
|              (substitute* "src/test/test-copy.c" | ||||
|                (("/usr/lib/os-release") | ||||
|                 "/etc/passwd")) | ||||
|              ;; Use a shebang that works in the build container. | ||||
|              (substitute* "src/test/test-exec-util.c" | ||||
|                (("#!/bin/sh") | ||||
|                 (string-append "#!" (which "sh")))) | ||||
|              ;; Do not look for files or directories that do not exist. | ||||
|              (substitute* "src/test/test-fs-util.c" | ||||
|                (("usr") "etc") | ||||
|                (("/etc/machine-id") "/etc/passwd")) | ||||
|              ;; FIXME: Why is sd_id128_get_machine_app_specific failing. | ||||
|              ;; Disable for now by hooking into the kernel support check. | ||||
|              (substitute* "src/test/test-id128.c" | ||||
|                (("if \\(r == -EOPNOTSUPP\\)") | ||||
|                 "if (1)")) | ||||
|              ;; This test expects that /sys is available. | ||||
|              (substitute* "src/test/test-mountpoint-util.c" | ||||
|                (("assert_se\\(path_is_mount_point\\(\"/sys.*") | ||||
|                 "")) | ||||
|              ;; /bin/sh does not exist in the build container. | ||||
|              (substitute* "src/test/test-path-util.c" | ||||
|                (("/bin/sh") (which "sh"))) | ||||
|              ;; This test uses sd_device_new_from_syspath to allocate a | ||||
|              ;; loopback device, but that fails because /sys is unavailable. | ||||
|              (substitute* "src/libelogind/sd-device/test-sd-device-thread.c" | ||||
|                ((".*sd_device_new_from_syspath.*/sys/class/net/lo.*") | ||||
|                 "return 77;")) | ||||
|              ;; Most of these tests require cgroups or an actual live | ||||
|              ;; logind system so that it can flicker the monitor, etc. | ||||
|              ;; Just skip it until a more narrow selection can be made. | ||||
|              (substitute* "src/libelogind/sd-login/test-login.c" | ||||
|                (("r = sd_pid_get_slice.*") | ||||
|                 "return 77;")) | ||||
|              #t)) | ||||
|          (add-after 'unpack 'change-pid-file-path | ||||
|            (lambda _ | ||||
|              (substitute* "src/login/elogind.c" | ||||
|  |  | |||
|  | @ -24,15 +24,20 @@ | |||
|   #:use-module (guix build-system trivial) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system copy) | ||||
|   #:use-module (guix build-system meson) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu packages bash) | ||||
|   #:use-module (gnu packages gettext) | ||||
|   #:use-module (gnu packages glib) | ||||
|   #:use-module (gnu packages gnome) | ||||
|   #:use-module (gnu packages gtk) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages python-xyz) | ||||
|   #:use-module (gnu packages ssh) | ||||
|   #:use-module (gnu packages tls) | ||||
|   #:use-module (gnu packages ruby) | ||||
|   #:use-module (gnu packages xml)) | ||||
| 
 | ||||
|  | @ -85,7 +90,7 @@ like Gnome, Unity, Budgie, Pantheon, XFCE, Mate and others.") | |||
| (define-public delft-icon-theme | ||||
|   (package | ||||
|     (name "delft-icon-theme") | ||||
|     (version "1.10") | ||||
|     (version "1.11") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -94,21 +99,19 @@ like Gnome, Unity, Budgie, Pantheon, XFCE, Mate and others.") | |||
|              (commit (string-append "v" version)))) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0vw3yw9f9ygzfd2k3zrfih3r0vkzlhk1bmsk8sapvk7np24i1z9s")) | ||||
|          "1m3r4i4m3y3xsjb5f4bik0ylmi64amkfyr0y8pjbvv6gyj492mi6")) | ||||
|        (file-name (git-file-name name version)))) | ||||
|     (build-system trivial-build-system) | ||||
|     (build-system copy-build-system) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build utils)) | ||||
|        #:builder | ||||
|        (begin | ||||
|          (use-modules (guix build utils)) | ||||
|          (copy-recursively (assoc-ref %build-inputs "source") "icons") | ||||
|          (substitute* "icons/Delft/index.theme" | ||||
|            (("gnome") "Adwaita")) | ||||
|          (delete-file "icons/README.md") | ||||
|          (delete-file "icons/LICENSE") | ||||
|          (delete-file "icons/logo.jpg") | ||||
|          (copy-recursively "icons" (string-append %output "/share/icons"))))) | ||||
|      `(#:install-plan | ||||
|        `(("." "share/icons" #:exclude ("README.md" "LICENSE" "logo.jpg"))) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'patch-index.theme | ||||
|            (lambda _ | ||||
|             (substitute* "Delft/index.theme" | ||||
|               (("gnome") "Adwaita")) | ||||
|             #t))))) | ||||
|     (home-page "https://www.gnome-look.org/p/1199881/") | ||||
|     (synopsis "Continuation of Faenza icon theme with up to date app icons") | ||||
|     (description "Delft is a fork of the popular icon theme Faenza with up to | ||||
|  | @ -131,19 +134,11 @@ the Obsidian icon theme.") | |||
|                (base32 | ||||
|                 "1fjhx23jqwv3d0smwhnjvc35gqhwk9p5f96ic22pfax653cn5vh8")) | ||||
|               (file-name (git-file-name name version)))) | ||||
|     (build-system trivial-build-system) | ||||
|     (build-system copy-build-system) | ||||
|     (arguments | ||||
|      '(#:modules ((guix build utils)) | ||||
|        #:builder | ||||
|        (begin | ||||
|          (use-modules (guix build utils)) | ||||
|          (let* ((source (assoc-ref %build-inputs "source")) | ||||
|                 (install-dir (string-append (assoc-ref %outputs "out") | ||||
|                                             "/share/gnome-shell/extensions" | ||||
|                                             "/appindicatorsupport@rgcjonas.gmail.com"))) | ||||
|            (mkdir-p install-dir) | ||||
|            (copy-recursively source install-dir) | ||||
|            #t)))) | ||||
|      `(#:install-plan | ||||
|        '(("." ,(string-append "share/gnome-shell/extensions/" | ||||
|                               "appindicatorsupport@rgcjonas.gmail.com"))))) | ||||
|     (synopsis "Adds KStatusNotifierItem support to GNOME Shell") | ||||
|     (description "This extension integrates Ubuntu AppIndicators | ||||
| and KStatusNotifierItems (KDE's successor of the systray) into | ||||
|  | @ -188,6 +183,100 @@ faster window switching.") | |||
|     (home-page "https://micheleg.github.io/dash-to-dock/") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public gnome-shell-extension-gsconnect | ||||
|   (package | ||||
|     (name "gnome-shell-extension-gsconnect") | ||||
|     ;; v28 is the last version to support GNOME 3.32 | ||||
|     (version "28") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url (string-append "https://github.com/andyholmes" | ||||
|                                         "/gnome-shell-extension-gsconnect.git")) | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0grqkzqm7mlkbzin4nx9w7bh5cgygph8pn0cvim4a4gg99nfcp5z")))) | ||||
|     (build-system meson-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (let* ((out (assoc-ref %outputs "out")) | ||||
|               (name+version (strip-store-file-name out)) | ||||
|               (gschema-dir (string-append out | ||||
|                                           "/share/gsettings-schemas/" | ||||
|                                           name+version | ||||
|                                           "/glib-2.0/schemas")) | ||||
|               (gnome-shell (assoc-ref %build-inputs "gnome-shell")) | ||||
|               (openssh (assoc-ref %build-inputs "openssh")) | ||||
|               (openssl (assoc-ref %build-inputs "openssl"))) | ||||
|          (list | ||||
|           (string-append "-Dgnome_shell_libdir=" gnome-shell "/lib") | ||||
|           (string-append "-Dgsettings_schemadir=" gschema-dir) | ||||
|           (string-append "-Dopenssl_path=" openssl "/bin/openssl") | ||||
|           (string-append "-Dsshadd_path=" openssh "/bin/ssh-add") | ||||
|           (string-append "-Dsshkeygen_path=" openssh "/bin/ssh-keygen") | ||||
|           (string-append "-Dsession_bus_services_dir=" out "/share/dbus-1/services") | ||||
|           "-Dpost_install=true")) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'configure 'fix-paths | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (let* ((glib (assoc-ref inputs "glib:bin")) | ||||
|                     (gapplication (string-append glib "/bin/gapplication")) | ||||
|                     (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) | ||||
|                (substitute* "data/org.gnome.Shell.Extensions.GSConnect.desktop" | ||||
|                  (("gapplication") gapplication)) | ||||
|                (for-each | ||||
|                 (lambda (file) | ||||
|                   (substitute* file | ||||
|                     (("'use strict';") | ||||
|                      (string-append "'use strict';\n\n" | ||||
|                                     "'" gi-typelib-path "'.split(':').forEach(" | ||||
|                                     "path => imports.gi.GIRepository.Repository." | ||||
|                                     "prepend_search_path(path));")))) | ||||
|                 '("src/extension.js" "src/prefs.js")) | ||||
|                #t))) | ||||
|          (add-after 'install 'wrap-daemons | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (service-dir | ||||
|                      (string-append out "/share/gnome-shell/extensions" | ||||
|                                     "/gsconnect@andyholmes.github.io/service")) | ||||
|                     (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) | ||||
|                (wrap-program (string-append service-dir "/daemon.js") | ||||
|                  `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))) | ||||
|                #t)))))) | ||||
|     (inputs | ||||
|      `(("at-spi2-core" ,at-spi2-core) | ||||
|        ("caribou" ,caribou) | ||||
|        ("evolution-data-server" ,evolution-data-server) | ||||
|        ("folks" ,folks) | ||||
|        ("gjs" ,gjs) | ||||
|        ("glib" ,glib) | ||||
|        ("glib:bin" ,glib "bin") | ||||
|        ("gsound" ,gsound) | ||||
|        ("gnome-shell" ,gnome-shell) | ||||
|        ("gtk+" ,gtk+) | ||||
|        ("nautilus" ,nautilus) | ||||
|        ("openssh" ,openssh) | ||||
|        ("openssl" ,openssl) | ||||
|        ("python-nautilus" ,python-nautilus) | ||||
|        ("python-pygobject" ,python-pygobject) | ||||
|        ("upower" ,upower))) | ||||
|     (native-inputs | ||||
|      `(("gettext" ,gettext-minimal) | ||||
|        ("gobject-introspection" ,gobject-introspection) | ||||
|        ("libxml2" ,libxml2) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (home-page "https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki") | ||||
|     (synopsis "Connect GNOME Shell with your Android phone") | ||||
|     (description "GSConnect is a complete implementation of KDE Connect | ||||
| especially for GNOME Shell, allowing devices to securely share content, like | ||||
| notifications or files, and other features like SMS messaging and remote | ||||
| control.") | ||||
|     (license license:gpl2))) | ||||
| 
 | ||||
| (define-public gnome-shell-extension-hide-app-icon | ||||
|   (let ((commit "4188aa5f4ba24901a053a0c3eb0d83baa8625eab") | ||||
|         (revision "0")) | ||||
|  | @ -289,20 +378,12 @@ into a single panel, similar to that found in KDE Plasma and Windows 7+.") | |||
|                (base32 | ||||
|                 "0fa8l3xlh8kbq07y4385wpb908zm6x53z81q16xlmin97dln32hh")) | ||||
|               (file-name (git-file-name name version)))) | ||||
|     (build-system trivial-build-system) | ||||
|     (build-system copy-build-system) | ||||
|     (arguments | ||||
|      '(#:modules ((guix build utils)) | ||||
|        #:builder | ||||
|        (begin | ||||
|          (use-modules (guix build utils)) | ||||
|          (let ((dst (string-append | ||||
|                      (assoc-ref %outputs "out") | ||||
|                      "/share/gnome-shell/extensions/" | ||||
|                      "noannoyance@daase.net"))) | ||||
|            (mkdir-p dst) | ||||
|            (copy-recursively (assoc-ref %build-inputs "source") dst))))) | ||||
|     (synopsis "Removes 'Window is ready' annotation") | ||||
|     (description "One of the many extensions, that remove this message. | ||||
|      '(#:install-plan | ||||
|        '(("." "share/gnome-shell/extensions/noannoyance@daase.net")))) | ||||
|     (synopsis "Remove 'Window is ready' annotation") | ||||
|     (description "One of the many extensions that remove this message. | ||||
| It uses ES6 syntax and claims to be more actively maintained than others.") | ||||
|     (home-page "https://extensions.gnome.org/extension/2182/noannoyance/") | ||||
|     (license license:gpl2))) | ||||
|  |  | |||
|  | @ -7,10 +7,11 @@ | |||
| ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> | ||||
| ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> | ||||
| ;;; Copyright © 2017 ng0 <ng0@n0.is> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com> | ||||
| ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> | ||||
| ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -882,6 +883,7 @@ from forcing GEXP-PROMISE." | |||
| 
 | ||||
|        #:modules ((ice-9 ftw) | ||||
|                   (ice-9 rdelim) | ||||
|                   (ice-9 regex) | ||||
|                   (ice-9 match) | ||||
|                   (srfi srfi-34) | ||||
|                   (srfi srfi-35) | ||||
|  | @ -1067,6 +1069,20 @@ from forcing GEXP-PROMISE." | |||
|                                 (force-output) | ||||
|                                 (retry (- remaining-attempts 1)))) | ||||
|                        (apply build args))))))) | ||||
|          (add-after 'build 'neutralise-store-references | ||||
|            (lambda _ | ||||
|              ;; Mangle the store references to compilers & other build tools in | ||||
|              ;; about:buildconfig, reducing IceCat's closure by 1 GiB on x86-64. | ||||
|              (substitute* | ||||
|                  "dist/bin/chrome/toolkit/content/global/buildconfig.html" | ||||
|                (((format #f "(~a/)([0-9a-df-np-sv-z]{32})" | ||||
|                          (regexp-quote (%store-directory))) | ||||
|                  _ store hash) | ||||
|                 (string-append store | ||||
|                                (string-take hash 8) | ||||
|                                "<!-- Guix: not a runtime dependency -->" | ||||
|                                (string-drop hash 8)))) | ||||
|              #t)) | ||||
|          (add-before 'configure 'install-desktop-entry | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              ;; Install the '.desktop' file. | ||||
|  |  | |||
|  | @ -970,20 +970,17 @@ using S-expressions.") | |||
| (define-public guile-debbugs | ||||
|   (package | ||||
|     (name "guile-debbugs") | ||||
|     (version "0.0.2") | ||||
|     (version "0.0.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://gnu/guile-debbugs/guile-debbugs-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "16l8910p57im6s3j93xhdaqvgfy6ms5n97177mrch3y961z5hy0i")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|                '(substitute* "Makefile.in" | ||||
|                   (("^godir = (.*)/ccache" _ prefix) | ||||
|                    (string-append "godir = " prefix "/site-ccache")))))) | ||||
|                 "1cc63nw3xdfjrfk8c58r6d5lidmfq5cpqcy32yd5xp81yccprvn9")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("guile-email" ,guile-email))) | ||||
|     (native-inputs | ||||
|      `(("guile" ,guile-2.2) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|  | @ -1023,31 +1020,6 @@ Extensions) compliant email messages and reading emails from the mbox | |||
| format.") | ||||
|     (license license:agpl3+))) | ||||
| 
 | ||||
| (define-public guile-debbugs-next | ||||
|   (let ((commit "fb0ae064037a38a0d526e08b4ad24c52e205edb9") | ||||
|         (revision "2")) | ||||
|     (package (inherit guile-debbugs) | ||||
|       (name "guile-debbugs") | ||||
|       (version (git-version "0.0.3" revision commit)) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://git.savannah.gnu.org/git/guile-debbugs.git") | ||||
|                       (commit commit))) | ||||
|                 (file-name (git-file-name name version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "195sacx2xc1mzzfljj62nfpi8mxn0rc6dabxckizjksnhb5irfwy")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (native-inputs | ||||
|        `(("pkg-config" ,pkg-config) | ||||
|          ("autoconf" ,autoconf) | ||||
|          ("automake" ,automake) | ||||
|          ("texinfo" ,texinfo))) | ||||
|       (inputs | ||||
|        `(("guile" ,guile-2.2) | ||||
|          ("guile-email" ,guile-email)))))) | ||||
| 
 | ||||
| (define-public guile-newt | ||||
|   (package | ||||
|     (name "guile-newt") | ||||
|  |  | |||
|  | @ -269,14 +269,14 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}. | |||
| (define-public git-annex | ||||
|   (package | ||||
|     (name "git-annex") | ||||
|     (version "7.20200219") | ||||
|     (version "8.20200226") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://hackage.haskell.org/package/" | ||||
|                            "git-annex/git-annex-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 "0pzwjh98jpirgssbd7pqfk7mzraibrk277dn34s2mrah8zy75b58")))) | ||||
|         (base32 "09v80ni1w9z1im79lzrnpz7xlivwna44zqpwq4axwyd17cffqi9m")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|  |  | |||
|  | @ -39,6 +39,7 @@ | |||
| ;;; Copyright © 2019, 2020 Brice Waegeneire <brice@waegenei.re> | ||||
| ;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net> | ||||
| ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> | ||||
| ;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -2739,7 +2740,7 @@ from the module-init-tools project.") | |||
| (define-public earlyoom | ||||
|   (package | ||||
|     (name "earlyoom") | ||||
|     (version "1.3") | ||||
|     (version "1.3.1") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|  | @ -2748,7 +2749,7 @@ from the module-init-tools project.") | |||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0fwbx0y80nqgkxrc9kf9j3iwa0wbps2jmqir3pgqbc2cj0wjh0lr")))) | ||||
|                 "06sd3jpkdrwqbphsf8jrgs5rxfi7j3xjmygjjvj4xjk4gncz7r2i")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases (modify-phases %standard-phases | ||||
|  | @ -6397,3 +6398,28 @@ the Linux kernel, C standard library, and libdl (for dynamic linking).  While | |||
| ELL is designed to be efficient and compact enough for use on embedded Linux | ||||
| platforms, it is not limited to resource-constrained systems.") | ||||
|     (license license:lgpl2.1+))) | ||||
| 
 | ||||
| (define-public lttng-ust | ||||
|   (package | ||||
|     (name "lttng-ust") | ||||
|     (version "2.11.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://lttng.org/files/lttng-ust/" | ||||
|                                   "lttng-ust-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1n646yz7882svf5a4ay3vqiiz3qjn3pgkkij9kk22871wp7q0ck8")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("liburcu" ,liburcu) | ||||
|        ("numactl" ,numactl))) | ||||
|     (native-inputs | ||||
|      `(("python" ,python-3))) | ||||
|     (home-page "https://lttng.org/") | ||||
|     (synopsis "LTTng userspace tracer libraries") | ||||
|     (description "The user space tracing library, liblttng-ust, is the LTTng | ||||
| user space tracer.  It receives commands from a session daemon, for example to | ||||
| enable and disable specific instrumentation points, and writes event records | ||||
| to ring buffers shared with a consumer daemon.") | ||||
|     (license license:lgpl2.1+))) | ||||
|  |  | |||
|  | @ -3034,7 +3034,7 @@ assetsjs_DATA  = $(wildcard assets/js/*)\n")) | |||
|                      (,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))) | ||||
|                  #t)))))) | ||||
|       (inputs | ||||
|        `(("guile-debbugs" ,guile-debbugs-next) | ||||
|        `(("guile-debbugs" ,guile-debbugs) | ||||
|          ("guile-email" ,guile-email) | ||||
|          ("guile-fibers" ,guile-fibers) | ||||
|          ("guile-json" ,guile-json-1) | ||||
|  |  | |||
|  | @ -110,8 +110,8 @@ | |||
|   ;; Note: the 'update-guix-package.scm' script expects this definition to | ||||
|   ;; start precisely like this. | ||||
|   (let ((version "1.0.1") | ||||
|         (commit "50299ade040e934fa5533768aacb081eb340af3f") | ||||
|         (revision 13)) | ||||
|         (commit "c2f9ea2b502a617bb69227d5f858eee9d4288a6a") | ||||
|         (revision 14)) | ||||
|     (package | ||||
|       (name "guix") | ||||
| 
 | ||||
|  | @ -127,7 +127,7 @@ | |||
|                       (commit commit))) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "0rbnyy0vqmsl7z350cdazm5xzx74cdia3nxp0msk8xalyb76hff4")) | ||||
|                   "0hg6yrqlzqiv4gmk9liqar6m9qhhn66q75jsmh86awjwq4qmvyab")) | ||||
|                 (file-name (string-append "guix-" version "-checkout")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (arguments | ||||
|  |  | |||
|  | @ -16368,14 +16368,14 @@ class in a @acronym{DRY, Don't Repeat Yourself} way.") | |||
| (define-public python-construct | ||||
|   (package | ||||
|     (name "python-construct") | ||||
|     (version "2.9.45") | ||||
|     (version "2.10.56") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "construct" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "130iy05awzigm2xah2yvlmb08mac5bi4gzr5m3g7k1krs3ps0w92")))) | ||||
|          "0q86jjzsvy835h3c8pjj4619vbp7ihfg8njmyw86ym4qrpni7flp")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f)) ; No tests exist. | ||||
|  |  | |||
|  | @ -18,6 +18,7 @@ | |||
| ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com> | ||||
| ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org> | ||||
| ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> | ||||
| ;;; Copyright © 2020 Valentin Ignatev <valentignatev@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -36,6 +37,7 @@ | |||
| 
 | ||||
| (define-module (gnu packages terminals) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix build-system cargo) | ||||
|   #:use-module (guix build-system cmake) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system glib-or-gtk) | ||||
|  | @ -47,7 +49,9 @@ | |||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages autotools) | ||||
|   #:use-module (gnu packages check) | ||||
|   #:use-module (gnu packages cmake) | ||||
|   #:use-module (gnu packages compression) | ||||
|   #:use-module (gnu packages crates-io) | ||||
|   #:use-module (gnu packages crypto) | ||||
|   #:use-module (gnu packages docbook) | ||||
|   #:use-module (gnu packages fontutils) | ||||
|  | @ -1141,3 +1145,181 @@ while also supporting native scrolling and @command{tmux} control mode | |||
| an st fork using wld. st is a simple terminal emulator for X originally | ||||
| made by suckless.") | ||||
|     (license license:x11))) | ||||
| 
 | ||||
| (define-public alacritty | ||||
|   (package | ||||
|     (name "alacritty") | ||||
|     (version "0.4.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/jwilm/alacritty.git") | ||||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "05jcg33ifngpzw2hdhgb614j87ihhhlqgar0kky183rywg0dxikg")) | ||||
|        (modules '((guix build utils))) | ||||
|        (snippet | ||||
|          ;; Don't use a custom location for winit-0.20-alpha6. | ||||
|          '(begin (substitute* "Cargo.toml" | ||||
|                    (("winit .*") "")) | ||||
|                  #t)))) | ||||
|     (build-system cargo-build-system) | ||||
|     (arguments | ||||
|      `(#:cargo-inputs | ||||
|        (("rust-clap" ,rust-clap-2) | ||||
|         ("rust-log" ,rust-log-0.4) | ||||
|         ("rust-time" ,rust-time-0.1) | ||||
|         ("rust-env-logger" ,rust-env-logger-0.7) | ||||
|         ("rust-serde" ,rust-serde-1.0) | ||||
|         ("rust-serde-yaml" ,rust-serde-yaml-0.8) | ||||
|         ("rust-serde-json" ,rust-serde-json-1.0) | ||||
|         ("rust-glutin" ,rust-glutin-0.22) ; adjust 'patch-glutin-libgl-path as needed | ||||
|         ("rust-notify" ,rust-notify-4) | ||||
|         ("rust-libc" ,rust-libc-0.2) | ||||
|         ("rust-unicode-width" ,rust-unicode-width-0.1) | ||||
|         ("rust-parking-lot" ,rust-parking-lot-0.9) | ||||
|         ("rust-urlocator" ,rust-urlocator-0.1) | ||||
|         ("rust-xdg" ,rust-xdg-2.2) | ||||
|         ("rust-image" ,rust-image-0.22) | ||||
|         ("rust-dirs" ,rust-dirs-2.0) | ||||
|         ("rust-x11-dl" ,rust-x11-dl-2) | ||||
|         ("rust-winapi" ,rust-winapi-0.3) | ||||
|         ("rust-base64" ,rust-base64-0.11) | ||||
|         ("rust-bigflags" ,rust-bitflags-1) | ||||
|         ("rust-fnv" ,rust-fnv-1.0) | ||||
|         ("rust-mio" ,rust-mio-0.6) | ||||
|         ("rust-mio-extras" ,rust-mio-extras-2) | ||||
|         ("rust-terminfo" ,rust-terminfo-0.6) | ||||
|         ("rust-url" ,rust-url-2.1) | ||||
|         ("rust-vte" ,rust-vte-0.3) | ||||
|         ("rust-nix" ,rust-nix-0.15) | ||||
|         ("rust-miow" ,rust-miow-0.3) | ||||
|         ("rust-mio-anonymous-pipes" ,rust-mio-anonymous-pipes-0.1) | ||||
|         ("rust-mio-named-pipes" ,rust-mio-named-pipes-0.1) | ||||
|         ("rust-signal-hook" ,rust-signal-hook-0.1) | ||||
|         ("rust-clipboard-win" ,rust-clipboard-win-2.1) | ||||
|         ("rust-objc" ,rust-objc-0.2) | ||||
|         ("rust-objc-id" ,rust-objc-id-0.1) | ||||
|         ("rust-objc-foundation" ,rust-objc-foundation-0.1) | ||||
|         ("rust-x11-clipboard" ,rust-x11-clipboard-0.4) | ||||
|         ("rust-smithay-clipboard" ,rust-smithay-clipboard-0.3) | ||||
|         ("rust-wayland-client" ,rust-wayland-client-0.23) | ||||
|         ("rust-euclid" ,rust-euclid-0.20) | ||||
|         ("rust-foreign-types" ,rust-foreign-types-0.5) | ||||
|         ("rust-servo-fontconfig" ,rust-servo-fontconfig-0.4) | ||||
|         ("rust-freetype-rs" ,rust-freetype-rs-0.23) | ||||
|         ("rust-core-foundation" ,rust-core-foundation-0.6) | ||||
|         ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6) | ||||
|         ("rust-core-text" ,rust-core-text-13) | ||||
|         ("rust-core-graphics" ,rust-core-graphics-0.17) | ||||
|         ("rust-dwrote" ,rust-dwrote-0.9) | ||||
|         ("rust-winpty-sys" ,rust-winpty-sys-0.4)) | ||||
|        #:cargo-development-inputs | ||||
|        (("rust-rustc-tools-util" ,rust-rustc-tools-util-0.2) | ||||
|         ("rust-gl-generator" ,rust-gl-generator-0.14) | ||||
|         ("rust-andrew" ,rust-andrew-0.2) | ||||
|         ("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.6) | ||||
|         ("rust-embed-resource" ,rust-embed-resource-1.3) | ||||
|         ("rust-http-req" ,rust-http-req-0.5) | ||||
|         ("rust-zip" ,rust-zip-0.5) | ||||
|         ("rust-tempfile" ,rust-tempfile-3.1) | ||||
|         ("rust-named-pipe" ,rust-named-pipe-0.4) | ||||
|         ("rust-winapi" ,rust-winapi-0.3)) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'configure 'patch-glutin-libgl-path | ||||
|            (lambda* (#:key inputs cargo-inputs vendor-dir #:allow-other-keys) | ||||
|              (let* ((glutin-name ,(package-name rust-glutin-0.22)) | ||||
|                     (glutin-version ,(package-version rust-glutin-0.22)) | ||||
|                     (src-api | ||||
|                       (string-append | ||||
|                         glutin-name "-" glutin-version ".tar.gz/src/api/")) | ||||
|                     (mesa (assoc-ref inputs "mesa"))) | ||||
|               (substitute* (string-append vendor-dir "/" src-api "glx/mod.rs") | ||||
|                 (("libGL.so") (string-append mesa "/lib/libGL.so"))) | ||||
|               (substitute* (string-append vendor-dir "/" src-api "egl/mod.rs") | ||||
|                 (("libEGL.so") (string-append mesa "/lib/libEGL.so"))) | ||||
|               #t))) | ||||
|          (add-after 'configure 'remove-alacritty-vendor | ||||
|            (lambda* (#:key vendor-dir #:allow-other-keys) | ||||
|               ;; We don't want Alacritty to be a dependency of itself | ||||
|               ;; If we don't delete it from guix-vendor then build will fail | ||||
|               ;; because Alacritty has a virtual workspace Cargo.toml. | ||||
|               (delete-file-recursively | ||||
|                 (string-append vendor-dir "/alacritty-" ,version ".tar.xz")) | ||||
|               #t)) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let* ((out   (assoc-ref outputs "out")) | ||||
|                     (share (string-append out "/share")) | ||||
|                     (icons (string-append share "/icons/hicolor/scalable/apps")) | ||||
|                     (tic   (string-append (assoc-ref inputs "ncurses") "/bin/tic")) | ||||
|                     (man   (string-append share "/man/man1")) | ||||
|                     (alacritty-bin "target/release/alacritty")) | ||||
| 
 | ||||
|                ;; Install binary | ||||
|                (install-file alacritty-bin (string-append out "/bin")) | ||||
| 
 | ||||
|                ;; Install man pages | ||||
|                (mkdir-p man) | ||||
|                (copy-file "extra/alacritty.man" | ||||
|                           (string-append man "/alacritty.1")) | ||||
| 
 | ||||
|                ;; Install desktop file | ||||
|                (install-file "extra/linux/alacritty.desktop" | ||||
|                              (string-append share "/applications")) | ||||
| 
 | ||||
|                ;; Install icon | ||||
|                (mkdir-p icons) | ||||
|                (copy-file "extra/logo/alacritty-term.svg" | ||||
|                           (string-append icons "/Alacritty.svg")) | ||||
| 
 | ||||
|                ;; Install terminfo | ||||
|                (mkdir-p (string-append share "/terminfo")) | ||||
|                ;; We don't compile alacritty-common entry because | ||||
|                ;; it's being used only for inheritance. | ||||
|                (invoke tic "-x" "-e" "alacritty,alacritty-direct" | ||||
|                        "-o" (string-append share "/terminfo/") | ||||
|                        "extra/alacritty.info") | ||||
| 
 | ||||
|                ;; Install completions | ||||
|                (install-file | ||||
|                  "extra/completions/alacritty.bash" | ||||
|                  (string-append out "/etc/bash_completion.d")) | ||||
|                (install-file | ||||
|                  "extra/completions/_alacritty" | ||||
|                  (string-append share "/zsh/site-functions")) | ||||
|                (install-file | ||||
|                  "extra/completions/alacritty.fish" | ||||
|                  (string-append share "/fish/vendor_completions.d")) | ||||
|                #t)))))) | ||||
|     (inputs | ||||
|      `(("expat" ,expat) | ||||
|        ("fontconfig" ,fontconfig) | ||||
|        ("freetype" ,freetype) | ||||
|        ("libx11" ,libx11) | ||||
|        ("libxcb" ,libxcb) | ||||
|        ("libxcursor" ,libxcursor) | ||||
|        ("libxi" ,libxi) | ||||
|        ("libxkbcommon" ,libxkbcommon) | ||||
|        ("libxrandr" ,libxrandr) | ||||
|        ("libxxf86vm" ,libxxf86vm) | ||||
|        ("wayland" ,wayland) | ||||
|        ("mesa" ,mesa))) | ||||
|     (native-inputs | ||||
|      `(("cmake" ,cmake) | ||||
|        ("ncurses" ,ncurses) | ||||
|        ("pkg-config" ,pkg-config) | ||||
|        ("python3" ,python))) | ||||
|     (home-page "https://github.com/alacritty/alacritty") | ||||
|     (synopsis "GPU-accelerated terminal emulator") | ||||
|     (description | ||||
|      "Alacritty is a GPU-accelerated terminal emulator with a strong focus on | ||||
| simplicity and performance.  With such a strong focus on performance, included | ||||
| features are carefully considered and you can always expect Alacritty to be | ||||
| blazingly fast.  By making sane choices for defaults, Alacritty requires no | ||||
| additional setup.  However, it does allow configuration of many aspects of the | ||||
| terminal.  Note that you need support for OpenGL 3.2 or higher.") | ||||
|     (license license:asl2.0))) | ||||
|  |  | |||
|  | @ -403,8 +403,8 @@ required structures.") | |||
|    (home-page "https://www.openssl.org/"))) | ||||
| 
 | ||||
| (define openssl-1.1.1d | ||||
|   (package/inherit | ||||
|    openssl | ||||
|   (package | ||||
|    (inherit openssl) | ||||
|    (version "1.1.1d") | ||||
|    (source (origin | ||||
|              (method url-fetch) | ||||
|  |  | |||
|  | @ -3,7 +3,7 @@ | |||
| ;;; Copyright © 2013 Aljosha Papsch <misc@rpapsch.de> | ||||
| ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2018 Raoul Jean Pierre Bonnal <ilpuccio.febo@gmail.com> | ||||
| ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Eric Bavier <bavier@posteo.net> | ||||
|  | @ -114,12 +114,14 @@ | |||
|   #:use-module (gnu packages libevent) | ||||
|   #:use-module (gnu packages libidn) | ||||
|   #:use-module (gnu packages libunistring) | ||||
|   #:use-module (gnu packages libunwind) | ||||
|   #:use-module (gnu packages linux) | ||||
|   #:use-module (gnu packages lisp-xyz) | ||||
|   #:use-module (gnu packages lua) | ||||
|   #:use-module (gnu packages markup) | ||||
|   #:use-module (gnu packages ncurses) | ||||
|   #:use-module (gnu packages nss) | ||||
|   #:use-module (gnu packages openldap) | ||||
|   #:use-module (gnu packages openstack) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu packages package-management) | ||||
|  | @ -548,6 +550,67 @@ supported at your website.") | |||
|                       ;; binary: | ||||
|                       (package-license nginx))))))) | ||||
| 
 | ||||
| (define-public lighttpd | ||||
|   (package | ||||
|     (name "lighttpd") | ||||
|     (version "1.4.55") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://download.lighttpd.net/lighttpd/" | ||||
|                                   "releases-" (version-major+minor version) ".x/" | ||||
|                                   "lighttpd-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "09z947730yjh438wrqb3z1c5hr1dbb11a8sr92g3vk6mr7lm02va")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list "--with-krb5" | ||||
|              "--with-ldap" | ||||
|              "--with-libev" | ||||
|              "--with-libunwind" | ||||
|              "--with-openssl" | ||||
|              "--with-pam" | ||||
|              "--with-sasl") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'embed-/bin/sh-reference | ||||
|            (lambda _ | ||||
|              (substitute* "src/mod_ssi.c" | ||||
|                (("/bin/sh") (which "sh"))) | ||||
|              #t)) | ||||
|          (add-after 'unpack 'fix-tests | ||||
|            (lambda _ | ||||
|              (setenv "SHELL" (which "sh")) | ||||
|              ;; gethostbyaddr fails | ||||
|              (substitute* "tests/LightyTest.pm" | ||||
|                (("\\{HOSTNAME\\} = \\$name;") | ||||
|                 "{HOSTNAME} = \"127.0.0.1\";")) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("cyrus-sasl" ,cyrus-sasl) | ||||
|        ("libev" ,libev) | ||||
|        ("libunwind" ,libunwind) | ||||
|        ("linux-pam" ,linux-pam) | ||||
|        ("mit-krb5" ,mit-krb5) | ||||
|        ("openldap" ,openldap) | ||||
|        ("openssl" ,openssl) | ||||
|        ("pcre" ,pcre) | ||||
|        ("pcre:bin" ,pcre "bin") | ||||
|        ("zlib" ,zlib))) | ||||
|     (native-inputs | ||||
|      `(("perl" ,perl) ; for tests | ||||
|        ("pkg-config" ,pkg-config) | ||||
|        ("which" ,which))) | ||||
|     (home-page "https://www.lighttpd.net/") | ||||
|     (synopsis "Lightweight HTTP and reverse proxy server") | ||||
|     (description | ||||
|      "Lighttpd is a secure, fast, compliant, and very flexible web-server that | ||||
| has been optimized for high-performance environments.  It has a very low | ||||
| memory footprint compared to other webservers.  Its features include FastCGI, | ||||
| CGI, authentication, output compression, URL rewriting and many more.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public fcgi | ||||
|   (package | ||||
|     (name "fcgi") | ||||
|  | @ -7029,8 +7092,8 @@ compressed JSON header blocks. | |||
| 
 | ||||
| ;; 'Node' requires this newer version, to be removed on the next rebuild cycle. | ||||
| (define-public nghttp2-1.40 | ||||
|   (package/inherit | ||||
|    nghttp2 | ||||
|   (package | ||||
|    (inherit nghttp2) | ||||
|    (version "1.40.0") | ||||
|    (source (origin | ||||
|              (method url-fetch) | ||||
|  |  | |||
|  | @ -91,7 +91,13 @@ if TARGET ends with a '/', the source is installed underneath." | |||
|                                    file)))) | ||||
|       (format (current-output-port) "`~a' -> `~a'~%" file dest) | ||||
|       (mkdir-p (dirname dest)) | ||||
|       (copy-file file dest))) | ||||
|       (let ((stat (lstat file))) | ||||
|         (case (stat:type stat) | ||||
|           ((symlink) | ||||
|            (let ((target (readlink file))) | ||||
|              (symlink target dest))) | ||||
|           (else | ||||
|            (copy-file file dest)))))) | ||||
| 
 | ||||
|   (define* (make-file-predicate suffixes matches-regexp #:optional (default-value #t)) | ||||
|     "Return a predicate that returns #t if its file argument matches the | ||||
|  |  | |||
|  | @ -225,6 +225,21 @@ parallel. PARALLEL-TESTS? is ignored when using a non-make TEST-COMMAND." | |||
|     (parameterize ((%emacs emacs)) | ||||
|       (emacs-generate-autoloads elpa-name site-lisp)))) | ||||
| 
 | ||||
| (define* (enable-autoloads-compilation #:key outputs #:allow-other-keys) | ||||
|   "Remove the NO-BYTE-COMPILATION local variable embedded in the generated | ||||
| autoload files." | ||||
|   (let* ((out (assoc-ref outputs "out")) | ||||
|          (autoloads (find-files out "-autoloads.el$"))) | ||||
|     (substitute* autoloads | ||||
|       ((";; no-byte-compile.*") "")) | ||||
|     #t)) | ||||
| 
 | ||||
| (define* (validate-compiled-autoloads #:key outputs #:allow-other-keys) | ||||
|   "Verify whether the byte compiled autoloads load fine." | ||||
|   (let* ((out (assoc-ref outputs "out")) | ||||
|          (autoloads (find-files out "-autoloads.elc$"))) | ||||
|     (emacs-batch-eval (format #f "(mapc #'load '~s)" autoloads)))) | ||||
| 
 | ||||
| (define (emacs-package? name) | ||||
|   "Check if NAME correspond to the name of an Emacs package." | ||||
|   (string-prefix? "emacs-" name)) | ||||
|  | @ -253,10 +268,13 @@ second hyphen.  This corresponds to 'name-version' as used in ELPA packages." | |||
|     (replace 'check check) | ||||
|     (replace 'install install) | ||||
|     (add-after 'install 'make-autoloads make-autoloads) | ||||
|     (add-after 'make-autoloads 'patch-el-files patch-el-files) | ||||
|     (add-after 'make-autoloads 'enable-autoloads-compilation | ||||
|       enable-autoloads-compilation) | ||||
|     (add-after 'enable-autoloads-compilation 'patch-el-files patch-el-files) | ||||
|     ;; The .el files are byte compiled directly in the store. | ||||
|     (add-after 'patch-el-files 'build build) | ||||
|     (add-after 'build 'move-doc move-doc))) | ||||
|     (add-after 'build 'validate-compiled-autoloads validate-compiled-autoloads) | ||||
|     (add-after 'validate-compiled-autoloads 'move-doc move-doc))) | ||||
| 
 | ||||
| (define* (emacs-build #:key inputs (phases %standard-phases) | ||||
|                       #:allow-other-keys #:rest args) | ||||
|  |  | |||
|  | @ -41,16 +41,22 @@ | |||
|   ;; The `emacs' command. | ||||
|   (make-parameter "emacs")) | ||||
| 
 | ||||
| (define (expr->string expr) | ||||
|   "Converts EXPR, an expression, into a string." | ||||
|   (if (string? expr) | ||||
|       expr | ||||
|       (format #f "~s" expr))) | ||||
| 
 | ||||
| (define (emacs-batch-eval expr) | ||||
|   "Run Emacs in batch mode, and execute the elisp code EXPR." | ||||
|   (invoke (%emacs) "--quick" "--batch" | ||||
|           (format #f "--eval=~S" expr))) | ||||
|           (string-append "--eval=" (expr->string expr)))) | ||||
| 
 | ||||
| (define (emacs-batch-edit-file file expr) | ||||
|   "Load FILE in Emacs using batch mode, and execute the elisp code EXPR." | ||||
|   (invoke (%emacs) "--quick" "--batch" | ||||
|           (string-append "--visit=" file) | ||||
|           (format #f "--eval=~S" expr))) | ||||
|           (string-append "--eval=" (expr->string expr)))) | ||||
| 
 | ||||
| (define (emacs-batch-disable-compilation file) | ||||
|   (emacs-batch-edit-file file | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2014 Deck Pickard <deck.r.pickard@gmail.com> | ||||
| ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com> | ||||
| ;;; | ||||
|  | @ -228,17 +228,19 @@ Show what and how will/would be built." | |||
|                                 (thresholds (%disk-space-warning))) | ||||
|   "Display a hint about 'guix gc' if less than THRESHOLD of /gnu/store is | ||||
| available. | ||||
| THRESHOLD is a pair of (ABSOLUTE-THRESHOLD RELATIVE-THRESHOLD)." | ||||
| THRESHOLDS is a pair (ABSOLUTE-THRESHOLD . RELATIVE-THRESHOLD)." | ||||
|   (define GiB (expt 2 30)) | ||||
| 
 | ||||
|   (let* ((stats      (statfs (%store-prefix))) | ||||
|          (block-size (file-system-block-size stats)) | ||||
|          (available  (* block-size (file-system-blocks-available stats))) | ||||
|          (total      (* block-size (file-system-block-count stats))) | ||||
|          (relative-threshold-in-bytes (* total (cadr thresholds))) | ||||
|          (absolute-threshold-in-bytes (* 1024 1024 1024 (car thresholds)))) | ||||
|     (when (< available (min relative-threshold-in-bytes | ||||
|          (absolute-threshold-in-bytes (car thresholds))) | ||||
|     (when (< available (max relative-threshold-in-bytes | ||||
|                             absolute-threshold-in-bytes)) | ||||
|       (warning (G_ "only ~,1f GiB of free space available on ~a~%") | ||||
|                available (%store-prefix)) | ||||
|                (/ available 1. GiB) (%store-prefix)) | ||||
|       (display-hint (format #f (G_ "Consider deleting old profile | ||||
| generations and collecting garbage, along these lines: | ||||
| 
 | ||||
|  |  | |||
|  | @ -201,11 +201,7 @@ way and displaying details about the channel's source code." | |||
|                    (format #t (G_ "    commit: ~a~%") | ||||
|                            (if (supports-hyperlinks?) | ||||
|                                (channel-commit-hyperlink channel commit) | ||||
|                                commit)) | ||||
|                    (when (not (supports-hyperlinks?)) | ||||
|                      (format #t (G_ "    URL: ~a~%") | ||||
|                              (channel-commit-hyperlink channel commit | ||||
|                                                        (lambda (url msg) url)))))) | ||||
|                                commit)))) | ||||
|                 (_ #f))) | ||||
| 
 | ||||
|             ;; Show most recently installed packages last. | ||||
|  | @ -237,12 +233,9 @@ way and displaying details about the channel's source code." | |||
| 
 | ||||
| (define* (channel-commit-hyperlink channel | ||||
|                                    #:optional | ||||
|                                    (commit (channel-commit channel)) | ||||
|                                    (transformer hyperlink)) | ||||
|                                    (commit (channel-commit channel))) | ||||
|   "Return a hyperlink for COMMIT in CHANNEL, using COMMIT as the hyperlink's | ||||
| text.  The hyperlink links to a web view of COMMIT, when available. | ||||
| TRANSFORMER is a procedure of 2 arguments, a URI and text, and returns a | ||||
| string for display." | ||||
| text.  The hyperlink links to a web view of COMMIT, when available." | ||||
|   (let* ((url  (channel-url channel)) | ||||
|          (uri  (string->uri url)) | ||||
|          (host (and uri (uri-host uri)))) | ||||
|  | @ -251,7 +244,7 @@ string for display." | |||
|           (#f | ||||
|            commit) | ||||
|           ((_ template) | ||||
|            (transformer (template url commit) commit))) | ||||
|            (hyperlink (template url commit) commit))) | ||||
|         commit))) | ||||
| 
 | ||||
|  | ||||
|  |  | |||
|  | @ -81,12 +81,15 @@ | |||
|   "Ensure the default profile symlink and directory exist and are writable." | ||||
|   (ensure-profile-directory) | ||||
| 
 | ||||
|   ;; Create ~/.guix-profile if it doesn't exist yet. | ||||
|   ;; Try to create ~/.guix-profile if it doesn't exist yet. | ||||
|   (when (and %user-profile-directory | ||||
|              %current-profile | ||||
|              (not (false-if-exception | ||||
|                    (lstat %user-profile-directory)))) | ||||
|     (symlink %current-profile %user-profile-directory))) | ||||
|     (catch 'system-error | ||||
|       (lambda () | ||||
|         (symlink %current-profile %user-profile-directory)) | ||||
|       (const #t)))) | ||||
| 
 | ||||
| (define (delete-generations store profile generations) | ||||
|   "Delete GENERATIONS from PROFILE. | ||||
|  |  | |||
|  | @ -1638,7 +1638,7 @@ DURATION-RELATION with the current time." | |||
|     (let* ((file   (generation-file-name profile number)) | ||||
|            (link   (if (supports-hyperlinks?) | ||||
|                        (cut file-hyperlink file <>) | ||||
|                        (cut format #f (G_ "~a~%file: ~a") <> file))) | ||||
|                        identity)) | ||||
|            (header (format #f (link (highlight (G_ "Generation ~a\t~a"))) | ||||
|                            number | ||||
|                            (date->string | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -25,8 +25,7 @@ | |||
| ;; Test the JSON mapping machinery used in (guix swh). | ||||
| 
 | ||||
| (define %origin | ||||
|   "{ \"id\": 42, | ||||
|      \"visits_url\": \"/visits/42\", | ||||
|   "{ \"visits_url\": \"/visits/42\", | ||||
|      \"type\": \"git\", | ||||
|      \"url\": \"http://example.org/guix.git\" }") | ||||
| 
 | ||||
|  | @ -48,11 +47,10 @@ | |||
| (test-begin "swh") | ||||
| 
 | ||||
| (test-equal "lookup-origin" | ||||
|   (list 42 "git" "http://example.org/guix.git") | ||||
|   (list "git" "http://example.org/guix.git") | ||||
|   (with-json-result %origin | ||||
|     (let ((origin (lookup-origin "http://example.org/guix.git"))) | ||||
|       (list (origin-id origin) | ||||
|             (origin-type origin) | ||||
|       (list (origin-type origin) | ||||
|             (origin-url origin))))) | ||||
| 
 | ||||
| (test-equal "lookup-origin, not found" | ||||
|  |  | |||
		Reference in a new issue