Merge branch 'master' into staging
commit
a032b4454b
|
@ -73,6 +73,9 @@
|
||||||
(eval . (put 'run-with-state 'scheme-indent-function 1))
|
(eval . (put 'run-with-state 'scheme-indent-function 1))
|
||||||
(eval . (put 'wrap-program 'scheme-indent-function 1))
|
(eval . (put 'wrap-program 'scheme-indent-function 1))
|
||||||
(eval . (put 'with-imported-modules 'scheme-indent-function 1))
|
(eval . (put 'with-imported-modules 'scheme-indent-function 1))
|
||||||
|
(eval . (put 'with-extensions 'scheme-indent-function 1))
|
||||||
|
|
||||||
|
(eval . (put 'with-database 'scheme-indent-function 2))
|
||||||
|
|
||||||
(eval . (put 'call-with-container 'scheme-indent-function 1))
|
(eval . (put 'call-with-container 'scheme-indent-function 1))
|
||||||
(eval . (put 'container-excursion 'scheme-indent-function 1))
|
(eval . (put 'container-excursion 'scheme-indent-function 1))
|
||||||
|
|
101
CODE-OF-CONDUCT
101
CODE-OF-CONDUCT
|
@ -1,51 +1,78 @@
|
||||||
Contributor Code of Conduct
|
Contributor Covenant Code of Conduct
|
||||||
|
|
||||||
Note: In the sequel, "project" refers to GNU Guix, and "project
|
Note: In the sequel, "project" refers to GNU Guix, and "project
|
||||||
maintainer(s)" refers to maintainer(s) of GNU Guix.
|
maintainer(s)" refers to maintainer(s) of GNU Guix.
|
||||||
|
|
||||||
As contributors and maintainers of this project, and in the interest of
|
Our Pledge
|
||||||
fostering an open and welcoming community, we pledge to respect all
|
|
||||||
people who contribute through reporting issues, posting feature
|
In the interest of fostering an open and welcoming environment, we as
|
||||||
requests, updating documentation, submitting pull requests or patches,
|
contributors and maintainers pledge to making participation in our project and
|
||||||
and other activities.
|
our community a harassment-free experience for everyone, regardless of age, body
|
||||||
|
size, disability, ethnicity, gender identity and expression, level of experience,
|
||||||
|
education, socio-economic status, nationality, personal appearance, race,
|
||||||
|
religion, or sexual identity and orientation.
|
||||||
|
|
||||||
|
Our Standards
|
||||||
|
|
||||||
|
Examples of behavior that contributes to creating a positive environment
|
||||||
|
include:
|
||||||
|
|
||||||
|
|
||||||
|
* Using welcoming and inclusive language
|
||||||
|
* Being respectful of differing viewpoints and experiences
|
||||||
|
* Gracefully accepting constructive criticism
|
||||||
|
* Focusing on what is best for the community
|
||||||
|
* Showing empathy towards other community members
|
||||||
|
|
||||||
We are committed to making participation in this project a
|
|
||||||
harassment-free experience for everyone, regardless of level of
|
|
||||||
experience, gender, gender identity and expression, sexual orientation,
|
|
||||||
disability, personal appearance, body size, race, ethnicity, age,
|
|
||||||
religion, or nationality.
|
|
||||||
|
|
||||||
Examples of unacceptable behavior by participants include:
|
Examples of unacceptable behavior by participants include:
|
||||||
|
|
||||||
* The use of sexualized language or imagery
|
|
||||||
* Personal attacks
|
* The use of sexualized language or imagery and unwelcome sexual attention or
|
||||||
* Trolling or insulting/derogatory comments
|
advances
|
||||||
|
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||||
* Public or private harassment
|
* Public or private harassment
|
||||||
* Publishing other's private information, such as physical or electronic
|
* Publishing others’ private information, such as a physical or electronic
|
||||||
addresses, without explicit permission
|
address, without explicit permission
|
||||||
* Other unethical or unprofessional conduct
|
* Other conduct which could reasonably be considered inappropriate in a
|
||||||
|
professional setting
|
||||||
|
|
||||||
Project maintainers have the right and responsibility to remove, edit,
|
|
||||||
or reject comments, commits, code, wiki edits, issues, and other
|
|
||||||
contributions that are not aligned to this Code of Conduct, or to ban
|
|
||||||
temporarily or permanently any contributor for other behaviors that they
|
|
||||||
deem inappropriate, threatening, offensive, or harmful.
|
|
||||||
|
|
||||||
By adopting this Code of Conduct, project maintainers commit themselves
|
Our Responsibilities
|
||||||
to fairly and consistently applying these principles to every aspect of
|
|
||||||
managing this project. Project maintainers who do not follow or enforce
|
|
||||||
the Code of Conduct may be permanently removed from the project team.
|
|
||||||
|
|
||||||
This Code of Conduct applies both within project spaces and in public
|
Project maintainers are responsible for clarifying the standards of acceptable
|
||||||
spaces when an individual is representing the project or its community.
|
behavior and are expected to take appropriate and fair corrective action in
|
||||||
|
response to any instances of unacceptable behavior.
|
||||||
|
|
||||||
Instances of abusive, harassing, or otherwise unacceptable behavior may
|
Project maintainers have the right and responsibility to remove, edit, or
|
||||||
be reported by contacting a project maintainer at guix-maintainers@gnu.org.
|
reject comments, commits, code, wiki edits, issues, and other contributions
|
||||||
All complaints will be reviewed and investigated and will
|
that are not aligned to this Code of Conduct, or to ban temporarily or
|
||||||
result in a response that is deemed necessary and appropriate to the
|
permanently any contributor for other behaviors that they deem inappropriate,
|
||||||
circumstances. Maintainers are obligated to maintain confidentiality
|
threatening, offensive, or harmful.
|
||||||
with regard to the reporter of an incident.
|
|
||||||
|
|
||||||
This Code of Conduct is adapted from the Contributor Covenant
|
Scope
|
||||||
(http://contributor-covenant.org), version 1.3.0, available at
|
|
||||||
http://contributor-covenant.org/version/1/3/0/
|
This Code of Conduct applies both within project spaces and in public spaces
|
||||||
|
when an individual is representing the project or its community. Examples of
|
||||||
|
representing a project or community include using an official project e-mail
|
||||||
|
address, posting via an official social media account, or acting as an appointed
|
||||||
|
representative at an online or offline event. Representation of a project may be
|
||||||
|
further defined and clarified by project maintainers.
|
||||||
|
|
||||||
|
Enforcement
|
||||||
|
|
||||||
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||||
|
reported by contacting the project team at guix-maintainers@gnu.org. All
|
||||||
|
complaints will be reviewed and investigated and will result in a response that
|
||||||
|
is deemed necessary and appropriate to the circumstances. The project team is
|
||||||
|
obligated to maintain confidentiality with regard to the reporter of an incident.
|
||||||
|
Further details of specific enforcement policies may be posted separately.
|
||||||
|
|
||||||
|
Project maintainers who do not follow or enforce the Code of Conduct in good
|
||||||
|
faith may face temporary or permanent repercussions as determined by other
|
||||||
|
members of the project’s leadership.
|
||||||
|
|
||||||
|
Attribution
|
||||||
|
|
||||||
|
This Code of Conduct is adapted from the Contributor Covenant, version 1.4,
|
||||||
|
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
|
||||||
|
|
31
Makefile.am
31
Makefile.am
|
@ -96,6 +96,7 @@ MODULES = \
|
||||||
guix/workers.scm \
|
guix/workers.scm \
|
||||||
guix/zlib.scm \
|
guix/zlib.scm \
|
||||||
guix/build-system.scm \
|
guix/build-system.scm \
|
||||||
|
guix/build-system/android-ndk.scm \
|
||||||
guix/build-system/ant.scm \
|
guix/build-system/ant.scm \
|
||||||
guix/build-system/cargo.scm \
|
guix/build-system/cargo.scm \
|
||||||
guix/build-system/cmake.scm \
|
guix/build-system/cmake.scm \
|
||||||
|
@ -128,6 +129,7 @@ MODULES = \
|
||||||
guix/svn-download.scm \
|
guix/svn-download.scm \
|
||||||
guix/i18n.scm \
|
guix/i18n.scm \
|
||||||
guix/ui.scm \
|
guix/ui.scm \
|
||||||
|
guix/build/android-ndk-build-system.scm \
|
||||||
guix/build/ant-build-system.scm \
|
guix/build/ant-build-system.scm \
|
||||||
guix/build/download.scm \
|
guix/build/download.scm \
|
||||||
guix/build/download-nar.scm \
|
guix/build/download-nar.scm \
|
||||||
|
@ -255,15 +257,27 @@ MODULES += \
|
||||||
|
|
||||||
endif BUILD_DAEMON_OFFLOAD
|
endif BUILD_DAEMON_OFFLOAD
|
||||||
|
|
||||||
|
# Scheme implementation of the build daemon and related functionality.
|
||||||
|
STORE_MODULES = \
|
||||||
|
guix/store/database.scm \
|
||||||
|
guix/store/deduplication.scm
|
||||||
|
|
||||||
|
if HAVE_GUILE_SQLITE3
|
||||||
|
MODULES += $(STORE_MODULES)
|
||||||
|
else
|
||||||
|
MODULES_NOT_COMPILED += $(STORE_MODULES)
|
||||||
|
endif !HAVE_GUILE_SQLITE3
|
||||||
|
|
||||||
# Internal modules with test suite support.
|
# Internal modules with test suite support.
|
||||||
dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
|
dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
|
||||||
|
|
||||||
# Auxiliary files for packages.
|
# Auxiliary files for packages.
|
||||||
AUX_FILES = \
|
AUX_FILES = \
|
||||||
gnu/packages/aux-files/emacs/guix-emacs.el \
|
gnu/packages/aux-files/emacs/guix-emacs.el \
|
||||||
gnu/packages/aux-files/linux-libre/4.16-arm.conf \
|
gnu/packages/aux-files/linux-libre/4.17-arm.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.16-i686.conf \
|
gnu/packages/aux-files/linux-libre/4.17-arm64.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.16-x86_64.conf \
|
gnu/packages/aux-files/linux-libre/4.17-i686.conf \
|
||||||
|
gnu/packages/aux-files/linux-libre/4.17-x86_64.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.14-arm.conf \
|
gnu/packages/aux-files/linux-libre/4.14-arm.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.14-i686.conf \
|
gnu/packages/aux-files/linux-libre/4.14-i686.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.14-x86_64.conf \
|
gnu/packages/aux-files/linux-libre/4.14-x86_64.conf \
|
||||||
|
@ -272,7 +286,8 @@ AUX_FILES = \
|
||||||
gnu/packages/aux-files/linux-libre/4.4-i686.conf \
|
gnu/packages/aux-files/linux-libre/4.4-i686.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.4-x86_64.conf \
|
gnu/packages/aux-files/linux-libre/4.4-x86_64.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.1-i686.conf \
|
gnu/packages/aux-files/linux-libre/4.1-i686.conf \
|
||||||
gnu/packages/aux-files/linux-libre/4.1-x86_64.conf
|
gnu/packages/aux-files/linux-libre/4.1-x86_64.conf \
|
||||||
|
gnu/packages/aux-files/run-in-namespace.c
|
||||||
|
|
||||||
# Templates, examples.
|
# Templates, examples.
|
||||||
EXAMPLES = \
|
EXAMPLES = \
|
||||||
|
@ -375,6 +390,14 @@ SCM_TESTS += \
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if HAVE_GUILE_SQLITE3
|
||||||
|
|
||||||
|
SCM_TESTS += \
|
||||||
|
tests/store-database.scm \
|
||||||
|
tests/store-deduplication.scm
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
SH_TESTS = \
|
SH_TESTS = \
|
||||||
tests/guix-build.sh \
|
tests/guix-build.sh \
|
||||||
tests/guix-download.sh \
|
tests/guix-download.sh \
|
||||||
|
|
17
NEWS
17
NEWS
|
@ -10,6 +10,23 @@ Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
|
||||||
Please send Guix bug reports to bug-guix@gnu.org.
|
Please send Guix bug reports to bug-guix@gnu.org.
|
||||||
|
|
||||||
|
* Changes in 0.15.0 (since 0.14.0)
|
||||||
|
|
||||||
|
** Package management
|
||||||
|
|
||||||
|
*** ‘guix pack’ now supports building SquashFS images
|
||||||
|
*** ‘guix pack’ can now build relocatable tarballs
|
||||||
|
|
||||||
|
** Distribution
|
||||||
|
|
||||||
|
*** New services
|
||||||
|
|
||||||
|
enlightenment
|
||||||
|
|
||||||
|
** Programming interfaces
|
||||||
|
|
||||||
|
*** package-full-name (guix packages) now uses "@" as its delimiter.
|
||||||
|
(<https://bugs.gnu.org/31088>)
|
||||||
* Changes in 0.14.0 (since 0.13.0)
|
* Changes in 0.14.0 (since 0.13.0)
|
||||||
|
|
||||||
** Package management
|
** Package management
|
||||||
|
|
|
@ -184,7 +184,8 @@ person's version identifier."
|
||||||
(date->string (current-date 0) "~Y~m~d.~H"))
|
(date->string (current-date 0) "~Y~m~d.~H"))
|
||||||
|
|
||||||
(define* (build-program source version
|
(define* (build-program source version
|
||||||
#:optional (guile-version (effective-version)))
|
#:optional (guile-version (effective-version))
|
||||||
|
#:key (pull-version 0))
|
||||||
"Return a program that computes the derivation to build Guix from SOURCE."
|
"Return a program that computes the derivation to build Guix from SOURCE."
|
||||||
(define select?
|
(define select?
|
||||||
;; Select every module but (guix config) and non-Guix modules.
|
;; Select every module but (guix config) and non-Guix modules.
|
||||||
|
@ -253,11 +254,14 @@ person's version identifier."
|
||||||
(spin system)))
|
(spin system)))
|
||||||
|
|
||||||
(display
|
(display
|
||||||
(derivation-file-name
|
(and=>
|
||||||
(run-with-store store
|
(run-with-store store
|
||||||
(guix-derivation #$source #$version
|
(guix-derivation #$source #$version
|
||||||
#$guile-version)
|
#$guile-version
|
||||||
#:system system)))))))
|
#:pull-version
|
||||||
|
#$pull-version)
|
||||||
|
#:system system)
|
||||||
|
derivation-file-name))))))
|
||||||
#:module-path (list source))))
|
#:module-path (list source))))
|
||||||
|
|
||||||
;; The procedure below is our return value.
|
;; The procedure below is our return value.
|
||||||
|
@ -266,13 +270,15 @@ person's version identifier."
|
||||||
(guile-version (match ((@ (guile) version))
|
(guile-version (match ((@ (guile) version))
|
||||||
("2.2.2" "2.2.2")
|
("2.2.2" "2.2.2")
|
||||||
(_ (effective-version))))
|
(_ (effective-version))))
|
||||||
|
(pull-version 0)
|
||||||
#:allow-other-keys
|
#:allow-other-keys
|
||||||
#:rest rest)
|
#:rest rest)
|
||||||
"Return a derivation that unpacks SOURCE into STORE and compiles Scheme
|
"Return a derivation that unpacks SOURCE into STORE and compiles Scheme
|
||||||
files."
|
files."
|
||||||
;; Build the build program and then use it as a trampoline to build from
|
;; Build the build program and then use it as a trampoline to build from
|
||||||
;; SOURCE.
|
;; SOURCE.
|
||||||
(mlet %store-monad ((build (build-program source version guile-version))
|
(mlet %store-monad ((build (build-program source version guile-version
|
||||||
|
#:pull-version pull-version))
|
||||||
(system (if system (return system) (current-system))))
|
(system (if system (return system) (current-system))))
|
||||||
(mbegin %store-monad
|
(mbegin %store-monad
|
||||||
(show-what-to-build* (list build))
|
(show-what-to-build* (list build))
|
||||||
|
@ -292,6 +298,9 @@ files."
|
||||||
(return (newline (current-output-port)))
|
(return (newline (current-output-port)))
|
||||||
((store-lift add-temp-root) drv)
|
((store-lift add-temp-root) drv)
|
||||||
(return (read-derivation-from-file drv))))
|
(return (read-derivation-from-file drv))))
|
||||||
|
("#f"
|
||||||
|
;; Unsupported PULL-VERSION.
|
||||||
|
(return #f))
|
||||||
((? string? str)
|
((? string? str)
|
||||||
(error "invalid build result" (list build str))))))))
|
(error "invalid build result" (list build str))))))))
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,8 @@
|
||||||
(and=> (or (getenv "XDG_CONFIG_HOME")
|
(and=> (or (getenv "XDG_CONFIG_HOME")
|
||||||
(and=> (getenv "HOME")
|
(and=> (getenv "HOME")
|
||||||
(cut string-append <> "/.config")))
|
(cut string-append <> "/.config")))
|
||||||
(cut string-append <> "/guix/latest")))
|
(cute string-append <> "/guix/current/share/guile/site/"
|
||||||
|
(effective-version))))
|
||||||
|
|
||||||
(use-modules (guix) (guix ui)
|
(use-modules (guix) (guix ui)
|
||||||
(guix git-download)
|
(guix git-download)
|
||||||
|
@ -43,7 +44,7 @@
|
||||||
(mlet* %store-monad ((source (interned-file source "guix-source"
|
(mlet* %store-monad ((source (interned-file source "guix-source"
|
||||||
#:select? git?
|
#:select? git?
|
||||||
#:recursive? #t))
|
#:recursive? #t))
|
||||||
(drv (build source)))
|
(drv (build source #:pull-version 1)))
|
||||||
(mbegin %store-monad
|
(mbegin %store-monad
|
||||||
(show-what-to-build* (list drv))
|
(show-what-to-build* (list drv))
|
||||||
(built-derivations (list drv))
|
(built-derivations (list drv))
|
||||||
|
|
|
@ -264,7 +264,8 @@ all its dependencies, and ready to be installed on non-GuixSD distributions.")
|
||||||
|
|
||||||
(define job-name
|
(define job-name
|
||||||
;; Return the name of a package's job.
|
;; Return the name of a package's job.
|
||||||
(compose string->symbol package-full-name))
|
(compose string->symbol
|
||||||
|
(cut package-full-name <> "-")))
|
||||||
|
|
||||||
(define package->job
|
(define package->job
|
||||||
(let ((base-packages
|
(let ((base-packages
|
||||||
|
|
|
@ -46,6 +46,7 @@ for SYSTEM. Use VERSION as the version identifier."
|
||||||
`((derivation . ,(derivation-file-name
|
`((derivation . ,(derivation-file-name
|
||||||
(run-with-store store
|
(run-with-store store
|
||||||
(build source #:version version #:system system
|
(build source #:version version #:system system
|
||||||
|
#:pull-version 1
|
||||||
#:guile-version "2.2")))) ;the latest 2.2.x
|
#:guile-version "2.2")))) ;the latest 2.2.x
|
||||||
(description . "Modular Guix")
|
(description . "Modular Guix")
|
||||||
(long-description
|
(long-description
|
||||||
|
|
|
@ -132,6 +132,7 @@ then
|
||||||
|
|
||||||
for file in "$bootstrap_directory"/guile-*
|
for file in "$bootstrap_directory"/guile-*
|
||||||
do
|
do
|
||||||
|
[ -f "$file" ] && \
|
||||||
"@abs_top_builddir@/pre-inst-env" \
|
"@abs_top_builddir@/pre-inst-env" \
|
||||||
guix download "file://$file" > /dev/null
|
guix download "file://$file" > /dev/null
|
||||||
done
|
done
|
||||||
|
|
|
@ -124,6 +124,11 @@ dnl Guile-JSON is used in various places.
|
||||||
GUILE_MODULE_AVAILABLE([have_guile_json], [(json)])
|
GUILE_MODULE_AVAILABLE([have_guile_json], [(json)])
|
||||||
AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])
|
AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])
|
||||||
|
|
||||||
|
dnl Guile-Sqlite3 is used by the (guix store ...) modules.
|
||||||
|
GUIX_CHECK_GUILE_SQLITE3
|
||||||
|
AM_CONDITIONAL([HAVE_GUILE_SQLITE3],
|
||||||
|
[test "x$guix_cv_have_recent_guile_sqlite3" = "xyes"])
|
||||||
|
|
||||||
dnl Make sure we have a full-fledged Guile.
|
dnl Make sure we have a full-fledged Guile.
|
||||||
GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads])
|
GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads])
|
||||||
|
|
||||||
|
|
|
@ -3,17 +3,17 @@
|
||||||
|
|
||||||
Ce projet est un effort coopératif et nous avons besoin de votre aide pour
|
Ce projet est un effort coopératif et nous avons besoin de votre aide pour
|
||||||
le faire grandir ! Contactez-nous sur @email{guix-devel@@gnu.org} et
|
le faire grandir ! Contactez-nous sur @email{guix-devel@@gnu.org} et
|
||||||
@code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les
|
@code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les
|
||||||
rapports de bogues, les correctifs et tout ce qui pourrait aider le
|
rapports de bogues, les correctifs et tout ce qui pourrait aider le projet.
|
||||||
projet. Nous apprécions particulièrement toute aide sur la création de
|
Nous apprécions particulièrement toute aide sur la création de paquets
|
||||||
paquets (@pxref{Consignes d'empaquetage}).
|
(@pxref{Consignes d'empaquetage}).
|
||||||
|
|
||||||
@cindex code de conduite, des contributeurs
|
@cindex code de conduite, des contributeurs
|
||||||
@cindex convention de contribution
|
@cindex convention de contribution
|
||||||
Nous souhaitons fournir un environnement chaleureux, amical et sans
|
Nous souhaitons fournir un environnement chaleureux, amical et sans
|
||||||
harcèlement pour que tout le monde puisse contribuer au mieux de ses
|
harcèlement pour que tout le monde puisse contribuer au mieux de ses
|
||||||
capacités. Pour cela notre projet a une « Convention de contribution »
|
capacités. Pour cela notre projet a une « Convention de contribution »
|
||||||
adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une
|
adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une
|
||||||
version locale dans le fichier @file{CODE-OF-CONDUCT} dans l'arborescence
|
version locale dans le fichier @file{CODE-OF-CONDUCT} dans l'arborescence
|
||||||
des sources.
|
des sources.
|
||||||
|
|
||||||
|
@ -22,7 +22,7 @@ correctifs et leurs communications en ligne ; ils peuvent utiliser n'importe
|
||||||
quel nom ou pseudonyme de leur choix.
|
quel nom ou pseudonyme de leur choix.
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
* Construire depuis Git:: The latest and greatest.
|
* Construire depuis Git:: toujours le plus récent.
|
||||||
* Lancer Guix avant qu'il ne soit installé:: Astuces pour les hackers.
|
* Lancer Guix avant qu'il ne soit installé:: Astuces pour les hackers.
|
||||||
* La configuration parfaite:: Les bons outils.
|
* La configuration parfaite:: Les bons outils.
|
||||||
* Style de code:: Hygiène du contributeur.
|
* Style de code:: Hygiène du contributeur.
|
||||||
|
@ -62,7 +62,7 @@ guix environment guix
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@xref{Invoquer guix environment}, pour plus d'information sur cette
|
@xref{Invoquer guix environment}, pour plus d'information sur cette
|
||||||
commande. On peut ajouter des dépendances supplémentaires avec
|
commande. On peut ajouter des dépendances supplémentaires avec
|
||||||
@option{--ad-hoc} :
|
@option{--ad-hoc} :
|
||||||
|
|
||||||
@example
|
@example
|
||||||
|
@ -70,7 +70,7 @@ guix environment guix --ad-hoc help2man git strace
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
Lancez @command{./bootstrap} pour générer l'infrastructure du système de
|
Lancez @command{./bootstrap} pour générer l'infrastructure du système de
|
||||||
construction avec Autoconf et Automake. Si vous avez une erreur comme :
|
construction avec Autoconf et Automake. Si vous avez une erreur comme :
|
||||||
|
|
||||||
@example
|
@example
|
||||||
configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES
|
configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES
|
||||||
|
@ -78,11 +78,11 @@ configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES
|
||||||
|
|
||||||
@noindent
|
@noindent
|
||||||
cela signifie probablement qu'Autoconf n'a pas pu trouver @file{pkg.m4} qui
|
cela signifie probablement qu'Autoconf n'a pas pu trouver @file{pkg.m4} qui
|
||||||
est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est
|
est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est disponible.
|
||||||
disponible. C'est aussi vrai pour l'ensemble de macros de @file{guile.m4}
|
C'est aussi vrai pour l'ensemble de macros de @file{guile.m4} fournies par
|
||||||
fournies par Guile. Par exemple, si vous avez installé Automake dans
|
Guile. Par exemple, si vous avez installé Automake dans @file{/usr/local},
|
||||||
@file{/usr/local}, il ne cherchera pas les fichiers @file{.m4} dans
|
il ne cherchera pas les fichiers @file{.m4} dans @file{/usr/share}. Dans ce
|
||||||
@file{/usr/share}. Dans ce case vous devez invoquer la commande suivante :
|
case vous devez invoquer la commande suivante :
|
||||||
|
|
||||||
@example
|
@example
|
||||||
export ACLOCAL_PATH=/usr/share/aclocal
|
export ACLOCAL_PATH=/usr/share/aclocal
|
||||||
|
@ -91,13 +91,13 @@ export ACLOCAL_PATH=/usr/share/aclocal
|
||||||
@xref{Macro Search Path,,, automake, The GNU Automake Manual}, pour plus
|
@xref{Macro Search Path,,, automake, The GNU Automake Manual}, pour plus
|
||||||
d'information.
|
d'information.
|
||||||
|
|
||||||
Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de
|
Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de
|
||||||
passer @code{--localstatedir=@var{directory}} où @var{directory} est la
|
passer @code{--localstatedir=@var{directory}} où @var{directory} est la
|
||||||
valeur @code{localstatedir} utilisée par votre installation actuelle
|
valeur @code{localstatedir} utilisée par votre installation actuelle
|
||||||
(@pxref{Le dépôt} pour plus d'informations à ce propos).
|
(@pxref{Le dépôt} pour plus d'informations à ce propos).
|
||||||
|
|
||||||
Finalement, vous devez invoquer @code{make check} pour lancer les tests
|
Finalement, vous devez invoquer @code{make check} pour lancer les tests
|
||||||
(@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil
|
(@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil
|
||||||
aux instructions d'installation (@pxref{Installation}) ou envoyez un message
|
aux instructions d'installation (@pxref{Installation}) ou envoyez un message
|
||||||
à la list @email{guix-devel@@gnu.org}.
|
à la list @email{guix-devel@@gnu.org}.
|
||||||
|
|
||||||
|
@ -106,12 +106,12 @@ aux instructions d'installation (@pxref{Installation}) ou envoyez un message
|
||||||
@section Lancer Guix avant qu'il ne soit installé
|
@section Lancer Guix avant qu'il ne soit installé
|
||||||
|
|
||||||
Pour garder un environnement de travail sain, il est utile de tester les
|
Pour garder un environnement de travail sain, il est utile de tester les
|
||||||
changement localement sans les installer pour de vrai. Pour pouvoir
|
changement localement sans les installer pour de vrai. Pour pouvoir
|
||||||
distinguer votre rôle « d'utilisateur final » de celui parfois haut en
|
distinguer votre rôle « d'utilisateur final » de celui parfois haut en
|
||||||
couleur de « développeur ».
|
couleur de « développeur ».
|
||||||
|
|
||||||
Pour cela, tous les outils en ligne de commande sont utilisables même sans
|
Pour cela, tous les outils en ligne de commande sont utilisables même sans
|
||||||
avoir lancé @code{make install}. Vous devez pour cela préfixer chaque
|
avoir lancé @code{make install}. Vous devez pour cela préfixer chaque
|
||||||
commande par @command{./pre-inst-env} (le script @file{pre-inst-env} se
|
commande par @command{./pre-inst-env} (le script @file{pre-inst-env} se
|
||||||
trouve dans le répertoire de plus haut niveau de l'arborescence des sources
|
trouve dans le répertoire de plus haut niveau de l'arborescence des sources
|
||||||
de Guix) comme cela@footnote{L'option @option{-E} de @command{sudo} garantie
|
de Guix) comme cela@footnote{L'option @option{-E} de @command{sudo} garantie
|
||||||
|
@ -160,12 +160,12 @@ d'environnement nécessaires, dont @env{PATH} et @env{GUILE_LOAD_PATH}.
|
||||||
|
|
||||||
Remarquez que @command{./pre-inst-env guix pull} ne met @emph{pas} à jour
|
Remarquez que @command{./pre-inst-env guix pull} ne met @emph{pas} à jour
|
||||||
l'arborescence des sources locale ; il met seulement à jour le lien
|
l'arborescence des sources locale ; il met seulement à jour le lien
|
||||||
symbolique @file{~/.config/guix/latest} (@pxref{Invoquer guix pull}). Lancez
|
symbolique @file{~/.config/guix/latest} (@pxref{Invoquer guix pull}).
|
||||||
@command{git pull} à la place si vous voulez mettre à jour votre
|
Lancez @command{git pull} à la place si vous voulez mettre à jour votre
|
||||||
arborescence des sources locale@footnote{Si vous voulez paramétrer
|
arborescence des sources locale@footnote{Si vous voulez paramétrer
|
||||||
@command{guix} pour qu'il utilise votre dépôt Git, vous pouvez faire pointer
|
@command{guix} pour qu'il utilise votre dépôt Git, vous pouvez faire pointer
|
||||||
le lien symbolique @file{~/.config/guix/latest} vers le répertoire contenant
|
le lien symbolique @file{~/.config/guix/latest} vers le répertoire contenant
|
||||||
ce dépôt. Si vous le seul utilisateur du système, vous pouvez aussi
|
ce dépôt. Si vous le seul utilisateur du système, vous pouvez aussi
|
||||||
considérer faire pointer le lien symbolique @file{/root/.config/guix/latest}
|
considérer faire pointer le lien symbolique @file{/root/.config/guix/latest}
|
||||||
vers @file{~/.config/guix/latest} ; comme ça root aura toujours la même
|
vers @file{~/.config/guix/latest} ; comme ça root aura toujours la même
|
||||||
commande @command{guix} que votre utilisateur}.
|
commande @command{guix} que votre utilisateur}.
|
||||||
|
@ -176,7 +176,7 @@ commande @command{guix} que votre utilisateur}.
|
||||||
|
|
||||||
La configuration parfaite pour travailler sur Guix est simplement la
|
La configuration parfaite pour travailler sur Guix est simplement la
|
||||||
configuration parfaite pour travailler en Guile (@pxref{Using Guile in
|
configuration parfaite pour travailler en Guile (@pxref{Using Guile in
|
||||||
Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de
|
Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de
|
||||||
mieux qu'un éditeur de texte, vous avez besoin de
|
mieux qu'un éditeur de texte, vous avez besoin de
|
||||||
@url{http://www.gnu.org/software/emacs, Emacs}, amélioré par le superbe
|
@url{http://www.gnu.org/software/emacs, Emacs}, amélioré par le superbe
|
||||||
@url{http://nongnu.org/geiser/, Geiser}.
|
@url{http://nongnu.org/geiser/, Geiser}.
|
||||||
|
@ -185,10 +185,10 @@ Geiser permet le développement interactif et incrémental depuis Emacs : la
|
||||||
compilation du code et son évaluation depuis les buffers, l'accès à la
|
compilation du code et son évaluation depuis les buffers, l'accès à la
|
||||||
documentation en ligne (docstrings), la complétion sensible au contexte,
|
documentation en ligne (docstrings), la complétion sensible au contexte,
|
||||||
@kbd{M-.} pour sauter à la définition d'un objet, un REPL pour tester votre
|
@kbd{M-.} pour sauter à la définition d'un objet, un REPL pour tester votre
|
||||||
code, et bien plus (@pxref{Introduction,,, geiser, Geiser User
|
code, et bien plus (@pxref{Introduction,,, geiser, Geiser User Manual}).
|
||||||
Manual}). Pour travailler confortablement sur Guix, assurez-vous de modifier
|
Pour travailler confortablement sur Guix, assurez-vous de modifier le chemin
|
||||||
le chemin de chargement de Guile pour qu'il trouve les fichiers source de
|
de chargement de Guile pour qu'il trouve les fichiers source de votre dépôt
|
||||||
votre dépôt :
|
:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
;; @r{Si l'extrait est dans ~/src/guix.}
|
;; @r{Si l'extrait est dans ~/src/guix.}
|
||||||
|
@ -196,21 +196,21 @@ votre dépôt :
|
||||||
(add-to-list 'geiser-guile-load-path "~/src/guix"))
|
(add-to-list 'geiser-guile-load-path "~/src/guix"))
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
To actually edit the code, Emacs already has a neat Scheme mode. But in
|
Pour effectivement éditer le code, Emacs a déjà un très bon mode Scheme.
|
||||||
addition to that, you must not miss
|
Mais en plus de ça, vous ne devez pas rater
|
||||||
@url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides
|
@url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. Il fournit des
|
||||||
facilities to directly operate on the syntax tree, such as raising an
|
fonctionnalités pour opérer directement sur l'arbre de syntaxe, comme
|
||||||
s-expression or wrapping it, swallowing or rejecting the following
|
relever une s-expression ou l'envelopper, absorber ou rejeter la
|
||||||
s-expression, etc.
|
s-expression suivante, etc.
|
||||||
|
|
||||||
@cindex extraits de code
|
@cindex extraits de code
|
||||||
@cindex modèles
|
@cindex modèles
|
||||||
@cindex réduire la quantité de code commun
|
@cindex réduire la quantité de code commun
|
||||||
Nous fournissons aussi des modèles pour les messages de commit git communs
|
Nous fournissons aussi des modèles pour les messages de commit git communs
|
||||||
et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces
|
et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces
|
||||||
modèles s'utilisent avec @url{http://joaotavora.github.io/yasnippet/,
|
modèles s'utilisent avec @url{http://joaotavora.github.io/yasnippet/,
|
||||||
YASnippet} pour développer des chaînes courtes de déclenchement en extraits
|
YASnippet} pour développer des chaînes courtes de déclenchement en extraits
|
||||||
de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la
|
de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la
|
||||||
variables @var{yas-snippet-dirs} d'Emacs.
|
variables @var{yas-snippet-dirs} d'Emacs.
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
|
@ -220,14 +220,14 @@ variables @var{yas-snippet-dirs} d'Emacs.
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
Les extraits de messages de commit dépendent de @url{https://magit.vc/,
|
Les extraits de messages de commit dépendent de @url{https://magit.vc/,
|
||||||
Magit} pour afficher les fichiers sélectionnés. Lors de la modification d'un
|
Magit} pour afficher les fichiers sélectionnés. Lors de la modification
|
||||||
message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un
|
d'un message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un
|
||||||
modèle de message de commit pour ajouter un paquet ; tapez @code{update}
|
modèle de message de commit pour ajouter un paquet ; tapez @code{update}
|
||||||
suivi de @kbd{TAB} pour insérer un modèle pour la mise à jour d'un paquet.
|
suivi de @kbd{TAB} pour insérer un modèle pour la mise à jour d'un paquet.
|
||||||
|
|
||||||
L'extrait principal pour @code{scheme-mode} est lancé en tapant
|
L'extrait principal pour @code{scheme-mode} est lancé en tapant
|
||||||
@code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de
|
@code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de
|
||||||
déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait
|
déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait
|
||||||
@code{origin} lui-même peut aussi insérer des chaînes de déclenchement qui
|
@code{origin} lui-même peut aussi insérer des chaînes de déclenchement qui
|
||||||
finissent sur @code{…}, qui peuvent aussi être étendues.
|
finissent sur @code{…}, qui peuvent aussi être étendues.
|
||||||
|
|
||||||
|
@ -236,7 +236,7 @@ finissent sur @code{…}, qui peuvent aussi être étendues.
|
||||||
@section Style de code
|
@section Style de code
|
||||||
|
|
||||||
En général notre code suit le Standard de Code GNU (@pxref{Top,,, standards,
|
En général notre code suit le Standard de Code GNU (@pxref{Top,,, standards,
|
||||||
GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc
|
GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc
|
||||||
voici quelques règles supplémentaires.
|
voici quelques règles supplémentaires.
|
||||||
|
|
||||||
@menu
|
@menu
|
||||||
|
@ -250,7 +250,7 @@ voici quelques règles supplémentaires.
|
||||||
@node Paradigme de programmation
|
@node Paradigme de programmation
|
||||||
@subsection Paradigme de programmation
|
@subsection Paradigme de programmation
|
||||||
|
|
||||||
Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le
|
Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le
|
||||||
code qui s'occupe des entrées-sorties est une exception ainsi que les
|
code qui s'occupe des entrées-sorties est une exception ainsi que les
|
||||||
procédures qui implémentent des concepts bas-niveau comme la procédure
|
procédures qui implémentent des concepts bas-niveau comme la procédure
|
||||||
@code{memoize}.
|
@code{memoize}.
|
||||||
|
@ -259,8 +259,8 @@ procédures qui implémentent des concepts bas-niveau comme la procédure
|
||||||
@subsection Modules
|
@subsection Modules
|
||||||
|
|
||||||
Les modules Guile qui sont sensés être utilisés du côté de la construction
|
Les modules Guile qui sont sensés être utilisés du côté de la construction
|
||||||
doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne
|
doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne
|
||||||
doivent pas se référer à d'autres modules Guix ou GNU. Cependant il est
|
doivent pas se référer à d'autres modules Guix ou GNU@. Cependant il est
|
||||||
correct pour un module « côté hôte » de dépendre d'un module coté
|
correct pour un module « côté hôte » de dépendre d'un module coté
|
||||||
construction.
|
construction.
|
||||||
|
|
||||||
|
@ -272,13 +272,13 @@ l'espace de nom @code{(gnu @dots{})} plutôt que @code{(guix @dots{})}.
|
||||||
|
|
||||||
La tendance en Lisp classique est d'utiliser des listes pour tout
|
La tendance en Lisp classique est d'utiliser des listes pour tout
|
||||||
représenter et de naviguer dedans « à la main ( avec @code{car}, @code{cdr},
|
représenter et de naviguer dedans « à la main ( avec @code{car}, @code{cdr},
|
||||||
@code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style,
|
@code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style,
|
||||||
notamment le fait qu'il soit dur à lire, source d'erreur et un obstacle aux
|
notamment le fait qu'il soit dur à lire, source d'erreur et un obstacle aux
|
||||||
rapports d'erreur bien typés.
|
rapports d'erreur bien typés.
|
||||||
|
|
||||||
Le code de Guix devrait définir des types de données appropriées (par
|
Le code de Guix devrait définir des types de données appropriées (par
|
||||||
exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes. En
|
exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes.
|
||||||
plus, il devrait utiliser la recherche de motifs, via le module Guile
|
En plus, il devrait utiliser la recherche de motifs, via le module Guile
|
||||||
@code{(ice-9 match)}, surtout pour rechercher dans des listes.
|
@code{(ice-9 match)}, surtout pour rechercher dans des listes.
|
||||||
|
|
||||||
@node Formatage du code
|
@node Formatage du code
|
||||||
|
@ -287,22 +287,22 @@ plus, il devrait utiliser la recherche de motifs, via le module Guile
|
||||||
@cindex formater le code
|
@cindex formater le code
|
||||||
@cindex style de code
|
@cindex style de code
|
||||||
Lorsque nous écrivons du code Scheme, nous suivons la sagesse commune aux
|
Lorsque nous écrivons du code Scheme, nous suivons la sagesse commune aux
|
||||||
programmeurs Scheme. En général, nous suivons les
|
programmeurs Scheme. En général, nous suivons les
|
||||||
@url{http://mumble.net/~campbell/scheme/style.txt, règles de style de
|
@url{http://mumble.net/~campbell/scheme/style.txt, règles de style de
|
||||||
Riastradh}. Ce document décrit aussi les conventions utilisées dans le code
|
Riastradh}. Ce document décrit aussi les conventions utilisées dans le code
|
||||||
de Guile. Il est bien pensé et bien écrit, alors n'hésitez pas à le lire.
|
de Guile. Il est bien pensé et bien écrit, alors n'hésitez pas à le lire.
|
||||||
|
|
||||||
Certaines formes spéciales introduites dans Guix comme la macro
|
Certaines formes spéciales introduites dans Guix comme la macro
|
||||||
@code{substitute*} ont des règles d'indentation spécifiques. Elles sont
|
@code{substitute*} ont des règles d'indentation spécifiques. Elles sont
|
||||||
définies dans le fichier @file{.dir-locals.el} qu'Emacs utilise
|
définies dans le fichier @file{.dir-locals.el} qu'Emacs utilise
|
||||||
automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode
|
automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode
|
||||||
@code{guix-devel-mode} qui indente et colore le code Guix correctement
|
@code{guix-devel-mode} qui indente et colore le code Guix correctement
|
||||||
(@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual}).
|
(@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual}).
|
||||||
|
|
||||||
@cindex indentation, du code
|
@cindex indentation, du code
|
||||||
@cindex formatage, du code
|
@cindex formatage, du code
|
||||||
Si vous n'utilisez pas Emacs, assurez-vous que votre éditeur connaisse ces
|
Si vous n'utilisez pas Emacs, assurez-vous que votre éditeur connaisse ces
|
||||||
règles. Pour indenter automatiquement une définition de paquet, vous pouvez
|
règles. Pour indenter automatiquement une définition de paquet, vous pouvez
|
||||||
aussi lancer :
|
aussi lancer :
|
||||||
|
|
||||||
@example
|
@example
|
||||||
|
@ -311,16 +311,24 @@ aussi lancer :
|
||||||
|
|
||||||
@noindent
|
@noindent
|
||||||
Cela indente automatiquement la définition de @var{package} dans
|
Cela indente automatiquement la définition de @var{package} dans
|
||||||
@file{gnu/packages/@var{file}.scm} en lançant Emacs en mode commande. Pour
|
@file{gnu/packages/@var{file}.scm} en lançant Emacs en mode commande. Pour
|
||||||
indenter un fichier complet, n'indiquez pas de second argument :
|
indenter un fichier complet, n'indiquez pas de second argument :
|
||||||
|
|
||||||
@example
|
@example
|
||||||
./etc/indent-code.el gnu/services/@var{file}.scm
|
./etc/indent-code.el gnu/services/@var{file}.scm
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
@cindex Vim, édition de code Scheme
|
||||||
|
Si vous éditez du code avec Vim, nous recommandons de lancer @code{:set
|
||||||
|
autoindent} pour que votre code soit automatiquement indenté au moment où
|
||||||
|
vous l'entrez. En plus,
|
||||||
|
@uref{https://www.vim.org/scripts/script.php?script_id=3998,
|
||||||
|
@code{paredit.vim}} peut vous aider à gérer toutes ces parenthèses.
|
||||||
|
|
||||||
Nous demandons que toutes les procédure de premier niveau contiennent une
|
Nous demandons que toutes les procédure de premier niveau contiennent une
|
||||||
chaîne de documentation. Ce pré-requis peut être relâché pour les procédures
|
chaîne de documentation. Ce pré-requis peut être relâché pour les
|
||||||
privées simples dans l'espace de nom @code{(guix build @dots{})} cependant.
|
procédures privées simples dans l'espace de nom @code{(guix build @dots{})}
|
||||||
|
cependant.
|
||||||
|
|
||||||
Les procédures ne devraient pas avoir plus de quatre paramètres
|
Les procédures ne devraient pas avoir plus de quatre paramètres
|
||||||
positionnés. Utilisez des paramètres par mot-clefs pour les procédures qui
|
positionnés. Utilisez des paramètres par mot-clefs pour les procédures qui
|
||||||
|
@ -330,14 +338,14 @@ prennent plus de quatre paramètres.
|
||||||
@node Envoyer des correctifs
|
@node Envoyer des correctifs
|
||||||
@section Envoyer des correctifs
|
@section Envoyer des correctifs
|
||||||
|
|
||||||
Le développement se fait avec le système de contrôle de version Git. Ainsi,
|
Le développement se fait avec le système de contrôle de version Git. Ainsi,
|
||||||
l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les
|
l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les
|
||||||
contributions sous forme de correctifs produits par @code{git format-patch}
|
contributions sous forme de correctifs produits par @code{git format-patch}
|
||||||
envoyés sur la liste de diffusion @email{guix-patches@@gnu.org}.
|
envoyés sur la liste de diffusion @email{guix-patches@@gnu.org}.
|
||||||
|
|
||||||
Cette liste de diffusion est gérée par une instance Debbugs accessible à
|
Cette liste de diffusion est gérée par une instance Debbugs accessible à
|
||||||
l'adresse @uref{https://bugs.gnu.org/guix-patches}, qui nous permet de
|
l'adresse @uref{https://bugs.gnu.org/guix-patches}, qui nous permet de
|
||||||
suivre les soumissions. Chaque message envoyé à cette liste se voit
|
suivre les soumissions. Chaque message envoyé à cette liste se voit
|
||||||
attribuer un numéro de suivi ; les gens peuvent ensuite répondre à cette
|
attribuer un numéro de suivi ; les gens peuvent ensuite répondre à cette
|
||||||
soumission en envoyant un courriel à @code{@var{NNN}@@debbugs.gnu.org}, où
|
soumission en envoyant un courriel à @code{@var{NNN}@@debbugs.gnu.org}, où
|
||||||
@var{NNN} est le numéro de suivi (@pxref{Envoyer une série de correctifs}).
|
@var{NNN} est le numéro de suivi (@pxref{Envoyer une série de correctifs}).
|
||||||
|
@ -352,13 +360,13 @@ paquet, veuillez vérifier cette check-list :
|
||||||
@enumerate
|
@enumerate
|
||||||
@item
|
@item
|
||||||
Si les auteurs du paquet logiciel fournissent une signature cryptographique
|
Si les auteurs du paquet logiciel fournissent une signature cryptographique
|
||||||
pour l'archive, faîtes un effort pour vérifier l'authenticité de
|
pour l'archive, faîtes un effort pour vérifier l'authenticité de l'archive.
|
||||||
l'archive. Pour un fichier de signature GPG détaché, cela se fait avec la
|
Pour un fichier de signature GPG détaché, cela se fait avec la commande
|
||||||
commande @code{gpg --verify}.
|
@code{gpg --verify}.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Prenez un peu de temps pour fournir un synopsis et une description adéquats
|
Prenez un peu de temps pour fournir un synopsis et une description adéquats
|
||||||
pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes
|
pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes
|
||||||
directrices.
|
directrices.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
|
@ -376,9 +384,9 @@ Assurez-vous que le paquet n'utilise pas de copie groupée d'un logiciel déjà
|
||||||
disponible dans un paquet séparé.
|
disponible dans un paquet séparé.
|
||||||
|
|
||||||
Parfois, les paquets incluent des copie du code source de leurs dépendances
|
Parfois, les paquets incluent des copie du code source de leurs dépendances
|
||||||
pour le confort de leurs utilisateurs. Cependant, en tant que distribution,
|
pour le confort de leurs utilisateurs. Cependant, en tant que distribution,
|
||||||
nous voulons nous assurer que ces paquets utilisent bien les copient que
|
nous voulons nous assurer que ces paquets utilisent bien les copient que
|
||||||
nous avons déjà dans la distribution si elles existent. Cela améliore
|
nous avons déjà dans la distribution si elles existent. Cela améliore
|
||||||
l'utilisation des ressources (la dépendance n'est construite et stockée
|
l'utilisation des ressources (la dépendance n'est construite et stockée
|
||||||
qu'une seule fois) et permet à la distribution de faire des changements
|
qu'une seule fois) et permet à la distribution de faire des changements
|
||||||
transversaux comme appliquer des correctifs de sécurité pour un paquet donné
|
transversaux comme appliquer des correctifs de sécurité pour un paquet donné
|
||||||
|
@ -386,8 +394,8 @@ depuis un unique emplacement et qu'ils affectent tout le système, ce
|
||||||
qu'empêchent les copies groupées.
|
qu'empêchent les copies groupées.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Regardez le profile rapporté par @command{guix size} (@pxref{Invoquer guix size}). Cela vous permettra de remarquer des références à d'autres paquets
|
Regardez le profile rapporté par @command{guix size} (@pxref{Invoquer guix size}). Cela vous permettra de remarquer des références à d'autres paquets
|
||||||
qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le
|
qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le
|
||||||
paquet (@pxref{Des paquets avec plusieurs résultats}) et quelle dépendance
|
paquet (@pxref{Des paquets avec plusieurs résultats}) et quelle dépendance
|
||||||
facultative utiliser.
|
facultative utiliser.
|
||||||
|
|
||||||
|
@ -413,27 +421,27 @@ principes :
|
||||||
branche @code{master} (changements non-disruptifs).
|
branche @code{master} (changements non-disruptifs).
|
||||||
|
|
||||||
@item entre 300 et 1 200 paquets dépendants
|
@item entre 300 et 1 200 paquets dépendants
|
||||||
branche @code{staging} (changemets non-disruptifs). Cette branche devrait
|
branche @code{staging} (changemets non-disruptifs). Cette branche devrait
|
||||||
être fusionnées dans @code{master} tous les 3 semaines. Les changements par
|
être fusionnées dans @code{master} tous les 3 semaines. Les changements par
|
||||||
thèmes (par exemple une mise à jour de la pile GNOME) peuvent aller dans une
|
thèmes (par exemple une mise à jour de la pile GNOME) peuvent aller dans une
|
||||||
branche spécifique (disons, @code{gnome-updates}).
|
branche spécifique (disons, @code{gnome-updates}).
|
||||||
|
|
||||||
@item plus de 1 200 paquets dépendants
|
@item plus de 1 200 paquets dépendants
|
||||||
branche @code{core-updates} (peut inclure des changements majeurs et
|
branche @code{core-updates} (peut inclure des changements majeurs et
|
||||||
potentiellement disruptifs). Cette branche devrait être fusionnée dans
|
potentiellement disruptifs). Cette branche devrait être fusionnée dans
|
||||||
@code{master} tous les 2,5 mois environ.
|
@code{master} tous les 2,5 mois environ.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
Toutes ces branches sont gérées par notre ferme de construction et
|
Toutes ces branches sont gérées par notre ferme de construction et
|
||||||
fusionnées dans @code{master} une fois que tout a été construit
|
fusionnées dans @code{master} une fois que tout a été construit
|
||||||
correctement. Cela nous permet de corriger des problèmes avant qu'ils
|
correctement. Cela nous permet de corriger des problèmes avant qu'ils
|
||||||
n'atteignent les utilisateurs et réduit la fenêtre pendant laquelle les
|
n'atteignent les utilisateurs et réduit la fenêtre pendant laquelle les
|
||||||
binaires pré-construits ne sont pas disponibles.
|
binaires pré-construits ne sont pas disponibles.
|
||||||
|
|
||||||
@item
|
@item
|
||||||
@cindex déterminisme, du processus de construction
|
@cindex déterminisme, du processus de construction
|
||||||
@cindex construction reproductibles, vérification
|
@cindex construction reproductibles, vérification
|
||||||
Vérifiez si le processus de construction du paquet est déterministe. Cela
|
Vérifiez si le processus de construction du paquet est déterministe. Cela
|
||||||
signifie typiquement vérifier qu'une construction indépendante du paquet
|
signifie typiquement vérifier qu'une construction indépendante du paquet
|
||||||
renvoie exactement le même résultat que vous avez obtenu, bit à bit.
|
renvoie exactement le même résultat que vous avez obtenu, bit à bit.
|
||||||
|
|
||||||
|
@ -449,10 +457,10 @@ comme l'horodatage ou des sorties générées aléatoirement dans le résultat d
|
||||||
la construction.
|
la construction.
|
||||||
|
|
||||||
Une autre option consiste à utiliser @command{guix challenge}
|
Une autre option consiste à utiliser @command{guix challenge}
|
||||||
(@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois
|
(@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois
|
||||||
que les paquets ont été commités et construits par @code{hydra.gnu.org} pour
|
que les paquets ont été commités et construits par @code{hydra.gnu.org} pour
|
||||||
vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une
|
vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une
|
||||||
autre machine qui peut le construire et lancez @command{guix publish}. Puis
|
autre machine qui peut le construire et lancez @command{guix publish}. Puis
|
||||||
la machine distante est sûrement différente de la vôtre, cela peut trouver
|
la machine distante est sûrement différente de la vôtre, cela peut trouver
|
||||||
des problèmes de non-déterminisme liés au matériel — par exemple utiliser
|
des problèmes de non-déterminisme liés au matériel — par exemple utiliser
|
||||||
une extension du jeu d'instruction — ou du noyau du système d'exploitation —
|
une extension du jeu d'instruction — ou du noyau du système d'exploitation —
|
||||||
|
@ -466,8 +474,8 @@ neutre lorsque vous vous référez à des personnes, comme le
|
||||||
|
|
||||||
@item
|
@item
|
||||||
Vérifiez que votre correctif contienne seulement un ensemble de changements
|
Vérifiez que votre correctif contienne seulement un ensemble de changements
|
||||||
liés. Grouper des changements non liés ensemble rend la revue plus difficile
|
liés. Grouper des changements non liés ensemble rend la revue plus
|
||||||
et plus lente.
|
difficile et plus lente.
|
||||||
|
|
||||||
Ajouter plusieurs paquet ou une mise à jour d'un paquet avec des corrections
|
Ajouter plusieurs paquet ou une mise à jour d'un paquet avec des corrections
|
||||||
dans ce paquet sont des exemples de changements sans rapport.
|
dans ce paquet sont des exemples de changements sans rapport.
|
||||||
|
@ -480,10 +488,10 @@ du code}).
|
||||||
@end enumerate
|
@end enumerate
|
||||||
|
|
||||||
Lorsque vous envoyez un correctif à la liste de diffusion, utilisez
|
Lorsque vous envoyez un correctif à la liste de diffusion, utilisez
|
||||||
@samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de
|
@samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de
|
||||||
courriel ou la commande @command{git send-email} (@pxref{Envoyer une série
|
courriel ou la commande @command{git send-email} (@pxref{Envoyer une série
|
||||||
de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit
|
de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit
|
||||||
en ligne, soit en pièce-jointe MIME. Nous vous conseillons de faire
|
en ligne, soit en pièce-jointe MIME@. Nous vous conseillons de faire
|
||||||
attention si votre client de courriel change par exemple les retours à la
|
attention si votre client de courriel change par exemple les retours à la
|
||||||
ligne ou l'indentation, ce qui peut casser les correctifs.
|
ligne ou l'indentation, ce qui peut casser les correctifs.
|
||||||
|
|
||||||
|
@ -497,9 +505,9 @@ Lorsqu'un bogue est résolu, veuillez fermer le fil en envoyant un courriel à
|
||||||
@cindex @code{git-send-email}
|
@cindex @code{git-send-email}
|
||||||
|
|
||||||
@c Debbugs bug: https://debbugs.gnu.org/db/15/15361.html
|
@c Debbugs bug: https://debbugs.gnu.org/db/15/15361.html
|
||||||
Lorsque vous envoyez une série de correctifs (p.e. avec @code{git
|
Lorsque vous envoyez une série de correctifs (p.@@:: ex.@: avec @code{git
|
||||||
send-email}), envoyez d'abord une premier message à
|
send-email}), envoyez d'abord une premier message à
|
||||||
@email{guix-patches@@gnu.org} puis envoyez le reste des correctifs à
|
@email{guix-patches@@gnu.org} puis envoyez le reste des correctifs à
|
||||||
@email{@var{NNN}@@debbugs.gnu.org} pour vous assurer qu'ils seront groupés
|
@email{@var{NNN}@@debbugs.gnu.org} pour vous assurer qu'ils seront groupés
|
||||||
ensemble. Voyez @uref{https://debbugs.gnu.org/Advanced.html, la
|
ensemble. Voyez @uref{https://debbugs.gnu.org/Advanced.html, la
|
||||||
documentation de Debbugs} pour plus d'informations.
|
documentation de Debbugs} pour plus d'informations.
|
||||||
|
|
|
@ -155,15 +155,9 @@ The @command{pre-inst-env} script sets up all the environment variables
|
||||||
necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}.
|
necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}.
|
||||||
|
|
||||||
Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the
|
Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the
|
||||||
local source tree; it simply updates the @file{~/.config/guix/latest}
|
local source tree; it simply updates the @file{~/.config/guix/current}
|
||||||
symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if
|
symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if
|
||||||
you want to upgrade your local source tree.@footnote{If you would like
|
you want to upgrade your local source tree.
|
||||||
to set up @command{guix} to use your Git checkout, you can point the
|
|
||||||
@file{~/.config/guix/latest} symlink to your Git checkout directory.
|
|
||||||
If you are the sole user of your system, you may also consider pointing
|
|
||||||
the @file{/root/.config/guix/latest} symlink to point to
|
|
||||||
@file{~/.config/guix/latest}; this way it will always use the same
|
|
||||||
@command{guix} as your user does.}
|
|
||||||
|
|
||||||
|
|
||||||
@node The Perfect Setup
|
@node The Perfect Setup
|
||||||
|
|
4797
doc/guix.fr.texi
4797
doc/guix.fr.texi
File diff suppressed because it is too large
Load Diff
513
doc/guix.texi
513
doc/guix.texi
|
@ -47,7 +47,8 @@ Copyright @copyright{} 2017, 2018 Arun Isaac@*
|
||||||
Copyright @copyright{} 2017 nee@*
|
Copyright @copyright{} 2017 nee@*
|
||||||
Copyright @copyright{} 2018 Rutger Helling@*
|
Copyright @copyright{} 2018 Rutger Helling@*
|
||||||
Copyright @copyright{} 2018 Oleg Pykhalov@*
|
Copyright @copyright{} 2018 Oleg Pykhalov@*
|
||||||
Copyright @copyright{} 2018 Mike Gerwitz
|
Copyright @copyright{} 2018 Mike Gerwitz@*
|
||||||
|
Copyright @copyright{} 2018 Pierre-Antoine Rouby
|
||||||
|
|
||||||
Permission is granted to copy, distribute and/or modify this document
|
Permission is granted to copy, distribute and/or modify this document
|
||||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||||
|
@ -235,6 +236,7 @@ Services
|
||||||
* X Window:: Graphical display.
|
* X Window:: Graphical display.
|
||||||
* Printing Services:: Local and remote printer support.
|
* Printing Services:: Local and remote printer support.
|
||||||
* Desktop Services:: D-Bus and desktop services.
|
* Desktop Services:: D-Bus and desktop services.
|
||||||
|
* Sound Services:: ALSA and Pulseaudio services.
|
||||||
* Database Services:: SQL databases, key-value stores, etc.
|
* Database Services:: SQL databases, key-value stores, etc.
|
||||||
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
||||||
* Messaging Services:: Messaging services.
|
* Messaging Services:: Messaging services.
|
||||||
|
@ -2741,11 +2743,39 @@ Any user can update their Guix copy using @command{guix pull}, and the
|
||||||
effect is limited to the user who run @command{guix pull}. For
|
effect is limited to the user who run @command{guix pull}. For
|
||||||
instance, when user @code{root} runs @command{guix pull}, this has no
|
instance, when user @code{root} runs @command{guix pull}, this has no
|
||||||
effect on the version of Guix that user @code{alice} sees, and vice
|
effect on the version of Guix that user @code{alice} sees, and vice
|
||||||
versa@footnote{Under the hood, @command{guix pull} updates the
|
versa.
|
||||||
@file{~/.config/guix/latest} symbolic link to point to the latest Guix,
|
|
||||||
and the @command{guix} command loads code from there. Currently, the
|
The result of running @command{guix pull} is a @dfn{profile} available
|
||||||
only way to roll back an invocation of @command{guix pull} is to
|
under @file{~/.config/guix/current} containing the latest Guix. Thus,
|
||||||
manually update this symlink to point to the previous Guix.}.
|
make sure to add it to the beginning of your search path so that you use
|
||||||
|
the latest version, and similarly for the Info manual
|
||||||
|
(@pxref{Documentation}):
|
||||||
|
|
||||||
|
@example
|
||||||
|
export PATH="$HOME/.config/guix/current/bin:$PATH"
|
||||||
|
export INFOPATH="$HOME/.config/guix/current/share/info:$INFOPATH"
|
||||||
|
@end example
|
||||||
|
|
||||||
|
This @code{~/.config/guix/current} profile works like any other profile
|
||||||
|
created by @command{guix package} (@pxref{Invoking guix package}). That
|
||||||
|
is, you can list generations, roll back to the previous
|
||||||
|
generation---i.e., the previous Guix---and so on:
|
||||||
|
|
||||||
|
@example
|
||||||
|
$ guix package -p ~/.config/guix/current -l
|
||||||
|
Generation 1 May 25 2018 10:06:41
|
||||||
|
guix 221951a out /gnu/store/i4dfk7vw5k112s49jrhl6hwsfnh6wr7l-guix-221951af4
|
||||||
|
|
||||||
|
Generation 2 May 27 2018 19:07:47
|
||||||
|
+ guix 2fbae00 out /gnu/store/44cv9hyvxg34xf5kblf5dz57hc52y4bm-guix-2fbae006f
|
||||||
|
- guix 221951a out /gnu/store/i4dfk7vw5k112s49jrhl6hwsfnh6wr7l-guix-221951af4
|
||||||
|
|
||||||
|
Generation 3 May 30 2018 16:11:39 (current)
|
||||||
|
+ guix a076f19 out /gnu/store/332czkicwwg6lc3x4aqbw5q2mq12s7fj-guix-a076f1990
|
||||||
|
- guix 2fbae00 out /gnu/store/44cv9hyvxg34xf5kblf5dz57hc52y4bm-guix-2fbae006f
|
||||||
|
$ guix package -p ~/.config/guix/current --roll-back
|
||||||
|
switched from generation 3 to 2
|
||||||
|
@end example
|
||||||
|
|
||||||
The @command{guix pull} command is usually invoked with no arguments,
|
The @command{guix pull} command is usually invoked with no arguments,
|
||||||
but it supports the following options:
|
but it supports the following options:
|
||||||
|
@ -2833,6 +2863,16 @@ guix pack -S /opt/gnu/bin=bin guile emacs geiser
|
||||||
@noindent
|
@noindent
|
||||||
That way, users can happily type @file{/opt/gnu/bin/guile} and enjoy.
|
That way, users can happily type @file{/opt/gnu/bin/guile} and enjoy.
|
||||||
|
|
||||||
|
@cindex relocatable binaries, with @command{guix pack}
|
||||||
|
What if the recipient of your pack does not have root privileges on
|
||||||
|
their machine, and thus cannot unpack it in the root file system? In
|
||||||
|
that case, you will want to use the @code{--relocatable} option (see
|
||||||
|
below). This option produces @dfn{relocatable binaries}, meaning they
|
||||||
|
they can be placed anywhere in the file system hierarchy: in the example
|
||||||
|
above, users can unpack your tarball in their home directory and
|
||||||
|
directly run @file{./opt/gnu/bin/guile}.
|
||||||
|
|
||||||
|
@cindex Docker, build an image with guix pack
|
||||||
Alternatively, you can produce a pack in the Docker image format using
|
Alternatively, you can produce a pack in the Docker image format using
|
||||||
the following command:
|
the following command:
|
||||||
|
|
||||||
|
@ -2846,6 +2886,22 @@ command. See the
|
||||||
@uref{https://docs.docker.com/engine/reference/commandline/load/, Docker
|
@uref{https://docs.docker.com/engine/reference/commandline/load/, Docker
|
||||||
documentation} for more information.
|
documentation} for more information.
|
||||||
|
|
||||||
|
@cindex Singularity, build an image with guix pack
|
||||||
|
@cindex SquashFS, build an image with guix pack
|
||||||
|
Yet another option is to produce a SquashFS image with the following
|
||||||
|
command:
|
||||||
|
|
||||||
|
@example
|
||||||
|
guix pack -f squashfs guile emacs geiser
|
||||||
|
@end example
|
||||||
|
|
||||||
|
@noindent
|
||||||
|
The result is a SquashFS file system image that can either be mounted or
|
||||||
|
directly be used as a file system container image with the
|
||||||
|
@uref{http://singularity.lbl.gov, Singularity container execution
|
||||||
|
environment}, using commands like @command{singularity shell} or
|
||||||
|
@command{singularity exec}.
|
||||||
|
|
||||||
Several command-line options allow you to customize your pack:
|
Several command-line options allow you to customize your pack:
|
||||||
|
|
||||||
@table @code
|
@table @code
|
||||||
|
@ -2864,8 +2920,46 @@ specified binaries and symlinks.
|
||||||
This produces a tarball that follows the
|
This produces a tarball that follows the
|
||||||
@uref{https://github.com/docker/docker/blob/master/image/spec/v1.2.md,
|
@uref{https://github.com/docker/docker/blob/master/image/spec/v1.2.md,
|
||||||
Docker Image Specification}.
|
Docker Image Specification}.
|
||||||
|
|
||||||
|
@item squashfs
|
||||||
|
This produces a SquashFS image containing all the specified binaries and
|
||||||
|
symlinks, as well as empty mount points for virtual file systems like
|
||||||
|
procfs.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
|
@item --relocatable
|
||||||
|
@itemx -R
|
||||||
|
Produce @dfn{relocatable binaries}---i.e., binaries that can be placed
|
||||||
|
anywhere in the file system hierarchy and run from there. For example,
|
||||||
|
if you create a pack containing Bash with:
|
||||||
|
|
||||||
|
@example
|
||||||
|
guix pack -R -S /mybin=bin bash
|
||||||
|
@end example
|
||||||
|
|
||||||
|
@noindent
|
||||||
|
... you can copy that pack to a machine that lacks Guix, and from your
|
||||||
|
home directory as a normal user, run:
|
||||||
|
|
||||||
|
@example
|
||||||
|
tar xf pack.tar.gz
|
||||||
|
./mybin/sh
|
||||||
|
@end example
|
||||||
|
|
||||||
|
@noindent
|
||||||
|
In that shell, if you type @code{ls /gnu/store}, you'll notice that
|
||||||
|
@file{/gnu/store} shows up and contains all the dependencies of
|
||||||
|
@code{bash}, even though the machine actually lacks @file{/gnu/store}
|
||||||
|
altogether! That is probably the simplest way to deploy Guix-built
|
||||||
|
software on a non-Guix machine.
|
||||||
|
|
||||||
|
There's a gotcha though: this technique relies on the @dfn{user
|
||||||
|
namespace} feature of the kernel Linux, which allows unprivileged users
|
||||||
|
to mount or change root. Old versions of Linux did not support it, and
|
||||||
|
some GNU/Linux distributions turn it off; on these systems, programs
|
||||||
|
from the pack @emph{will fail to run}, unless they are unpacked in the
|
||||||
|
root file system.
|
||||||
|
|
||||||
@item --expression=@var{expr}
|
@item --expression=@var{expr}
|
||||||
@itemx -e @var{expr}
|
@itemx -e @var{expr}
|
||||||
Consider the package @var{expr} evaluates to.
|
Consider the package @var{expr} evaluates to.
|
||||||
|
@ -3749,6 +3843,25 @@ that should be run during the @code{build} phase. By default the
|
||||||
|
|
||||||
@end defvr
|
@end defvr
|
||||||
|
|
||||||
|
@defvr {Scheme Variable} android-ndk-build-system
|
||||||
|
@cindex Android distribution
|
||||||
|
@cindex Android NDK build system
|
||||||
|
This variable is exported by @code{(guix build-system android-ndk)}. It
|
||||||
|
implements a build procedure for Android NDK (native development kit)
|
||||||
|
packages using a Guix-specific build process.
|
||||||
|
|
||||||
|
The build system assumes that packages install their public interface
|
||||||
|
(header) files to the subdirectory "include" of the "out" output and
|
||||||
|
their libraries to the subdirectory "lib" of the "out" output.
|
||||||
|
|
||||||
|
It's also assumed that the union of all the dependencies of a package
|
||||||
|
has no conflicting files.
|
||||||
|
|
||||||
|
For the time being, cross-compilation is not supported - so right now
|
||||||
|
the libraries and header files are assumed to be host tools.
|
||||||
|
|
||||||
|
@end defvr
|
||||||
|
|
||||||
@defvr {Scheme Variable} asdf-build-system/source
|
@defvr {Scheme Variable} asdf-build-system/source
|
||||||
@defvrx {Scheme Variable} asdf-build-system/sbcl
|
@defvrx {Scheme Variable} asdf-build-system/sbcl
|
||||||
@defvrx {Scheme Variable} asdf-build-system/ecl
|
@defvrx {Scheme Variable} asdf-build-system/ecl
|
||||||
|
@ -4979,6 +5092,23 @@ headers, which comes in handy in this case:
|
||||||
@dots{})))
|
@dots{})))
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
@cindex extensions, for gexps
|
||||||
|
@findex with-extensions
|
||||||
|
In the same vein, sometimes you want to import not just pure-Scheme
|
||||||
|
modules, but also ``extensions'' such as Guile bindings to C libraries
|
||||||
|
or other ``full-blown'' packages. Say you need the @code{guile-json}
|
||||||
|
package available on the build side, here's how you would do it:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(use-modules (gnu packages guile)) ;for 'guile-json'
|
||||||
|
|
||||||
|
(with-extensions (list guile-json)
|
||||||
|
(gexp->derivation "something-with-json"
|
||||||
|
#~(begin
|
||||||
|
(use-modules (json))
|
||||||
|
@dots{})))
|
||||||
|
@end example
|
||||||
|
|
||||||
The syntactic form to construct gexps is summarized below.
|
The syntactic form to construct gexps is summarized below.
|
||||||
|
|
||||||
@deffn {Scheme Syntax} #~@var{exp}
|
@deffn {Scheme Syntax} #~@var{exp}
|
||||||
|
@ -5062,6 +5192,18 @@ directly defined in @var{body}@dots{}, but not on those defined, say, in
|
||||||
procedures called from @var{body}@dots{}.
|
procedures called from @var{body}@dots{}.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
|
@deffn {Scheme Syntax} with-extensions @var{extensions} @var{body}@dots{}
|
||||||
|
Mark the gexps defined in @var{body}@dots{} as requiring
|
||||||
|
@var{extensions} in their build and execution environment.
|
||||||
|
@var{extensions} is typically a list of package objects such as those
|
||||||
|
defined in the @code{(gnu packages guile)} module.
|
||||||
|
|
||||||
|
Concretely, the packages listed in @var{extensions} are added to the
|
||||||
|
load path while compiling imported modules in @var{body}@dots{}; they
|
||||||
|
are also added to the load path of the gexp returned by
|
||||||
|
@var{body}@dots{}.
|
||||||
|
@end deffn
|
||||||
|
|
||||||
@deffn {Scheme Procedure} gexp? @var{obj}
|
@deffn {Scheme Procedure} gexp? @var{obj}
|
||||||
Return @code{#t} if @var{obj} is a G-expression.
|
Return @code{#t} if @var{obj} is a G-expression.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
@ -5076,6 +5218,7 @@ information about monads.)
|
||||||
[#:hash #f] [#:hash-algo #f] @
|
[#:hash #f] [#:hash-algo #f] @
|
||||||
[#:recursive? #f] [#:env-vars '()] [#:modules '()] @
|
[#:recursive? #f] [#:env-vars '()] [#:modules '()] @
|
||||||
[#:module-path @var{%load-path}] @
|
[#:module-path @var{%load-path}] @
|
||||||
|
[#:effective-version "2.2"] @
|
||||||
[#:references-graphs #f] [#:allowed-references #f] @
|
[#:references-graphs #f] [#:allowed-references #f] @
|
||||||
[#:disallowed-references #f] @
|
[#:disallowed-references #f] @
|
||||||
[#:leaked-env-vars #f] @
|
[#:leaked-env-vars #f] @
|
||||||
|
@ -5096,6 +5239,9 @@ make @var{modules} available in the evaluation context of @var{exp};
|
||||||
the load path during the execution of @var{exp}---e.g., @code{((guix
|
the load path during the execution of @var{exp}---e.g., @code{((guix
|
||||||
build utils) (guix build gnu-build-system))}.
|
build utils) (guix build gnu-build-system))}.
|
||||||
|
|
||||||
|
@var{effective-version} determines the string to use when adding extensions of
|
||||||
|
@var{exp} (see @code{with-extensions}) to the search path---e.g., @code{"2.2"}.
|
||||||
|
|
||||||
@var{graft?} determines whether packages referred to by @var{exp} should be grafted when
|
@var{graft?} determines whether packages referred to by @var{exp} should be grafted when
|
||||||
applicable.
|
applicable.
|
||||||
|
|
||||||
|
@ -5793,9 +5939,16 @@ information on cross-compilation.
|
||||||
|
|
||||||
An example use of this is on Linux-based systems, which can emulate
|
An example use of this is on Linux-based systems, which can emulate
|
||||||
different personalities. For instance, passing
|
different personalities. For instance, passing
|
||||||
@code{--system=i686-linux} on an @code{x86_64-linux} system allows you
|
@code{--system=i686-linux} on an @code{x86_64-linux} system or
|
||||||
|
@code{--system=armhf-linux} on an @code{aarch64-linux} system allows you
|
||||||
to build packages in a complete 32-bit environment.
|
to build packages in a complete 32-bit environment.
|
||||||
|
|
||||||
|
@quotation Note
|
||||||
|
Building for an @code{armhf-linux} system is unconditionally enabled on
|
||||||
|
@code{aarch64-linux} machines, although certain aarch64 chipsets do not
|
||||||
|
allow for this functionality, notably the ThunderX.
|
||||||
|
@end quotation
|
||||||
|
|
||||||
Similarly, when transparent emulation with QEMU and @code{binfmt_misc}
|
Similarly, when transparent emulation with QEMU and @code{binfmt_misc}
|
||||||
is enabled (@pxref{Virtualization Services,
|
is enabled (@pxref{Virtualization Services,
|
||||||
@code{qemu-binfmt-service-type}}), you can build for any system for
|
@code{qemu-binfmt-service-type}}), you can build for any system for
|
||||||
|
@ -6461,6 +6614,12 @@ signatures,, emacs, The GNU Emacs Manual}).
|
||||||
@uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa}
|
@uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa}
|
||||||
identifier.
|
identifier.
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
|
@item --recursive
|
||||||
|
@itemx -r
|
||||||
|
Traverse the dependency graph of the given upstream package recursively
|
||||||
|
and generate package expressions for all those packages that are not yet
|
||||||
|
in Guix.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@item crate
|
@item crate
|
||||||
|
@ -6773,15 +6932,33 @@ where @code{CVE-YYYY-ABCD} is the CVE identifier---e.g.,
|
||||||
|
|
||||||
Package developers can specify in package recipes the
|
Package developers can specify in package recipes the
|
||||||
@uref{https://nvd.nist.gov/cpe.cfm,Common Platform Enumeration (CPE)}
|
@uref{https://nvd.nist.gov/cpe.cfm,Common Platform Enumeration (CPE)}
|
||||||
name and version of the package when they differ from the name that Guix
|
name and version of the package when they differ from the name or version
|
||||||
uses, as in this example:
|
that Guix uses, as in this example:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
(package
|
(package
|
||||||
(name "grub")
|
(name "grub")
|
||||||
;; @dots{}
|
;; @dots{}
|
||||||
;; CPE calls this package "grub2".
|
;; CPE calls this package "grub2".
|
||||||
(properties '((cpe-name . "grub2"))))
|
(properties '((cpe-name . "grub2")
|
||||||
|
(cpe-version . "2.3")))
|
||||||
|
@end example
|
||||||
|
|
||||||
|
@c See <http://www.openwall.com/lists/oss-security/2017/03/15/3>.
|
||||||
|
Some entries in the CVE database do not specify which version of a
|
||||||
|
package they apply to, and would thus ``stick around'' forever. Package
|
||||||
|
developers who found CVE alerts and verified they can be ignored can
|
||||||
|
declare them as in this example:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(package
|
||||||
|
(name "t1lib")
|
||||||
|
;; @dots{}
|
||||||
|
;; These CVEs no longer apply and can be safely ignored.
|
||||||
|
(properties `((lint-hidden-cve . ("CVE-2011-0433"
|
||||||
|
"CVE-2011-1553"
|
||||||
|
"CVE-2011-1554"
|
||||||
|
"CVE-2011-5244")))))
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@item formatting
|
@item formatting
|
||||||
|
@ -6825,19 +7002,23 @@ single output for a package that could easily be split (@pxref{Packages
|
||||||
with Multiple Outputs}). Such are the typical issues that
|
with Multiple Outputs}). Such are the typical issues that
|
||||||
@command{guix size} can highlight.
|
@command{guix size} can highlight.
|
||||||
|
|
||||||
The command can be passed a package specification such as @code{gcc@@4.8}
|
The command can be passed one or more package specifications
|
||||||
|
such as @code{gcc@@4.8}
|
||||||
or @code{guile:debug}, or a file name in the store. Consider this
|
or @code{guile:debug}, or a file name in the store. Consider this
|
||||||
example:
|
example:
|
||||||
|
|
||||||
@example
|
@example
|
||||||
$ guix size coreutils
|
$ guix size coreutils
|
||||||
store item total self
|
store item total self
|
||||||
/gnu/store/@dots{}-coreutils-8.23 70.0 13.9 19.8%
|
/gnu/store/@dots{}-gcc-5.5.0-lib 60.4 30.1 38.1%
|
||||||
/gnu/store/@dots{}-gmp-6.0.0a 55.3 2.5 3.6%
|
/gnu/store/@dots{}-glibc-2.27 30.3 28.8 36.6%
|
||||||
/gnu/store/@dots{}-acl-2.2.52 53.7 0.5 0.7%
|
/gnu/store/@dots{}-coreutils-8.28 78.9 15.0 19.0%
|
||||||
/gnu/store/@dots{}-attr-2.4.46 53.2 0.3 0.5%
|
/gnu/store/@dots{}-gmp-6.1.2 63.1 2.7 3.4%
|
||||||
/gnu/store/@dots{}-gcc-4.8.4-lib 52.9 15.7 22.4%
|
/gnu/store/@dots{}-bash-static-4.4.12 1.5 1.5 1.9%
|
||||||
/gnu/store/@dots{}-glibc-2.21 37.2 37.2 53.1%
|
/gnu/store/@dots{}-acl-2.2.52 61.1 0.4 0.5%
|
||||||
|
/gnu/store/@dots{}-attr-2.4.47 60.6 0.2 0.3%
|
||||||
|
/gnu/store/@dots{}-libcap-2.25 60.5 0.2 0.2%
|
||||||
|
total: 78.9 MiB
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
@cindex closure
|
@cindex closure
|
||||||
|
@ -6857,17 +7038,21 @@ item itself. The last column shows the ratio of the size of the item
|
||||||
itself to the space occupied by all the items listed here.
|
itself to the space occupied by all the items listed here.
|
||||||
|
|
||||||
In this example, we see that the closure of Coreutils weighs in at
|
In this example, we see that the closure of Coreutils weighs in at
|
||||||
70@tie{}MiB, half of which is taken by libc. (That libc represents a
|
79@tie{}MiB, most of which is taken by libc and GCC's run-time support
|
||||||
large fraction of the closure is not a problem @i{per se} because it is
|
libraries. (That libc and GCC's libraries represent a large fraction of
|
||||||
always available on the system anyway.)
|
the closure is not a problem @i{per se} because they are always available
|
||||||
|
on the system anyway.)
|
||||||
|
|
||||||
When the package passed to @command{guix size} is available in the
|
When the package(s) passed to @command{guix size} are available in the
|
||||||
store, @command{guix size} queries the daemon to determine its
|
store@footnote{More precisely, @command{guix size} looks for the
|
||||||
|
@emph{ungrafted} variant of the given package(s), as returned by
|
||||||
|
@code{guix build @var{package} --no-grafts}. @xref{Security Updates},
|
||||||
|
for information on grafts.}, @command{guix size} queries the daemon to determine its
|
||||||
dependencies, and measures its size in the store, similar to @command{du
|
dependencies, and measures its size in the store, similar to @command{du
|
||||||
-ms --apparent-size} (@pxref{du invocation,,, coreutils, GNU
|
-ms --apparent-size} (@pxref{du invocation,,, coreutils, GNU
|
||||||
Coreutils}).
|
Coreutils}).
|
||||||
|
|
||||||
When the given package is @emph{not} in the store, @command{guix size}
|
When the given packages are @emph{not} in the store, @command{guix size}
|
||||||
reports information based on the available substitutes
|
reports information based on the available substitutes
|
||||||
(@pxref{Substitutes}). This makes it possible it to profile disk usage of
|
(@pxref{Substitutes}). This makes it possible it to profile disk usage of
|
||||||
store items that are not even on disk, only available remotely.
|
store items that are not even on disk, only available remotely.
|
||||||
|
@ -9115,20 +9300,31 @@ This is a string specifying the type of the file system---e.g.,
|
||||||
This designates the place where the file system is to be mounted.
|
This designates the place where the file system is to be mounted.
|
||||||
|
|
||||||
@item @code{device}
|
@item @code{device}
|
||||||
This names the ``source'' of the file system. By default it is the name
|
This names the ``source'' of the file system. It can be one of three
|
||||||
of a node under @file{/dev}, but its meaning depends on the @code{title}
|
things: a file system label, a file system UUID, or the name of a
|
||||||
field described below.
|
@file{/dev} node. Labels and UUIDs offer a way to refer to file
|
||||||
|
systems without having to hard-code their actual device
|
||||||
|
name@footnote{Note that, while it is tempting to use
|
||||||
|
@file{/dev/disk/by-uuid} and similar device names to achieve the same
|
||||||
|
result, this is not recommended: These special device nodes are created
|
||||||
|
by the udev daemon and may be unavailable at the time the device is
|
||||||
|
mounted.}.
|
||||||
|
|
||||||
@item @code{title} (default: @code{'device})
|
@findex file-system-label
|
||||||
This is a symbol that specifies how the @code{device} field is to be
|
File system labels are created using the @code{file-system-label}
|
||||||
interpreted.
|
procedure, UUIDs are created using @code{uuid}, and @file{/dev} node are
|
||||||
|
plain strings. Here's an example of a file system referred to by its
|
||||||
|
label, as shown by the @command{e2label} command:
|
||||||
|
|
||||||
When it is the symbol @code{device}, then the @code{device} field is
|
@example
|
||||||
interpreted as a file name; when it is @code{label}, then @code{device}
|
(file-system
|
||||||
is interpreted as a file system label name; when it is @code{uuid},
|
(mount-point "/home")
|
||||||
@code{device} is interpreted as a file system unique identifier (UUID).
|
(type "ext4")
|
||||||
|
(device (file-system-label "my-home")))
|
||||||
|
@end example
|
||||||
|
|
||||||
UUIDs may be converted from their string representation (as shown by the
|
@findex uuid
|
||||||
|
UUIDs are converted from their string representation (as shown by the
|
||||||
@command{tune2fs -l} command) using the @code{uuid} form@footnote{The
|
@command{tune2fs -l} command) using the @code{uuid} form@footnote{The
|
||||||
@code{uuid} form expects 16-byte UUIDs as defined in
|
@code{uuid} form expects 16-byte UUIDs as defined in
|
||||||
@uref{https://tools.ietf.org/html/rfc4122, RFC@tie{}4122}. This is the
|
@uref{https://tools.ietf.org/html/rfc4122, RFC@tie{}4122}. This is the
|
||||||
|
@ -9140,22 +9336,13 @@ like this:
|
||||||
(file-system
|
(file-system
|
||||||
(mount-point "/home")
|
(mount-point "/home")
|
||||||
(type "ext4")
|
(type "ext4")
|
||||||
(title 'uuid)
|
|
||||||
(device (uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb")))
|
(device (uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb")))
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
The @code{label} and @code{uuid} options offer a way to refer to file
|
When the source of a file system is a mapped device (@pxref{Mapped
|
||||||
systems without having to hard-code their actual device
|
|
||||||
name@footnote{Note that, while it is tempting to use
|
|
||||||
@file{/dev/disk/by-uuid} and similar device names to achieve the same
|
|
||||||
result, this is not recommended: These special device nodes are created
|
|
||||||
by the udev daemon and may be unavailable at the time the device is
|
|
||||||
mounted.}.
|
|
||||||
|
|
||||||
However, when the source of a file system is a mapped device (@pxref{Mapped
|
|
||||||
Devices}), its @code{device} field @emph{must} refer to the mapped
|
Devices}), its @code{device} field @emph{must} refer to the mapped
|
||||||
device name---e.g., @file{/dev/mapper/root-partition}---and consequently
|
device name---e.g., @file{"/dev/mapper/root-partition"}.
|
||||||
@code{title} must be set to @code{'device}. This is required so that
|
This is required so that
|
||||||
the system knows that mounting the file system depends on having the
|
the system knows that mounting the file system depends on having the
|
||||||
corresponding device mapping established.
|
corresponding device mapping established.
|
||||||
|
|
||||||
|
@ -9697,6 +9884,7 @@ declaration.
|
||||||
* X Window:: Graphical display.
|
* X Window:: Graphical display.
|
||||||
* Printing Services:: Local and remote printer support.
|
* Printing Services:: Local and remote printer support.
|
||||||
* Desktop Services:: D-Bus and desktop services.
|
* Desktop Services:: D-Bus and desktop services.
|
||||||
|
* Sound Services:: ALSA and Pulseaudio services.
|
||||||
* Database Services:: SQL databases, key-value stores, etc.
|
* Database Services:: SQL databases, key-value stores, etc.
|
||||||
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
||||||
* Messaging Services:: Messaging services.
|
* Messaging Services:: Messaging services.
|
||||||
|
@ -11624,7 +11812,7 @@ Script to run after starting xorg-server.
|
||||||
@item @code{xdisplay-stop} (default @code{#~(string-append #$sddm "/share/sddm/scripts/Xstop")})
|
@item @code{xdisplay-stop} (default @code{#~(string-append #$sddm "/share/sddm/scripts/Xstop")})
|
||||||
Script to run before stopping xorg-server.
|
Script to run before stopping xorg-server.
|
||||||
|
|
||||||
@item @code{xsession-command} (default: @code{xinitr })
|
@item @code{xsession-command} (default: @code{xinitrc})
|
||||||
Script to run before starting a X session.
|
Script to run before starting a X session.
|
||||||
|
|
||||||
@item @code{xsessions-directory} (default: "/run/current-system/profile/share/xsessions")
|
@item @code{xsessions-directory} (default: "/run/current-system/profile/share/xsessions")
|
||||||
|
@ -11697,6 +11885,44 @@ resolutions---e.g., @code{((1024 768) (640 480))}.
|
||||||
Last, @var{extra-config} is a list of strings or objects appended to the
|
Last, @var{extra-config} is a list of strings or objects appended to the
|
||||||
configuration file. It is used to pass extra text to be
|
configuration file. It is used to pass extra text to be
|
||||||
added verbatim to the configuration file.
|
added verbatim to the configuration file.
|
||||||
|
|
||||||
|
@cindex keymap
|
||||||
|
@cindex keyboard layout
|
||||||
|
This procedure is especially useful to configure a different keyboard layout
|
||||||
|
than the default US keymap. For instance, to use the ``bépo'' keymap by
|
||||||
|
default on the display manager:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(define bepo-evdev
|
||||||
|
"Section \"InputClass\"
|
||||||
|
Identifier \"evdev keyboard catchall\"
|
||||||
|
Driver \"evdev\"
|
||||||
|
MatchIsKeyboard \"on\"
|
||||||
|
Option \"xkb_layout\" \"fr\"
|
||||||
|
Option \"xkb_variant\" \"bepo\"
|
||||||
|
EndSection")
|
||||||
|
|
||||||
|
(operating-system
|
||||||
|
...
|
||||||
|
(services
|
||||||
|
(modify-services %desktop-services
|
||||||
|
(slim-service-type config =>
|
||||||
|
(slim-configuration
|
||||||
|
(inherit config)
|
||||||
|
(startx (xorg-start-command
|
||||||
|
#:configuration-file
|
||||||
|
(xorg-configuration-file
|
||||||
|
#:extra-config
|
||||||
|
(list bepo-evdev)))))))))
|
||||||
|
@end example
|
||||||
|
|
||||||
|
The @code{MatchIsKeyboard} line specifies that we only apply the configuration
|
||||||
|
to keyboards. Without this line, other devices such as touchpad may not work
|
||||||
|
correctly because they will be attached to the wrong driver. In this example,
|
||||||
|
the user typically used @code{setxkbmap fr bepo} to set their favorite keymap
|
||||||
|
once logged in. The first argument corresponds to the layout, while the second
|
||||||
|
argument corresponds to the variant. The @code{xkb_variant} line can be omitted
|
||||||
|
to select the default variant.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
@deffn {Scheme Procedure} screen-locker-service @var{package} [@var{program}]
|
@deffn {Scheme Procedure} screen-locker-service @var{package} [@var{program}]
|
||||||
|
@ -12582,11 +12808,11 @@ field of an @code{operating-system} declaration (@pxref{operating-system
|
||||||
Reference, @code{services}}).
|
Reference, @code{services}}).
|
||||||
|
|
||||||
Additionally, the @code{gnome-desktop-service},
|
Additionally, the @code{gnome-desktop-service},
|
||||||
@code{xfce-desktop-service} and @code{mate-desktop-service}
|
@code{xfce-desktop-service}, @code{mate-desktop-service} and
|
||||||
procedures can add GNOME, XFCE and/or MATE to a system.
|
@code{enlightenment-desktop-service-type} procedures can add GNOME, XFCE, MATE
|
||||||
To ``add GNOME'' means that system-level services like the
|
and/or Enlightenment to a system. To ``add GNOME'' means that system-level
|
||||||
backlight adjustment helpers and the power management utilities are
|
services like the backlight adjustment helpers and the power management
|
||||||
added to the system, extending @code{polkit} and @code{dbus}
|
utilities are added to the system, extending @code{polkit} and @code{dbus}
|
||||||
appropriately, allowing GNOME to operate with elevated privileges on a
|
appropriately, allowing GNOME to operate with elevated privileges on a
|
||||||
limited number of special-purpose system interfaces. Additionally,
|
limited number of special-purpose system interfaces. Additionally,
|
||||||
adding a service made by @code{gnome-desktop-service} adds the GNOME
|
adding a service made by @code{gnome-desktop-service} adds the GNOME
|
||||||
|
@ -12599,7 +12825,10 @@ To ``add MATE'' means that @code{polkit} and @code{dbus} are extended
|
||||||
appropriately, allowing MATE to operate with elevated privileges on a
|
appropriately, allowing MATE to operate with elevated privileges on a
|
||||||
limited number of special-purpose system interfaces. Additionally,
|
limited number of special-purpose system interfaces. Additionally,
|
||||||
adding a service made by @code{mate-desktop-service} adds the MATE
|
adding a service made by @code{mate-desktop-service} adds the MATE
|
||||||
metapackage to the system profile.
|
metapackage to the system profile. ``Adding ENLIGHTENMENT'' means that
|
||||||
|
@code{dbus} is extended appropriately, and several of Enlightenment's binaries
|
||||||
|
are set as setuid, allowing Enlightenment's screen locker and other
|
||||||
|
functionality to work as expetected.
|
||||||
|
|
||||||
The desktop environments in Guix use the Xorg display server by
|
The desktop environments in Guix use the Xorg display server by
|
||||||
default. If you'd like to use the newer display server protocol
|
default. If you'd like to use the newer display server protocol
|
||||||
|
@ -12629,8 +12858,20 @@ profile, and extends polkit with the actions from
|
||||||
@code{mate-settings-daemon}.
|
@code{mate-settings-daemon}.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
|
@deffn {Scheme Procedure} enlightenment-desktop-service-type
|
||||||
|
Return a service that adds the @code{enlightenment} package to the system
|
||||||
|
profile, and extends dbus with actions from @code{efl}.
|
||||||
|
@end deffn
|
||||||
|
|
||||||
|
@deftp {Data Type} enlightenment-desktop-service-configuration
|
||||||
|
@table @asis
|
||||||
|
@item @code{enlightenment} (default @code{enlightenment})
|
||||||
|
The enlightenment package to use.
|
||||||
|
@end table
|
||||||
|
@end deftp
|
||||||
|
|
||||||
Because the GNOME, XFCE and MATE desktop services pull in so many packages,
|
Because the GNOME, XFCE and MATE desktop services pull in so many packages,
|
||||||
the default @code{%desktop-services} variable doesn't include either of
|
the default @code{%desktop-services} variable doesn't include any of
|
||||||
them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto
|
them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto
|
||||||
@code{%desktop-services} in the @code{services} field of your
|
@code{%desktop-services} in the @code{services} field of your
|
||||||
@code{operating-system}:
|
@code{operating-system}:
|
||||||
|
@ -12842,6 +13083,48 @@ bluetooth keyboard or mouse.
|
||||||
Users need to be in the @code{lp} group to access the D-Bus service.
|
Users need to be in the @code{lp} group to access the D-Bus service.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
|
@node Sound Services
|
||||||
|
@subsubsection Sound Services
|
||||||
|
|
||||||
|
@cindex sound support
|
||||||
|
@cindex ALSA
|
||||||
|
@cindex PulseAudio, sound support
|
||||||
|
|
||||||
|
The @code{(gnu services sound)} module provides an
|
||||||
|
@code{alsa-service-type} service to generate an ALSA
|
||||||
|
@file{/etc/asound.conf} configuration file. This configuration file is
|
||||||
|
what allows applications that produce sound using ALSA to be correctly
|
||||||
|
handled.
|
||||||
|
|
||||||
|
@deffn {Scheme Variable} alsa-service-type
|
||||||
|
This is the type for the @uref{https://alsa-project.org/, ALSA},
|
||||||
|
@command{alsa-configuration} record as in this example:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(service alsa-service-type)
|
||||||
|
@end example
|
||||||
|
|
||||||
|
See below for details about @code{alsa-configuration}.
|
||||||
|
@end deffn
|
||||||
|
|
||||||
|
@deftp {Data Type} alsa-configuration
|
||||||
|
Data type representing the configuration for @code{alsa-service}.
|
||||||
|
|
||||||
|
@table @asis
|
||||||
|
@item @code{pulseaudio?} (default: @var{#t})
|
||||||
|
Whether ALSA applications should transparently be made to use the
|
||||||
|
@uref{http://www.pulseaudio.org/, PulseAudio} sound server.
|
||||||
|
|
||||||
|
Using PulseAudio allows you to run several sound-producing applications
|
||||||
|
at the same time and to individual control them @i{via}
|
||||||
|
@command{pavucontrol}, among other things.
|
||||||
|
|
||||||
|
@item @code{extra-options} (default: @var{""})
|
||||||
|
String to append to the @file{asound.conf} file.
|
||||||
|
|
||||||
|
@end table
|
||||||
|
@end deftp
|
||||||
|
|
||||||
@node Database Services
|
@node Database Services
|
||||||
@subsubsection Database Services
|
@subsubsection Database Services
|
||||||
|
|
||||||
|
@ -14880,6 +15163,9 @@ networking interface.
|
||||||
@item @code{package} (default: @code{bitlbee})
|
@item @code{package} (default: @code{bitlbee})
|
||||||
The BitlBee package to use.
|
The BitlBee package to use.
|
||||||
|
|
||||||
|
@item @code{plugins} (default: @code{'()})
|
||||||
|
List of plugin packages to use---e.g., @code{bitlbee-discord}.
|
||||||
|
|
||||||
@item @code{extra-settings} (default: @code{""})
|
@item @code{extra-settings} (default: @code{""})
|
||||||
Configuration snippet added as-is to the BitlBee configuration file.
|
Configuration snippet added as-is to the BitlBee configuration file.
|
||||||
@end table
|
@end table
|
||||||
|
@ -15979,6 +16265,64 @@ A simple setup for cat-avatar-generator can look like this:
|
||||||
%base-services))
|
%base-services))
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
@subsubheading Hpcguix-web
|
||||||
|
|
||||||
|
@cindex hpcguix-web
|
||||||
|
The @uref{hpcguix-web, https://github.com/UMCUGenetics/hpcguix-web/}
|
||||||
|
program is a customizable web interface to browse Guix packages,
|
||||||
|
initially designed for users of high-performance computing (HPC)
|
||||||
|
clusters.
|
||||||
|
|
||||||
|
@defvr {Scheme Variable} hpcguix-web-service-type
|
||||||
|
The service type for @code{hpcguix-web}.
|
||||||
|
@end defvr
|
||||||
|
|
||||||
|
@deftp {Data Type} hpcguix-web-configuration
|
||||||
|
Data type for the hpcguix-web service configuration.
|
||||||
|
|
||||||
|
@table @asis
|
||||||
|
@item @code{specs}
|
||||||
|
A gexp (@pxref{G-Expressions}) specifying the hpcguix-web service
|
||||||
|
configuration. The main items available in this spec are:
|
||||||
|
|
||||||
|
@table @asis
|
||||||
|
@item @code{title-prefix} (default: @code{"hpcguix | "})
|
||||||
|
The page title prefix.
|
||||||
|
|
||||||
|
@item @code{guix-command} (default: @code{"guix"})
|
||||||
|
The @command{guix} command.
|
||||||
|
|
||||||
|
@item @code{package-filter-proc} (default: @code{(const #t)})
|
||||||
|
A procedure specifying how to filter packages that are displayed.
|
||||||
|
|
||||||
|
@item @code{package-page-extension-proc} (default: @code{(const '())})
|
||||||
|
Extension package for @code{hpcguix-web}.
|
||||||
|
|
||||||
|
@item @code{menu} (default: @code{'()})
|
||||||
|
Additional entry in page @code{menu}.
|
||||||
|
@end table
|
||||||
|
|
||||||
|
See the hpcguix-web repository for a
|
||||||
|
@uref{https://github.com/UMCUGenetics/hpcguix-web/blob/master/hpcweb-configuration.scm,
|
||||||
|
complete example}.
|
||||||
|
|
||||||
|
@item @code{package} (default: @code{hpcguix-web})
|
||||||
|
The hpcguix-web package to use.
|
||||||
|
@end table
|
||||||
|
@end deftp
|
||||||
|
|
||||||
|
A typical hpcguix-web service declaration looks like this:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(service hpcguix-web-service-type
|
||||||
|
(hpcguix-web-configuration
|
||||||
|
(specs
|
||||||
|
#~(define site-config
|
||||||
|
(hpcweb-configuration
|
||||||
|
(title-prefix "Guix-HPC - ")
|
||||||
|
(menu '(("/about" "ABOUT"))))))))
|
||||||
|
@end example
|
||||||
|
|
||||||
@node Certificate Services
|
@node Certificate Services
|
||||||
@subsubsection Certificate Services
|
@subsubsection Certificate Services
|
||||||
|
|
||||||
|
@ -16133,7 +16477,11 @@ saved to @code{/etc/letsencrypt/live/@var{name}/privkey.pem}.
|
||||||
The @code{(gnu services dns)} module provides services related to the
|
The @code{(gnu services dns)} module provides services related to the
|
||||||
@dfn{domain name system} (DNS). It provides a server service for hosting
|
@dfn{domain name system} (DNS). It provides a server service for hosting
|
||||||
an @emph{authoritative} DNS server for multiple zones, slave or master.
|
an @emph{authoritative} DNS server for multiple zones, slave or master.
|
||||||
This service uses @uref{https://www.knot-dns.cz/, Knot DNS}.
|
This service uses @uref{https://www.knot-dns.cz/, Knot DNS}. And also a
|
||||||
|
caching and forwarding DNS server for the LAN, which uses
|
||||||
|
@uref{http://www.thekelleys.org.uk/dnsmasq/doc.html, dnsmasq}.
|
||||||
|
|
||||||
|
@subsubheading Knot Service
|
||||||
|
|
||||||
An example configuration of an authoritative server for two zones, one master
|
An example configuration of an authoritative server for two zones, one master
|
||||||
and one slave, is:
|
and one slave, is:
|
||||||
|
@ -16528,6 +16876,59 @@ The list of knot-zone-configuration used by this configuration.
|
||||||
@end table
|
@end table
|
||||||
@end deftp
|
@end deftp
|
||||||
|
|
||||||
|
@subsubheading Dnsmasq Service
|
||||||
|
|
||||||
|
@deffn {Scheme Variable} dnsmasq-service-type
|
||||||
|
This is the type of the dnsmasq service, whose value should be an
|
||||||
|
@code{dnsmasq-configuration} object as in this example:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(service dnsmasq-service-type
|
||||||
|
(dnsmasq-configuration
|
||||||
|
(no-resolv? #t)
|
||||||
|
(servers '("192.168.1.1"))))
|
||||||
|
@end example
|
||||||
|
@end deffn
|
||||||
|
|
||||||
|
@deftp {Data Type} dnsmasq-configuration
|
||||||
|
Data type representing the configuration of dnsmasq.
|
||||||
|
|
||||||
|
@table @asis
|
||||||
|
@item @code{package} (default: @var{dnsmasq})
|
||||||
|
Package object of the dnsmasq server.
|
||||||
|
|
||||||
|
@item @code{no-hosts?} (default: @code{#f})
|
||||||
|
When true, don't read the hostnames in /etc/hosts.
|
||||||
|
|
||||||
|
@item @code{port} (default: @code{53})
|
||||||
|
The port to listen on. Setting this to zero completely disables DNS
|
||||||
|
funtion, leaving only DHCP and/or TFTP.
|
||||||
|
|
||||||
|
@item @code{local-service?} (default: @code{#t})
|
||||||
|
Accept DNS queries only from hosts whose address is on a local subnet,
|
||||||
|
ie a subnet for which an interface exists on the server.
|
||||||
|
|
||||||
|
@item @code{listen-addresses} (default: @code{'()})
|
||||||
|
Listen on the given IP addresses.
|
||||||
|
|
||||||
|
@item @code{resolv-file} (default: @code{"/etc/resolv.conf"})
|
||||||
|
The file to read the IP address of the upstream nameservers from.
|
||||||
|
|
||||||
|
@item @code{no-resolv?} (default: @code{#f})
|
||||||
|
When true, don't read @var{resolv-file}.
|
||||||
|
|
||||||
|
@item @code{servers} (default: @code{'()})
|
||||||
|
Specify IP address of upstream servers directly.
|
||||||
|
|
||||||
|
@item @code{cache-size} (default: @code{150})
|
||||||
|
Set the size of dnsmasq's cache. Setting the cache size to zero
|
||||||
|
disables caching.
|
||||||
|
|
||||||
|
@item @code{negative-cache?} (default: @code{#t})
|
||||||
|
When false, disable negative caching.
|
||||||
|
|
||||||
|
@end table
|
||||||
|
@end deftp
|
||||||
|
|
||||||
@node VPN Services
|
@node VPN Services
|
||||||
@subsubsection VPN Services
|
@subsubsection VPN Services
|
||||||
|
@ -19100,7 +19501,7 @@ Defaults to @samp{#f}.
|
||||||
|
|
||||||
@end deftypevr
|
@end deftypevr
|
||||||
|
|
||||||
@deftypevr {@code{cgit-configuration} parameter} list project-list
|
@deftypevr {@code{cgit-configuration} parameter} project-list project-list
|
||||||
A list of subdirectories inside of @code{repository-directory}, relative
|
A list of subdirectories inside of @code{repository-directory}, relative
|
||||||
to it, that should loaded as Git repositories. An empty list means that
|
to it, that should loaded as Git repositories. An empty list means that
|
||||||
all subdirectories will be loaded.
|
all subdirectories will be loaded.
|
||||||
|
|
|
@ -86,9 +86,7 @@ chk_require()
|
||||||
_debug "--- [ $FUNCNAME ] ---"
|
_debug "--- [ $FUNCNAME ] ---"
|
||||||
|
|
||||||
for c in ${cmds[@]}; do
|
for c in ${cmds[@]}; do
|
||||||
command -v "$c" &>/dev/null
|
command -v "$c" &>/dev/null || warn+=("$c")
|
||||||
[ "$?" -eq "1" ] &&
|
|
||||||
warn+=("$c")
|
|
||||||
done
|
done
|
||||||
|
|
||||||
[ "${#warn}" -ne 0 ] &&
|
[ "${#warn}" -ne 0 ] &&
|
||||||
|
|
|
@ -64,6 +64,7 @@ corresponding to old generations of the system."
|
||||||
(format port "# This file was generated from your GuixSD configuration. Any changes
|
(format port "# This file was generated from your GuixSD configuration. Any changes
|
||||||
# will be lost upon reconfiguration.
|
# will be lost upon reconfiguration.
|
||||||
UI menu.c32
|
UI menu.c32
|
||||||
|
MENU TITLE GuixSD Boot Options
|
||||||
PROMPT ~a
|
PROMPT ~a
|
||||||
TIMEOUT ~a~%"
|
TIMEOUT ~a~%"
|
||||||
(if (> timeout 0) 1 0)
|
(if (> timeout 0) 1 0)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
|
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
|
||||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
|
@ -31,6 +31,7 @@
|
||||||
#:use-module (gnu system)
|
#:use-module (gnu system)
|
||||||
#:use-module (gnu bootloader)
|
#:use-module (gnu bootloader)
|
||||||
#:use-module (gnu system uuid)
|
#:use-module (gnu system uuid)
|
||||||
|
#:use-module (gnu system file-systems)
|
||||||
#:autoload (gnu packages bootloaders) (grub)
|
#:autoload (gnu packages bootloaders) (grub)
|
||||||
#:autoload (gnu packages compression) (gzip)
|
#:autoload (gnu packages compression) (gzip)
|
||||||
#:autoload (gnu packages gtk) (guile-cairo guile-rsvg)
|
#:autoload (gnu packages gtk) (guile-cairo guile-rsvg)
|
||||||
|
@ -120,25 +121,14 @@ otherwise."
|
||||||
|
|
||||||
(define* (svg->png svg #:key width height)
|
(define* (svg->png svg #:key width height)
|
||||||
"Build a PNG of HEIGHT x WIDTH from SVG."
|
"Build a PNG of HEIGHT x WIDTH from SVG."
|
||||||
;; Note: Guile-RSVG & co. are now built for Guile 2.2, so we use 2.2 here.
|
(gexp->derivation "grub-image.png"
|
||||||
;; TODO: Remove #:guile-for-build when 2.2 has become the default.
|
(with-imported-modules '((gnu build svg))
|
||||||
(mlet %store-monad ((guile (package->derivation guile-2.2 #:graft? #f)))
|
(with-extensions (list guile-rsvg guile-cairo)
|
||||||
(gexp->derivation "grub-image.png"
|
|
||||||
(with-imported-modules '((gnu build svg))
|
|
||||||
#~(begin
|
#~(begin
|
||||||
;; We need these two libraries.
|
|
||||||
(add-to-load-path (string-append #+guile-rsvg
|
|
||||||
"/share/guile/site/"
|
|
||||||
(effective-version)))
|
|
||||||
(add-to-load-path (string-append #+guile-cairo
|
|
||||||
"/share/guile/site/"
|
|
||||||
(effective-version)))
|
|
||||||
|
|
||||||
(use-modules (gnu build svg))
|
(use-modules (gnu build svg))
|
||||||
(svg->png #+svg #$output
|
(svg->png #+svg #$output
|
||||||
#:width #$width
|
#:width #$width
|
||||||
#:height #$height)))
|
#:height #$height))))))
|
||||||
#:guile-for-build guile)))
|
|
||||||
|
|
||||||
(define* (grub-background-image config #:key (width 1024) (height 768))
|
(define* (grub-background-image config #:key (width 1024) (height 768))
|
||||||
"Return the GRUB background image defined in CONFIG with a ratio of
|
"Return the GRUB background image defined in CONFIG with a ratio of
|
||||||
|
@ -303,9 +293,10 @@ code."
|
||||||
((? uuid? uuid)
|
((? uuid? uuid)
|
||||||
(format #f "search --fs-uuid --set ~a"
|
(format #f "search --fs-uuid --set ~a"
|
||||||
(uuid->string device)))
|
(uuid->string device)))
|
||||||
((? string? label)
|
((? file-system-label? label)
|
||||||
(format #f "search --label --set ~a" label))
|
(format #f "search --label --set ~a"
|
||||||
(#f
|
(file-system-label->string label)))
|
||||||
|
((or #f (? string?))
|
||||||
#~(format #f "search --file --set ~a" #$file)))))
|
#~(format #f "search --file --set ~a" #$file)))))
|
||||||
|
|
||||||
(define* (grub-configuration-file config entries
|
(define* (grub-configuration-file config entries
|
||||||
|
|
|
@ -33,7 +33,12 @@
|
||||||
u-boot-a20-olinuxino-micro-bootloader
|
u-boot-a20-olinuxino-micro-bootloader
|
||||||
u-boot-banana-pi-m2-ultra-bootloader
|
u-boot-banana-pi-m2-ultra-bootloader
|
||||||
u-boot-beaglebone-black-bootloader
|
u-boot-beaglebone-black-bootloader
|
||||||
u-boot-nintendo-nes-classic-edition-bootloader))
|
u-boot-mx6cuboxi-bootloader
|
||||||
|
u-boot-nintendo-nes-classic-edition-bootloader
|
||||||
|
u-boot-novena-bootloader
|
||||||
|
u-boot-pine64-plus-bootloader
|
||||||
|
u-boot-puma-rk3399-bootloader
|
||||||
|
u-boot-wandboard-bootloader))
|
||||||
|
|
||||||
(define install-u-boot
|
(define install-u-boot
|
||||||
#~(lambda (bootloader device mount-point)
|
#~(lambda (bootloader device mount-point)
|
||||||
|
@ -62,6 +67,33 @@
|
||||||
(write-file-on-device u-boot (stat:size (stat u-boot))
|
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||||
device (* 8 1024)))))
|
device (* 8 1024)))))
|
||||||
|
|
||||||
|
(define install-allwinner64-u-boot
|
||||||
|
#~(lambda (bootloader device mount-point)
|
||||||
|
(let ((spl (string-append bootloader "/libexec/spl/sunxi-spl.bin"))
|
||||||
|
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
|
||||||
|
(write-file-on-device spl (stat:size (stat spl))
|
||||||
|
device (* 8 1024))
|
||||||
|
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||||
|
device (* 40 1024)))))
|
||||||
|
|
||||||
|
(define install-imx-u-boot
|
||||||
|
#~(lambda (bootloader device mount-point)
|
||||||
|
(let ((spl (string-append bootloader "/libexec/SPL"))
|
||||||
|
(u-boot (string-append bootloader "/libexec/u-boot.img")))
|
||||||
|
(write-file-on-device spl (stat:size (stat spl))
|
||||||
|
device (* 1 1024))
|
||||||
|
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||||
|
device (* 69 1024)))))
|
||||||
|
|
||||||
|
(define install-puma-rk3399-u-boot
|
||||||
|
#~(lambda (bootloader device mount-point)
|
||||||
|
(let ((spl (string-append bootloader "/libexec/u-boot-spl.rksd"))
|
||||||
|
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
|
||||||
|
(write-file-on-device spl (stat:size (stat spl))
|
||||||
|
device (* 64 512))
|
||||||
|
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||||
|
device (* 512 512)))))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
|
@ -86,6 +118,16 @@
|
||||||
(inherit u-boot-bootloader)
|
(inherit u-boot-bootloader)
|
||||||
(installer install-allwinner-u-boot)))
|
(installer install-allwinner-u-boot)))
|
||||||
|
|
||||||
|
(define u-boot-allwinner64-bootloader
|
||||||
|
(bootloader
|
||||||
|
(inherit u-boot-bootloader)
|
||||||
|
(installer install-allwinner64-u-boot)))
|
||||||
|
|
||||||
|
(define u-boot-imx-bootloader
|
||||||
|
(bootloader
|
||||||
|
(inherit u-boot-bootloader)
|
||||||
|
(installer install-imx-u-boot)))
|
||||||
|
|
||||||
(define u-boot-nintendo-nes-classic-edition-bootloader
|
(define u-boot-nintendo-nes-classic-edition-bootloader
|
||||||
(bootloader
|
(bootloader
|
||||||
(inherit u-boot-allwinner-bootloader)
|
(inherit u-boot-allwinner-bootloader)
|
||||||
|
@ -110,3 +152,29 @@
|
||||||
(bootloader
|
(bootloader
|
||||||
(inherit u-boot-allwinner-bootloader)
|
(inherit u-boot-allwinner-bootloader)
|
||||||
(package u-boot-banana-pi-m2-ultra)))
|
(package u-boot-banana-pi-m2-ultra)))
|
||||||
|
|
||||||
|
(define u-boot-mx6cuboxi-bootloader
|
||||||
|
(bootloader
|
||||||
|
(inherit u-boot-imx-bootloader)
|
||||||
|
(package u-boot-mx6cuboxi)))
|
||||||
|
|
||||||
|
(define u-boot-wandboard-bootloader
|
||||||
|
(bootloader
|
||||||
|
(inherit u-boot-imx-bootloader)
|
||||||
|
(package u-boot-wandboard)))
|
||||||
|
|
||||||
|
(define u-boot-novena-bootloader
|
||||||
|
(bootloader
|
||||||
|
(inherit u-boot-imx-bootloader)
|
||||||
|
(package u-boot-novena)))
|
||||||
|
|
||||||
|
(define u-boot-pine64-plus-bootloader
|
||||||
|
(bootloader
|
||||||
|
(inherit u-boot-allwinner64-bootloader)
|
||||||
|
(package u-boot-pine64-plus)))
|
||||||
|
|
||||||
|
(define u-boot-puma-rk3399-bootloader
|
||||||
|
(bootloader
|
||||||
|
(inherit u-boot-bootloader)
|
||||||
|
(package u-boot-puma-rk3399)
|
||||||
|
(installer install-puma-rk3399-u-boot)))
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
|
@ -119,7 +119,7 @@ C_*INCLUDE_PATH."
|
||||||
;; libc is false, so we are building xgcc-sans-libc.
|
;; libc is false, so we are building xgcc-sans-libc.
|
||||||
;; Add essential headers from mingw-w64.
|
;; Add essential headers from mingw-w64.
|
||||||
(let ((mingw-source (assoc-ref inputs "mingw-source")))
|
(let ((mingw-source (assoc-ref inputs "mingw-source")))
|
||||||
(system* "tar" "xvf" mingw-source)
|
(invoke "tar" "xvf" mingw-source)
|
||||||
(let ((mingw-headers (unpacked-mingw-dir)))
|
(let ((mingw-headers (unpacked-mingw-dir)))
|
||||||
;; We need _mingw.h which will gets built from _mingw.h.in by
|
;; We need _mingw.h which will gets built from _mingw.h.in by
|
||||||
;; mingw-w64's configure. We cannot configure mingw-w64 until we
|
;; mingw-w64's configure. We cannot configure mingw-w64 until we
|
||||||
|
@ -160,7 +160,7 @@ C_*INCLUDE_PATH."
|
||||||
"Install a stripped GCC."
|
"Install a stripped GCC."
|
||||||
;; Unlike our 'strip' phase, this will do the right thing for
|
;; Unlike our 'strip' phase, this will do the right thing for
|
||||||
;; cross-compilers.
|
;; cross-compilers.
|
||||||
(zero? (system* "make" "install-strip")))
|
(invoke "make" "install-strip"))
|
||||||
|
|
||||||
(define* (cross-gcc-build-phases target
|
(define* (cross-gcc-build-phases target
|
||||||
#:optional (phases %standard-phases))
|
#:optional (phases %standard-phases))
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
|
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
|
||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
|
@ -473,17 +473,9 @@ were found."
|
||||||
(find-partition luks-partition-uuid-predicate))
|
(find-partition luks-partition-uuid-predicate))
|
||||||
|
|
||||||
|
|
||||||
(define* (canonicalize-device-spec spec #:optional (title 'any))
|
(define (canonicalize-device-spec spec)
|
||||||
"Return the device name corresponding to SPEC. TITLE is a symbol, one of
|
"Return the device name corresponding to SPEC, which can be a <uuid>, a
|
||||||
the following:
|
<file-system-label>, or a string (typically a /dev file name)."
|
||||||
|
|
||||||
• 'device', in which case SPEC is known to designate a device node--e.g.,
|
|
||||||
\"/dev/sda1\";
|
|
||||||
• 'label', in which case SPEC is known to designate a partition label--e.g.,
|
|
||||||
\"my-root-part\";
|
|
||||||
• 'uuid', in which case SPEC must be a UUID designating a partition;
|
|
||||||
• 'any', in which case SPEC can be anything.
|
|
||||||
"
|
|
||||||
(define max-trials
|
(define max-trials
|
||||||
;; Number of times we retry partition label resolution, 1 second per
|
;; Number of times we retry partition label resolution, 1 second per
|
||||||
;; trial. Note: somebody reported a delay of 16 seconds (!) before their
|
;; trial. Note: somebody reported a delay of 16 seconds (!) before their
|
||||||
|
@ -491,19 +483,6 @@ the following:
|
||||||
;; this long.
|
;; this long.
|
||||||
20)
|
20)
|
||||||
|
|
||||||
(define canonical-title
|
|
||||||
;; The realm of canonicalization.
|
|
||||||
(if (eq? title 'any)
|
|
||||||
(if (string? spec)
|
|
||||||
;; The "--root=SPEC" kernel command-line option always provides a
|
|
||||||
;; string, but the string can represent a device, a UUID, or a
|
|
||||||
;; label. So check for all three.
|
|
||||||
(cond ((string-prefix? "/" spec) 'device)
|
|
||||||
((string->uuid spec) 'uuid)
|
|
||||||
(else 'label))
|
|
||||||
'uuid)
|
|
||||||
title))
|
|
||||||
|
|
||||||
(define (resolve find-partition spec fmt)
|
(define (resolve find-partition spec fmt)
|
||||||
(let loop ((count 0))
|
(let loop ((count 0))
|
||||||
(let ((device (find-partition spec)))
|
(let ((device (find-partition spec)))
|
||||||
|
@ -518,23 +497,19 @@ the following:
|
||||||
(sleep 1)
|
(sleep 1)
|
||||||
(loop (+ 1 count))))))))
|
(loop (+ 1 count))))))))
|
||||||
|
|
||||||
(case canonical-title
|
(match spec
|
||||||
((device)
|
((? string?)
|
||||||
;; Nothing to do.
|
;; Nothing to do, but wait until SPEC shows up.
|
||||||
spec)
|
(resolve identity spec identity))
|
||||||
((label)
|
((? file-system-label?)
|
||||||
;; Resolve the label.
|
;; Resolve the label.
|
||||||
(resolve find-partition-by-label spec identity))
|
(resolve find-partition-by-label
|
||||||
((uuid)
|
(file-system-label->string spec)
|
||||||
|
identity))
|
||||||
|
((? uuid?)
|
||||||
(resolve find-partition-by-uuid
|
(resolve find-partition-by-uuid
|
||||||
(cond ((string? spec)
|
(uuid-bytevector spec)
|
||||||
(string->uuid spec))
|
uuid->string))))
|
||||||
((uuid? spec)
|
|
||||||
(uuid-bytevector spec))
|
|
||||||
(else spec))
|
|
||||||
uuid->string))
|
|
||||||
(else
|
|
||||||
(error "unknown device title" title))))
|
|
||||||
|
|
||||||
(define (check-file-system device type)
|
(define (check-file-system device type)
|
||||||
"Run a file system check of TYPE on DEVICE."
|
"Run a file system check of TYPE on DEVICE."
|
||||||
|
@ -615,8 +590,7 @@ run a file system check."
|
||||||
"")))))
|
"")))))
|
||||||
(let ((type (file-system-type fs))
|
(let ((type (file-system-type fs))
|
||||||
(options (file-system-options fs))
|
(options (file-system-options fs))
|
||||||
(source (canonicalize-device-spec (file-system-device fs)
|
(source (canonicalize-device-spec (file-system-device fs)))
|
||||||
(file-system-title fs)))
|
|
||||||
(mount-point (string-append root "/"
|
(mount-point (string-append root "/"
|
||||||
(file-system-mount-point fs)))
|
(file-system-mount-point fs)))
|
||||||
(flags (mount-flags->bit-mask (file-system-flags fs))))
|
(flags (mount-flags->bit-mask (file-system-flags fs))))
|
||||||
|
|
|
@ -507,9 +507,15 @@ upon error."
|
||||||
(error "pre-mount actions failed")))
|
(error "pre-mount actions failed")))
|
||||||
|
|
||||||
(if root
|
(if root
|
||||||
(mount-root-file-system (canonicalize-device-spec root)
|
;; The "--root=SPEC" kernel command-line option always provides a
|
||||||
root-fs-type
|
;; string, but the string can represent a device, a UUID, or a
|
||||||
#:volatile-root? volatile-root?)
|
;; label. So check for all three.
|
||||||
|
(let ((root (cond ((string-prefix? "/" root) root)
|
||||||
|
((uuid root) => identity)
|
||||||
|
(else (file-system-label root)))))
|
||||||
|
(mount-root-file-system (canonicalize-device-spec root)
|
||||||
|
root-fs-type
|
||||||
|
#:volatile-root? volatile-root?))
|
||||||
(mount "none" "/root" "tmpfs"))
|
(mount "none" "/root" "tmpfs"))
|
||||||
|
|
||||||
;; Mount the specified file systems.
|
;; Mount the specified file systems.
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
make-marionette
|
make-marionette
|
||||||
marionette-eval
|
marionette-eval
|
||||||
wait-for-file
|
wait-for-file
|
||||||
|
wait-for-tcp-port
|
||||||
marionette-control
|
marionette-control
|
||||||
marionette-screen-text
|
marionette-screen-text
|
||||||
wait-for-screen-text
|
wait-for-screen-text
|
||||||
|
@ -187,6 +188,32 @@ FILE has not shown up after TIMEOUT seconds, raise an error."
|
||||||
('failure
|
('failure
|
||||||
(error "file didn't show up" file))))
|
(error "file didn't show up" file))))
|
||||||
|
|
||||||
|
(define* (wait-for-tcp-port port marionette
|
||||||
|
#:key (timeout 20))
|
||||||
|
"Wait for up to TIMEOUT seconds for PORT to accept connections in
|
||||||
|
MARIONETTE. Raise an error on failure."
|
||||||
|
;; Note: The 'connect' loop has to run within the guest because, when we
|
||||||
|
;; forward ports to the host, connecting to the host never raises
|
||||||
|
;; ECONNREFUSED.
|
||||||
|
(match (marionette-eval
|
||||||
|
`(begin
|
||||||
|
(let ((sock (socket PF_INET SOCK_STREAM 0)))
|
||||||
|
(let loop ((i 0))
|
||||||
|
(catch 'system-error
|
||||||
|
(lambda ()
|
||||||
|
(connect sock AF_INET INADDR_LOOPBACK ,port)
|
||||||
|
'success)
|
||||||
|
(lambda args
|
||||||
|
(if (< i ,timeout)
|
||||||
|
(begin
|
||||||
|
(sleep 1)
|
||||||
|
(loop (+ 1 i)))
|
||||||
|
'failure))))))
|
||||||
|
marionette)
|
||||||
|
('success #t)
|
||||||
|
('failure
|
||||||
|
(error "nobody's listening on port" port))))
|
||||||
|
|
||||||
(define (marionette-control command marionette)
|
(define (marionette-control command marionette)
|
||||||
"Run COMMAND in the QEMU monitor of MARIONETTE. COMMAND is a string such as
|
"Run COMMAND in the QEMU monitor of MARIONETTE. COMMAND is a string such as
|
||||||
\"sendkey ctrl-alt-f1\" or \"screendump foo.ppm\" (info \"(qemu-doc)
|
\"sendkey ctrl-alt-f1\" or \"screendump foo.ppm\" (info \"(qemu-doc)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -55,7 +55,6 @@
|
||||||
(define (tmpfs directory)
|
(define (tmpfs directory)
|
||||||
(file-system
|
(file-system
|
||||||
(device "none")
|
(device "none")
|
||||||
(title 'device)
|
|
||||||
(mount-point directory)
|
(mount-point directory)
|
||||||
(type "tmpfs")
|
(type "tmpfs")
|
||||||
(check? #f)))
|
(check? #f)))
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
|
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -18,16 +18,11 @@
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (gnu build svg)
|
(define-module (gnu build svg)
|
||||||
|
#:use-module (rsvg)
|
||||||
|
#:use-module (cairo)
|
||||||
#:use-module (srfi srfi-11)
|
#:use-module (srfi srfi-11)
|
||||||
#:export (svg->png))
|
#:export (svg->png))
|
||||||
|
|
||||||
;; We need Guile-RSVG and Guile-Cairo. Load them lazily, at run time, to
|
|
||||||
;; allow compilation to proceed. See also <http://bugs.gnu.org/12202>.
|
|
||||||
(module-autoload! (current-module)
|
|
||||||
'(rsvg) '(rsvg-handle-new-from-file))
|
|
||||||
(module-autoload! (current-module)
|
|
||||||
'(cairo) '(cairo-image-surface-create))
|
|
||||||
|
|
||||||
(define* (downscaled-surface surface
|
(define* (downscaled-surface surface
|
||||||
#:key
|
#:key
|
||||||
source-width source-height
|
source-width source-height
|
||||||
|
|
|
@ -106,11 +106,16 @@ the #:references-graphs parameter of 'derivation'."
|
||||||
(not target-arm32?))
|
(not target-arm32?))
|
||||||
'("-enable-kvm")
|
'("-enable-kvm")
|
||||||
'())
|
'())
|
||||||
|
|
||||||
|
;; Pass "panic=1" so that the guest dies upon error.
|
||||||
"-append"
|
"-append"
|
||||||
;; The serial port name differs between emulated architectures/machines.
|
,(string-append "panic=1 --load=" builder
|
||||||
,@(if target-arm32?
|
|
||||||
`(,(string-append "console=ttyAMA0 --load=" builder))
|
;; The serial port name differs between emulated
|
||||||
`(,(string-append "console=ttyS0 --load=" builder)))
|
;; architectures/machines.
|
||||||
|
" console="
|
||||||
|
(if target-arm32? "ttyAMA0" "ttyS0"))
|
||||||
|
|
||||||
;; NIC is not supported on ARM "virt" machine, so use a user mode
|
;; NIC is not supported on ARM "virt" machine, so use a user mode
|
||||||
;; network stack instead.
|
;; network stack instead.
|
||||||
,@(if target-arm32?
|
,@(if target-arm32?
|
||||||
|
@ -265,7 +270,8 @@ actual /dev name based on DEVICE."
|
||||||
#:key label uuid)
|
#:key label uuid)
|
||||||
"Create an ext-family file system of TYPE on PARTITION. If LABEL is true,
|
"Create an ext-family file system of TYPE on PARTITION. If LABEL is true,
|
||||||
use that as the volume name. If UUID is true, use it as the partition UUID."
|
use that as the volume name. If UUID is true, use it as the partition UUID."
|
||||||
(format #t "creating ~a partition...\n" type)
|
(format #t "creating ~a partition... ~@[label: ~s~] ~@[uuid: ~s~]\n"
|
||||||
|
type label (and uuid (uuid->string uuid)))
|
||||||
(apply invoke (string-append "mkfs." type)
|
(apply invoke (string-append "mkfs." type)
|
||||||
"-F" partition
|
"-F" partition
|
||||||
`(,@(if label
|
`(,@(if label
|
||||||
|
|
79
gnu/local.mk
79
gnu/local.mk
|
@ -1,6 +1,6 @@
|
||||||
# GNU Guix --- Functional package management for GNU
|
# GNU Guix --- Functional package management for GNU
|
||||||
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
# Copyright © 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr>
|
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Andreas Enge <andreas@enge.fr>
|
||||||
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
# Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
|
# Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
|
||||||
|
@ -96,6 +96,7 @@ GNU_SYSTEM_MODULES = \
|
||||||
%D%/packages/chez.scm \
|
%D%/packages/chez.scm \
|
||||||
%D%/packages/ci.scm \
|
%D%/packages/ci.scm \
|
||||||
%D%/packages/cinnamon.scm \
|
%D%/packages/cinnamon.scm \
|
||||||
|
%D%/packages/cluster.scm \
|
||||||
%D%/packages/cmake.scm \
|
%D%/packages/cmake.scm \
|
||||||
%D%/packages/cobol.scm \
|
%D%/packages/cobol.scm \
|
||||||
%D%/packages/code.scm \
|
%D%/packages/code.scm \
|
||||||
|
@ -202,6 +203,7 @@ GNU_SYSTEM_MODULES = \
|
||||||
%D%/packages/graphics.scm \
|
%D%/packages/graphics.scm \
|
||||||
%D%/packages/graphviz.scm \
|
%D%/packages/graphviz.scm \
|
||||||
%D%/packages/groff.scm \
|
%D%/packages/groff.scm \
|
||||||
|
%D%/packages/groovy.scm \
|
||||||
%D%/packages/gsasl.scm \
|
%D%/packages/gsasl.scm \
|
||||||
%D%/packages/gstreamer.scm \
|
%D%/packages/gstreamer.scm \
|
||||||
%D%/packages/gtk.scm \
|
%D%/packages/gtk.scm \
|
||||||
|
@ -225,7 +227,6 @@ GNU_SYSTEM_MODULES = \
|
||||||
%D%/packages/image-processing.scm \
|
%D%/packages/image-processing.scm \
|
||||||
%D%/packages/image-viewers.scm \
|
%D%/packages/image-viewers.scm \
|
||||||
%D%/packages/imagemagick.scm \
|
%D%/packages/imagemagick.scm \
|
||||||
%D%/packages/indent.scm \
|
|
||||||
%D%/packages/inklingreader.scm \
|
%D%/packages/inklingreader.scm \
|
||||||
%D%/packages/inkscape.scm \
|
%D%/packages/inkscape.scm \
|
||||||
%D%/packages/irc.scm \
|
%D%/packages/irc.scm \
|
||||||
|
@ -343,6 +344,7 @@ GNU_SYSTEM_MODULES = \
|
||||||
%D%/packages/plotutils.scm \
|
%D%/packages/plotutils.scm \
|
||||||
%D%/packages/polkit.scm \
|
%D%/packages/polkit.scm \
|
||||||
%D%/packages/popt.scm \
|
%D%/packages/popt.scm \
|
||||||
|
%D%/packages/printers.scm \
|
||||||
%D%/packages/profiling.scm \
|
%D%/packages/profiling.scm \
|
||||||
%D%/packages/pth.scm \
|
%D%/packages/pth.scm \
|
||||||
%D%/packages/pulseaudio.scm \
|
%D%/packages/pulseaudio.scm \
|
||||||
|
@ -480,6 +482,7 @@ GNU_SYSTEM_MODULES = \
|
||||||
%D%/services/networking.scm \
|
%D%/services/networking.scm \
|
||||||
%D%/services/nfs.scm \
|
%D%/services/nfs.scm \
|
||||||
%D%/services/shepherd.scm \
|
%D%/services/shepherd.scm \
|
||||||
|
%D%/services/sound.scm \
|
||||||
%D%/services/herd.scm \
|
%D%/services/herd.scm \
|
||||||
%D%/services/pm.scm \
|
%D%/services/pm.scm \
|
||||||
%D%/services/rsync.scm \
|
%D%/services/rsync.scm \
|
||||||
|
@ -551,12 +554,15 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/abiword-black-drawing-with-gtk322.patch \
|
%D%/packages/patches/abiword-black-drawing-with-gtk322.patch \
|
||||||
%D%/packages/patches/acl-fix-perl-regex.patch \
|
%D%/packages/patches/acl-fix-perl-regex.patch \
|
||||||
%D%/packages/patches/acl-hurd-path-max.patch \
|
%D%/packages/patches/acl-hurd-path-max.patch \
|
||||||
|
%D%/packages/patches/adb-add-libraries.patch \
|
||||||
%D%/packages/patches/aegis-constness-error.patch \
|
%D%/packages/patches/aegis-constness-error.patch \
|
||||||
%D%/packages/patches/aegis-perl-tempdir1.patch \
|
%D%/packages/patches/aegis-perl-tempdir1.patch \
|
||||||
%D%/packages/patches/aegis-perl-tempdir2.patch \
|
%D%/packages/patches/aegis-perl-tempdir2.patch \
|
||||||
%D%/packages/patches/aegis-test-fixup-1.patch \
|
%D%/packages/patches/aegis-test-fixup-1.patch \
|
||||||
%D%/packages/patches/aegis-test-fixup-2.patch \
|
%D%/packages/patches/aegis-test-fixup-2.patch \
|
||||||
%D%/packages/patches/agg-am_c_prototype.patch \
|
%D%/packages/patches/agg-am_c_prototype.patch \
|
||||||
|
%D%/packages/patches/alsa-lib-add-environment-variable.patch \
|
||||||
|
%D%/packages/patches/amule-crypto-6.patch \
|
||||||
%D%/packages/patches/ansible-wrap-program-hack.patch \
|
%D%/packages/patches/ansible-wrap-program-hack.patch \
|
||||||
%D%/packages/patches/antiword-CVE-2014-8123.patch \
|
%D%/packages/patches/antiword-CVE-2014-8123.patch \
|
||||||
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
|
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
|
||||||
|
@ -575,9 +581,10 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/azr3.patch \
|
%D%/packages/patches/azr3.patch \
|
||||||
%D%/packages/patches/bash-completion-directories.patch \
|
%D%/packages/patches/bash-completion-directories.patch \
|
||||||
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
|
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
|
||||||
%D%/packages/patches/binutils-ld-new-dtags.patch \
|
|
||||||
%D%/packages/patches/binutils-loongson-workaround.patch \
|
%D%/packages/patches/binutils-loongson-workaround.patch \
|
||||||
%D%/packages/patches/blast+-fix-makefile.patch \
|
%D%/packages/patches/blast+-fix-makefile.patch \
|
||||||
|
%D%/packages/patches/boost-fix-icu-build.patch \
|
||||||
|
%D%/packages/patches/btrfs-progs-e-value-block.patch \
|
||||||
%D%/packages/patches/byobu-writable-status.patch \
|
%D%/packages/patches/byobu-writable-status.patch \
|
||||||
%D%/packages/patches/cairo-CVE-2016-9082.patch \
|
%D%/packages/patches/cairo-CVE-2016-9082.patch \
|
||||||
%D%/packages/patches/calibre-no-updates-dialog.patch \
|
%D%/packages/patches/calibre-no-updates-dialog.patch \
|
||||||
|
@ -602,7 +609,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/clisp-remove-failing-test.patch \
|
%D%/packages/patches/clisp-remove-failing-test.patch \
|
||||||
%D%/packages/patches/clucene-pkgconfig.patch \
|
%D%/packages/patches/clucene-pkgconfig.patch \
|
||||||
%D%/packages/patches/clx-remove-demo.patch \
|
%D%/packages/patches/clx-remove-demo.patch \
|
||||||
%D%/packages/patches/cmake-fix-tests.patch \
|
|
||||||
%D%/packages/patches/coda-use-system-libs.patch \
|
%D%/packages/patches/coda-use-system-libs.patch \
|
||||||
%D%/packages/patches/cool-retro-term-dont-check-uninit-member.patch \
|
%D%/packages/patches/cool-retro-term-dont-check-uninit-member.patch \
|
||||||
%D%/packages/patches/cool-retro-term-fix-array-size.patch \
|
%D%/packages/patches/cool-retro-term-fix-array-size.patch \
|
||||||
|
@ -629,11 +635,14 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
|
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
|
||||||
%D%/packages/patches/doc++-include-directives.patch \
|
%D%/packages/patches/doc++-include-directives.patch \
|
||||||
%D%/packages/patches/doc++-segfault-fix.patch \
|
%D%/packages/patches/doc++-segfault-fix.patch \
|
||||||
|
%D%/packages/patches/doxygen-gcc-ice.patch \
|
||||||
%D%/packages/patches/doxygen-test.patch \
|
%D%/packages/patches/doxygen-test.patch \
|
||||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||||
|
%D%/packages/patches/e2fsprogs-glibc-2.27.patch \
|
||||||
%D%/packages/patches/eigen-arm-neon-fixes.patch \
|
%D%/packages/patches/eigen-arm-neon-fixes.patch \
|
||||||
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
||||||
%D%/packages/patches/elixir-disable-failing-tests.patch \
|
%D%/packages/patches/elixir-disable-failing-tests.patch \
|
||||||
|
%D%/packages/patches/elogind-glibc-2.27.patch \
|
||||||
%D%/packages/patches/einstein-build.patch \
|
%D%/packages/patches/einstein-build.patch \
|
||||||
%D%/packages/patches/emacs-browse-at-remote-cgit-gnu.patch \
|
%D%/packages/patches/emacs-browse-at-remote-cgit-gnu.patch \
|
||||||
%D%/packages/patches/emacs-exec-path.patch \
|
%D%/packages/patches/emacs-exec-path.patch \
|
||||||
|
@ -642,6 +651,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
|
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
|
||||||
%D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
|
%D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
|
||||||
%D%/packages/patches/emacs-source-date-epoch.patch \
|
%D%/packages/patches/emacs-source-date-epoch.patch \
|
||||||
|
%D%/packages/patches/enlightenment-fix-setuid-path.patch \
|
||||||
%D%/packages/patches/erlang-man-path.patch \
|
%D%/packages/patches/erlang-man-path.patch \
|
||||||
%D%/packages/patches/eudev-rules-directory.patch \
|
%D%/packages/patches/eudev-rules-directory.patch \
|
||||||
%D%/packages/patches/evilwm-lost-focus-bug.patch \
|
%D%/packages/patches/evilwm-lost-focus-bug.patch \
|
||||||
|
@ -656,6 +666,8 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/fasthenry-spFactor.patch \
|
%D%/packages/patches/fasthenry-spFactor.patch \
|
||||||
%D%/packages/patches/fcgi-2.4.0-gcc44-fixes.patch \
|
%D%/packages/patches/fcgi-2.4.0-gcc44-fixes.patch \
|
||||||
%D%/packages/patches/fcgi-2.4.0-poll.patch \
|
%D%/packages/patches/fcgi-2.4.0-poll.patch \
|
||||||
|
%D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \
|
||||||
|
%D%/packages/patches/fifo-map-remove-catch.hpp.patch \
|
||||||
%D%/packages/patches/file-CVE-2017-1000249.patch \
|
%D%/packages/patches/file-CVE-2017-1000249.patch \
|
||||||
%D%/packages/patches/findutils-localstatedir.patch \
|
%D%/packages/patches/findutils-localstatedir.patch \
|
||||||
%D%/packages/patches/findutils-test-xargs.patch \
|
%D%/packages/patches/findutils-test-xargs.patch \
|
||||||
|
@ -664,7 +676,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/fltk-xfont-on-demand.patch \
|
%D%/packages/patches/fltk-xfont-on-demand.patch \
|
||||||
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
|
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
|
||||||
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
|
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
|
||||||
%D%/packages/patches/fontconfig-remove-debug-printf.patch \
|
|
||||||
%D%/packages/patches/freeimage-CVE-2015-0852.patch \
|
%D%/packages/patches/freeimage-CVE-2015-0852.patch \
|
||||||
%D%/packages/patches/freeimage-CVE-2016-5684.patch \
|
%D%/packages/patches/freeimage-CVE-2016-5684.patch \
|
||||||
%D%/packages/patches/freeimage-fix-build-with-gcc-5.patch \
|
%D%/packages/patches/freeimage-fix-build-with-gcc-5.patch \
|
||||||
|
@ -696,7 +707,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/gd-CVE-2018-5711.patch \
|
%D%/packages/patches/gd-CVE-2018-5711.patch \
|
||||||
%D%/packages/patches/gd-fix-tests-on-i686.patch \
|
%D%/packages/patches/gd-fix-tests-on-i686.patch \
|
||||||
%D%/packages/patches/gd-freetype-test-failure.patch \
|
%D%/packages/patches/gd-freetype-test-failure.patch \
|
||||||
%D%/packages/patches/gegl-CVE-2012-4433.patch \
|
|
||||||
%D%/packages/patches/gemma-intel-compat.patch \
|
%D%/packages/patches/gemma-intel-compat.patch \
|
||||||
%D%/packages/patches/geoclue-config.patch \
|
%D%/packages/patches/geoclue-config.patch \
|
||||||
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
|
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
|
||||||
|
@ -706,13 +716,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
||||||
%D%/packages/patches/ghostscript-runpath.patch \
|
%D%/packages/patches/ghostscript-runpath.patch \
|
||||||
%D%/packages/patches/giflib-make-reallocarray-private.patch \
|
%D%/packages/patches/giflib-make-reallocarray-private.patch \
|
||||||
%D%/packages/patches/gimp-CVE-2017-17784.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17785.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17786.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17787.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17789.patch \
|
|
||||||
%D%/packages/patches/glib-networking-ssl-cert-file.patch \
|
%D%/packages/patches/glib-networking-ssl-cert-file.patch \
|
||||||
%D%/packages/patches/glib-respect-datadir.patch \
|
|
||||||
%D%/packages/patches/glib-tests-timer.patch \
|
%D%/packages/patches/glib-tests-timer.patch \
|
||||||
%D%/packages/patches/glibc-CVE-2015-5180.patch \
|
%D%/packages/patches/glibc-CVE-2015-5180.patch \
|
||||||
%D%/packages/patches/glibc-CVE-2015-7547.patch \
|
%D%/packages/patches/glibc-CVE-2015-7547.patch \
|
||||||
|
@ -724,12 +728,15 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/glibc-CVE-2017-1000366-pt3.patch \
|
%D%/packages/patches/glibc-CVE-2017-1000366-pt3.patch \
|
||||||
%D%/packages/patches/glibc-allow-kernel-2.6.32.patch \
|
%D%/packages/patches/glibc-allow-kernel-2.6.32.patch \
|
||||||
%D%/packages/patches/glibc-bootstrap-system.patch \
|
%D%/packages/patches/glibc-bootstrap-system.patch \
|
||||||
|
%D%/packages/patches/glibc-hidden-visibility-ldconfig.patch \
|
||||||
%D%/packages/patches/glibc-ldd-x86_64.patch \
|
%D%/packages/patches/glibc-ldd-x86_64.patch \
|
||||||
%D%/packages/patches/glibc-locales.patch \
|
%D%/packages/patches/glibc-locales.patch \
|
||||||
%D%/packages/patches/glibc-memchr-overflow-i686.patch \
|
%D%/packages/patches/glibc-memchr-overflow-i686.patch \
|
||||||
%D%/packages/patches/glibc-o-largefile.patch \
|
%D%/packages/patches/glibc-o-largefile.patch \
|
||||||
|
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
|
||||||
%D%/packages/patches/glibc-vectorized-strcspn-guards.patch \
|
%D%/packages/patches/glibc-vectorized-strcspn-guards.patch \
|
||||||
%D%/packages/patches/glibc-versioned-locpath.patch \
|
%D%/packages/patches/glibc-versioned-locpath.patch \
|
||||||
|
%D%/packages/patches/glibc-2.27-git-fixes.patch \
|
||||||
%D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \
|
%D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \
|
||||||
%D%/packages/patches/glog-gcc-5-demangling.patch \
|
%D%/packages/patches/glog-gcc-5-demangling.patch \
|
||||||
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
|
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
|
||||||
|
@ -737,6 +744,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/gnome-todo-libical-compat.patch \
|
%D%/packages/patches/gnome-todo-libical-compat.patch \
|
||||||
%D%/packages/patches/gnome-tweak-tool-search-paths.patch \
|
%D%/packages/patches/gnome-tweak-tool-search-paths.patch \
|
||||||
%D%/packages/patches/gnucash-price-quotes-perl.patch \
|
%D%/packages/patches/gnucash-price-quotes-perl.patch \
|
||||||
|
%D%/packages/patches/gnupg-1.4-CVE-2018-12020.patch \
|
||||||
%D%/packages/patches/gnutls-skip-trust-store-test.patch \
|
%D%/packages/patches/gnutls-skip-trust-store-test.patch \
|
||||||
%D%/packages/patches/gnutls-skip-pkgconfig-test.patch \
|
%D%/packages/patches/gnutls-skip-pkgconfig-test.patch \
|
||||||
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
|
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
|
||||||
|
@ -745,14 +753,15 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/gpm-glibc-2.26.patch \
|
%D%/packages/patches/gpm-glibc-2.26.patch \
|
||||||
%D%/packages/patches/gpsbabel-minizip.patch \
|
%D%/packages/patches/gpsbabel-minizip.patch \
|
||||||
%D%/packages/patches/gpsbabel-qstring.patch \
|
%D%/packages/patches/gpsbabel-qstring.patch \
|
||||||
%D%/packages/patches/graphite2-ffloat-store.patch \
|
|
||||||
%D%/packages/patches/grep-timing-sensitive-test.patch \
|
%D%/packages/patches/grep-timing-sensitive-test.patch \
|
||||||
%D%/packages/patches/groff-source-date-epoch.patch \
|
%D%/packages/patches/groff-source-date-epoch.patch \
|
||||||
|
%D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \
|
||||||
%D%/packages/patches/gsl-test-i686.patch \
|
%D%/packages/patches/gsl-test-i686.patch \
|
||||||
%D%/packages/patches/gspell-dash-test.patch \
|
%D%/packages/patches/gspell-dash-test.patch \
|
||||||
%D%/packages/patches/guile-1.8-cpp-4.5.patch \
|
%D%/packages/patches/guile-1.8-cpp-4.5.patch \
|
||||||
%D%/packages/patches/guile-2.2-default-utf8.patch \
|
%D%/packages/patches/guile-2.2-default-utf8.patch \
|
||||||
%D%/packages/patches/guile-default-utf8.patch \
|
%D%/packages/patches/guile-default-utf8.patch \
|
||||||
|
%D%/packages/patches/guile-gdbm-ffi-support-gdbm-1.14.patch \
|
||||||
%D%/packages/patches/guile-linux-syscalls.patch \
|
%D%/packages/patches/guile-linux-syscalls.patch \
|
||||||
%D%/packages/patches/guile-present-coding.patch \
|
%D%/packages/patches/guile-present-coding.patch \
|
||||||
%D%/packages/patches/guile-relocatable.patch \
|
%D%/packages/patches/guile-relocatable.patch \
|
||||||
|
@ -777,14 +786,13 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/hdf-eos5-remove-gctp.patch \
|
%D%/packages/patches/hdf-eos5-remove-gctp.patch \
|
||||||
%D%/packages/patches/hdf-eos5-fix-szip.patch \
|
%D%/packages/patches/hdf-eos5-fix-szip.patch \
|
||||||
%D%/packages/patches/hdf-eos5-fortrantests.patch \
|
%D%/packages/patches/hdf-eos5-fortrantests.patch \
|
||||||
%D%/packages/patches/heimdal-CVE-2017-6594.patch \
|
|
||||||
%D%/packages/patches/heimdal-CVE-2017-11103.patch \
|
|
||||||
%D%/packages/patches/hmmer-remove-cpu-specificity.patch \
|
%D%/packages/patches/hmmer-remove-cpu-specificity.patch \
|
||||||
%D%/packages/patches/higan-remove-march-native-flag.patch \
|
%D%/packages/patches/higan-remove-march-native-flag.patch \
|
||||||
%D%/packages/patches/hubbub-sort-entities.patch \
|
%D%/packages/patches/hubbub-sort-entities.patch \
|
||||||
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
|
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
|
||||||
%D%/packages/patches/hydra-disable-darcs-test.patch \
|
%D%/packages/patches/hydra-disable-darcs-test.patch \
|
||||||
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
|
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
|
||||||
|
%D%/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch \
|
||||||
%D%/packages/patches/icecat-use-system-graphite2.patch \
|
%D%/packages/patches/icecat-use-system-graphite2.patch \
|
||||||
%D%/packages/patches/icecat-use-system-harfbuzz.patch \
|
%D%/packages/patches/icecat-use-system-harfbuzz.patch \
|
||||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||||
|
@ -805,6 +813,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/jq-CVE-2015-8863.patch \
|
%D%/packages/patches/jq-CVE-2015-8863.patch \
|
||||||
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
|
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
|
||||||
%D%/packages/patches/khmer-use-libraries.patch \
|
%D%/packages/patches/khmer-use-libraries.patch \
|
||||||
|
%D%/packages/patches/libziparchive-add-includes.patch \
|
||||||
%D%/packages/patches/kiki-level-selection-crash.patch \
|
%D%/packages/patches/kiki-level-selection-crash.patch \
|
||||||
%D%/packages/patches/kiki-makefile.patch \
|
%D%/packages/patches/kiki-makefile.patch \
|
||||||
%D%/packages/patches/kiki-missing-includes.patch \
|
%D%/packages/patches/kiki-missing-includes.patch \
|
||||||
|
@ -817,7 +826,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch \
|
%D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch \
|
||||||
%D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \
|
%D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \
|
||||||
%D%/packages/patches/laby-make-install.patch \
|
%D%/packages/patches/laby-make-install.patch \
|
||||||
%D%/packages/patches/lcms-CVE-2016-10165.patch \
|
|
||||||
%D%/packages/patches/ldc-bootstrap-disable-tests.patch \
|
%D%/packages/patches/ldc-bootstrap-disable-tests.patch \
|
||||||
%D%/packages/patches/ldc-1.7.0-disable-phobos-tests.patch \
|
%D%/packages/patches/ldc-1.7.0-disable-phobos-tests.patch \
|
||||||
%D%/packages/patches/ledger-fix-uninitialized.patch \
|
%D%/packages/patches/ledger-fix-uninitialized.patch \
|
||||||
|
@ -849,17 +857,20 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/libgdata-glib-duplicate-tests.patch \
|
%D%/packages/patches/libgdata-glib-duplicate-tests.patch \
|
||||||
%D%/packages/patches/libgnome-encoding.patch \
|
%D%/packages/patches/libgnome-encoding.patch \
|
||||||
%D%/packages/patches/libgnomeui-utf8.patch \
|
%D%/packages/patches/libgnomeui-utf8.patch \
|
||||||
|
%D%/packages/patches/libgpg-error-aarch64-logging-fix.patch \
|
||||||
%D%/packages/patches/libgxps-CVE-2017-11590.patch \
|
%D%/packages/patches/libgxps-CVE-2017-11590.patch \
|
||||||
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
|
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
|
||||||
%D%/packages/patches/libjxr-fix-function-signature.patch \
|
%D%/packages/patches/libjxr-fix-function-signature.patch \
|
||||||
%D%/packages/patches/libjxr-fix-typos.patch \
|
%D%/packages/patches/libjxr-fix-typos.patch \
|
||||||
%D%/packages/patches/liboop-mips64-deplibs-fix.patch \
|
|
||||||
%D%/packages/patches/libotr-test-auth-fix.patch \
|
%D%/packages/patches/libotr-test-auth-fix.patch \
|
||||||
%D%/packages/patches/liblxqt-include.patch \
|
%D%/packages/patches/liblxqt-include.patch \
|
||||||
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \
|
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \
|
||||||
%D%/packages/patches/libmad-armv7-thumb-pt2.patch \
|
%D%/packages/patches/libmad-armv7-thumb-pt2.patch \
|
||||||
%D%/packages/patches/libmad-frame-length.patch \
|
%D%/packages/patches/libmad-frame-length.patch \
|
||||||
%D%/packages/patches/libmad-mips-newgcc.patch \
|
%D%/packages/patches/libmad-mips-newgcc.patch \
|
||||||
|
%D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \
|
||||||
|
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
|
||||||
|
%D%/packages/patches/libreoffice-icu.patch \
|
||||||
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
|
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
|
||||||
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
|
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
|
||||||
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \
|
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \
|
||||||
|
@ -867,19 +878,16 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/libssh-hostname-parser-bug.patch \
|
%D%/packages/patches/libssh-hostname-parser-bug.patch \
|
||||||
%D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \
|
%D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \
|
||||||
%D%/packages/patches/libtar-CVE-2013-4420.patch \
|
%D%/packages/patches/libtar-CVE-2013-4420.patch \
|
||||||
%D%/packages/patches/libtasn1-CVE-2017-10790.patch \
|
|
||||||
%D%/packages/patches/libtasn1-CVE-2018-6003.patch \
|
|
||||||
%D%/packages/patches/libtheora-config-guess.patch \
|
%D%/packages/patches/libtheora-config-guess.patch \
|
||||||
%D%/packages/patches/libtiff-CVE-2017-9935.patch \
|
%D%/packages/patches/libtiff-CVE-2017-9935.patch \
|
||||||
%D%/packages/patches/libtiff-CVE-2017-18013.patch \
|
%D%/packages/patches/libtiff-CVE-2017-18013.patch \
|
||||||
%D%/packages/patches/libtool-skip-tests2.patch \
|
%D%/packages/patches/libtool-skip-tests2.patch \
|
||||||
%D%/packages/patches/libusb-0.1-disable-tests.patch \
|
%D%/packages/patches/libusb-0.1-disable-tests.patch \
|
||||||
%D%/packages/patches/libusb-for-axoloti.patch \
|
%D%/packages/patches/libusb-for-axoloti.patch \
|
||||||
|
%D%/packages/patches/libutils-add-includes.patch \
|
||||||
|
%D%/packages/patches/libutils-remove-damaging-includes.patch \
|
||||||
%D%/packages/patches/libvdpau-va-gl-unbundle.patch \
|
%D%/packages/patches/libvdpau-va-gl-unbundle.patch \
|
||||||
%D%/packages/patches/libvorbis-CVE-2017-14632.patch \
|
|
||||||
%D%/packages/patches/libvorbis-CVE-2017-14633.patch \
|
|
||||||
%D%/packages/patches/libvpx-CVE-2016-2818.patch \
|
%D%/packages/patches/libvpx-CVE-2016-2818.patch \
|
||||||
%D%/packages/patches/libxcb-python-3.5-compat.patch \
|
|
||||||
%D%/packages/patches/libxslt-generated-ids.patch \
|
%D%/packages/patches/libxslt-generated-ids.patch \
|
||||||
%D%/packages/patches/libxt-guix-search-paths.patch \
|
%D%/packages/patches/libxt-guix-search-paths.patch \
|
||||||
%D%/packages/patches/lierolibre-check-unaligned-access.patch \
|
%D%/packages/patches/lierolibre-check-unaligned-access.patch \
|
||||||
|
@ -905,10 +913,13 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/lxsession-use-gapplication.patch \
|
%D%/packages/patches/lxsession-use-gapplication.patch \
|
||||||
%D%/packages/patches/lyx-2.2.3-fix-test.patch \
|
%D%/packages/patches/lyx-2.2.3-fix-test.patch \
|
||||||
%D%/packages/patches/mailutils-uninitialized-memory.patch \
|
%D%/packages/patches/mailutils-uninitialized-memory.patch \
|
||||||
|
%D%/packages/patches/make-glibc-compat.patch \
|
||||||
%D%/packages/patches/make-impure-dirs.patch \
|
%D%/packages/patches/make-impure-dirs.patch \
|
||||||
%D%/packages/patches/mars-install.patch \
|
%D%/packages/patches/mars-install.patch \
|
||||||
%D%/packages/patches/mars-sfml-2.3.patch \
|
%D%/packages/patches/mars-sfml-2.3.patch \
|
||||||
%D%/packages/patches/maxima-defsystem-mkdir.patch \
|
%D%/packages/patches/maxima-defsystem-mkdir.patch \
|
||||||
|
%D%/packages/patches/maven-generate-component-xml.patch \
|
||||||
|
%D%/packages/patches/maven-generate-javax-inject-named.patch \
|
||||||
%D%/packages/patches/mcron-install.patch \
|
%D%/packages/patches/mcron-install.patch \
|
||||||
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \
|
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \
|
||||||
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
|
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
|
||||||
|
@ -927,14 +938,12 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/mozjs38-shell-version.patch \
|
%D%/packages/patches/mozjs38-shell-version.patch \
|
||||||
%D%/packages/patches/mozjs38-tracelogger.patch \
|
%D%/packages/patches/mozjs38-tracelogger.patch \
|
||||||
%D%/packages/patches/mozjs38-version-detection.patch \
|
%D%/packages/patches/mozjs38-version-detection.patch \
|
||||||
|
%D%/packages/patches/mumble-1.2.19-abs.patch \
|
||||||
%D%/packages/patches/mumps-build-parallelism.patch \
|
%D%/packages/patches/mumps-build-parallelism.patch \
|
||||||
%D%/packages/patches/mupdf-build-with-latest-openjpeg.patch \
|
|
||||||
%D%/packages/patches/mupdf-CVE-2017-17858.patch \
|
|
||||||
%D%/packages/patches/mupdf-CVE-2018-6544.patch \
|
|
||||||
%D%/packages/patches/mupdf-CVE-2018-1000051.patch \
|
|
||||||
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
|
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
|
||||||
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
|
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
|
||||||
%D%/packages/patches/mutt-store-references.patch \
|
%D%/packages/patches/mutt-store-references.patch \
|
||||||
|
%D%/packages/patches/myrepos-CVE-2018-7032.patch \
|
||||||
%D%/packages/patches/net-tools-bitrot.patch \
|
%D%/packages/patches/net-tools-bitrot.patch \
|
||||||
%D%/packages/patches/netcdf-date-time.patch \
|
%D%/packages/patches/netcdf-date-time.patch \
|
||||||
%D%/packages/patches/netcdf-tst_h_par.patch \
|
%D%/packages/patches/netcdf-tst_h_par.patch \
|
||||||
|
@ -962,6 +971,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/openldap-CVE-2017-9287.patch \
|
%D%/packages/patches/openldap-CVE-2017-9287.patch \
|
||||||
%D%/packages/patches/openocd-nrf52.patch \
|
%D%/packages/patches/openocd-nrf52.patch \
|
||||||
%D%/packages/patches/openscenegraph-ffmpeg3.patch \
|
%D%/packages/patches/openscenegraph-ffmpeg3.patch \
|
||||||
|
%D%/packages/patches/opensmtpd-fix-crash.patch \
|
||||||
%D%/packages/patches/openssl-runpath.patch \
|
%D%/packages/patches/openssl-runpath.patch \
|
||||||
%D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \
|
%D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \
|
||||||
%D%/packages/patches/openssl-c-rehash-in.patch \
|
%D%/packages/patches/openssl-c-rehash-in.patch \
|
||||||
|
@ -977,8 +987,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/patchelf-rework-for-arm.patch \
|
%D%/packages/patches/patchelf-rework-for-arm.patch \
|
||||||
%D%/packages/patches/patchutils-xfail-gendiff-tests.patch \
|
%D%/packages/patches/patchutils-xfail-gendiff-tests.patch \
|
||||||
%D%/packages/patches/patch-hurd-path-max.patch \
|
%D%/packages/patches/patch-hurd-path-max.patch \
|
||||||
%D%/packages/patches/pcre2-CVE-2017-7186.patch \
|
%D%/packages/patches/perf-gcc-ice.patch \
|
||||||
%D%/packages/patches/pcre2-CVE-2017-8786.patch \
|
|
||||||
%D%/packages/patches/perl-file-path-CVE-2017-6512.patch \
|
%D%/packages/patches/perl-file-path-CVE-2017-6512.patch \
|
||||||
%D%/packages/patches/perl-autosplit-default-time.patch \
|
%D%/packages/patches/perl-autosplit-default-time.patch \
|
||||||
%D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \
|
%D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \
|
||||||
|
@ -999,6 +1008,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/pinball-src-deps.patch \
|
%D%/packages/patches/pinball-src-deps.patch \
|
||||||
%D%/packages/patches/pinball-system-ltdl.patch \
|
%D%/packages/patches/pinball-system-ltdl.patch \
|
||||||
%D%/packages/patches/pingus-sdl-libs-config.patch \
|
%D%/packages/patches/pingus-sdl-libs-config.patch \
|
||||||
|
%D%/packages/patches/pius.patch \
|
||||||
%D%/packages/patches/pixman-CVE-2016-5296.patch \
|
%D%/packages/patches/pixman-CVE-2016-5296.patch \
|
||||||
%D%/packages/patches/plink-1.07-unclobber-i.patch \
|
%D%/packages/patches/plink-1.07-unclobber-i.patch \
|
||||||
%D%/packages/patches/plink-endian-detection.patch \
|
%D%/packages/patches/plink-endian-detection.patch \
|
||||||
|
@ -1015,8 +1025,8 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/psm-ldflags.patch \
|
%D%/packages/patches/psm-ldflags.patch \
|
||||||
%D%/packages/patches/psm-repro.patch \
|
%D%/packages/patches/psm-repro.patch \
|
||||||
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
|
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
|
||||||
|
%D%/packages/patches/pulseaudio-glibc-2.27.patch \
|
||||||
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
|
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
|
||||||
%D%/packages/patches/pycairo-wscript.patch \
|
|
||||||
%D%/packages/patches/pybugz-encode-error.patch \
|
%D%/packages/patches/pybugz-encode-error.patch \
|
||||||
%D%/packages/patches/pybugz-stty.patch \
|
%D%/packages/patches/pybugz-stty.patch \
|
||||||
%D%/packages/patches/pygpgme-disable-problematic-tests.patch \
|
%D%/packages/patches/pygpgme-disable-problematic-tests.patch \
|
||||||
|
@ -1043,7 +1053,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/python-nose-timer-drop-ordereddict.patch \
|
%D%/packages/patches/python-nose-timer-drop-ordereddict.patch \
|
||||||
%D%/packages/patches/python-pillow-fix-failing-tests.patch \
|
%D%/packages/patches/python-pillow-fix-failing-tests.patch \
|
||||||
%D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
|
%D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
|
||||||
%D%/packages/patches/python-statsmodels-fix-tests.patch \
|
|
||||||
%D%/packages/patches/python-scikit-learn-fix-test-non-determinism.patch \
|
%D%/packages/patches/python-scikit-learn-fix-test-non-determinism.patch \
|
||||||
%D%/packages/patches/python-configobj-setuptools.patch \
|
%D%/packages/patches/python-configobj-setuptools.patch \
|
||||||
%D%/packages/patches/python-faker-fix-build-32bit.patch \
|
%D%/packages/patches/python-faker-fix-build-32bit.patch \
|
||||||
|
@ -1058,10 +1067,12 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/python-unittest2-python3-compat.patch \
|
%D%/packages/patches/python-unittest2-python3-compat.patch \
|
||||||
%D%/packages/patches/python-unittest2-remove-argparse.patch \
|
%D%/packages/patches/python-unittest2-remove-argparse.patch \
|
||||||
%D%/packages/patches/python-waitress-fix-tests.patch \
|
%D%/packages/patches/python-waitress-fix-tests.patch \
|
||||||
|
%D%/packages/patches/qemu-glibc-2.27.patch \
|
||||||
%D%/packages/patches/qt4-ldflags.patch \
|
%D%/packages/patches/qt4-ldflags.patch \
|
||||||
%D%/packages/patches/qtbase-use-TZDIR.patch \
|
%D%/packages/patches/qtbase-use-TZDIR.patch \
|
||||||
%D%/packages/patches/qtscript-disable-tests.patch \
|
%D%/packages/patches/qtscript-disable-tests.patch \
|
||||||
%D%/packages/patches/quagga-reproducible-build.patch \
|
%D%/packages/patches/quagga-reproducible-build.patch \
|
||||||
|
%D%/packages/patches/quassel-qt-5.11.patch \
|
||||||
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
|
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
|
||||||
%D%/packages/patches/rapicorn-isnan.patch \
|
%D%/packages/patches/rapicorn-isnan.patch \
|
||||||
%D%/packages/patches/raptor2-heap-overflow.patch \
|
%D%/packages/patches/raptor2-heap-overflow.patch \
|
||||||
|
@ -1088,9 +1099,9 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/scotch-build-parallelism.patch \
|
%D%/packages/patches/scotch-build-parallelism.patch \
|
||||||
%D%/packages/patches/scotch-graph-diam-64.patch \
|
%D%/packages/patches/scotch-graph-diam-64.patch \
|
||||||
%D%/packages/patches/scotch-graph-induce-type-64.patch \
|
%D%/packages/patches/scotch-graph-induce-type-64.patch \
|
||||||
|
%D%/packages/patches/sddm-fix-build-with-qt-5.11-1024.patch \
|
||||||
%D%/packages/patches/sdl-libx11-1.6.patch \
|
%D%/packages/patches/sdl-libx11-1.6.patch \
|
||||||
%D%/packages/patches/seq24-rename-mutex.patch \
|
%D%/packages/patches/seq24-rename-mutex.patch \
|
||||||
%D%/packages/patches/shadow-CVE-2018-7169.patch \
|
|
||||||
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
||||||
%D%/packages/patches/shishi-fix-libgcrypt-detection.patch \
|
%D%/packages/patches/shishi-fix-libgcrypt-detection.patch \
|
||||||
%D%/packages/patches/slim-session.patch \
|
%D%/packages/patches/slim-session.patch \
|
||||||
|
@ -1100,6 +1111,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/slim-login.patch \
|
%D%/packages/patches/slim-login.patch \
|
||||||
%D%/packages/patches/sooperlooper-build-with-wx-30.patch \
|
%D%/packages/patches/sooperlooper-build-with-wx-30.patch \
|
||||||
%D%/packages/patches/steghide-fixes.patch \
|
%D%/packages/patches/steghide-fixes.patch \
|
||||||
|
%D%/packages/patches/strace-kernel-4.16.patch \
|
||||||
%D%/packages/patches/superlu-dist-scotchmetis.patch \
|
%D%/packages/patches/superlu-dist-scotchmetis.patch \
|
||||||
%D%/packages/patches/swish-e-search.patch \
|
%D%/packages/patches/swish-e-search.patch \
|
||||||
%D%/packages/patches/swish-e-format-security.patch \
|
%D%/packages/patches/swish-e-format-security.patch \
|
||||||
|
@ -1107,7 +1119,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/t1lib-CVE-2010-2642.patch \
|
%D%/packages/patches/t1lib-CVE-2010-2642.patch \
|
||||||
%D%/packages/patches/t1lib-CVE-2011-0764.patch \
|
%D%/packages/patches/t1lib-CVE-2011-0764.patch \
|
||||||
%D%/packages/patches/t1lib-CVE-2011-1552+.patch \
|
%D%/packages/patches/t1lib-CVE-2011-1552+.patch \
|
||||||
%D%/packages/patches/tar-CVE-2016-6321.patch \
|
%D%/packages/patches/tar-remove-wholesparse-check.patch \
|
||||||
%D%/packages/patches/tar-skip-unreliable-tests.patch \
|
%D%/packages/patches/tar-skip-unreliable-tests.patch \
|
||||||
%D%/packages/patches/tclxml-3.2-install.patch \
|
%D%/packages/patches/tclxml-3.2-install.patch \
|
||||||
%D%/packages/patches/tcsh-fix-autotest.patch \
|
%D%/packages/patches/tcsh-fix-autotest.patch \
|
||||||
|
@ -1143,7 +1155,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/unzip-overflow-long-fsize.patch \
|
%D%/packages/patches/unzip-overflow-long-fsize.patch \
|
||||||
%D%/packages/patches/unzip-remove-build-date.patch \
|
%D%/packages/patches/unzip-remove-build-date.patch \
|
||||||
%D%/packages/patches/ustr-fix-build-with-gcc-5.patch \
|
%D%/packages/patches/ustr-fix-build-with-gcc-5.patch \
|
||||||
%D%/packages/patches/util-linux-CVE-2018-7738.patch \
|
|
||||||
%D%/packages/patches/util-linux-tests.patch \
|
%D%/packages/patches/util-linux-tests.patch \
|
||||||
%D%/packages/patches/upower-builddir.patch \
|
%D%/packages/patches/upower-builddir.patch \
|
||||||
%D%/packages/patches/valgrind-enable-arm.patch \
|
%D%/packages/patches/valgrind-enable-arm.patch \
|
||||||
|
@ -1178,8 +1189,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/wpa-supplicant-krack-followups.patch \
|
%D%/packages/patches/wpa-supplicant-krack-followups.patch \
|
||||||
%D%/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch \
|
%D%/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch \
|
||||||
%D%/packages/patches/xboing-CVE-2004-0149.patch \
|
%D%/packages/patches/xboing-CVE-2004-0149.patch \
|
||||||
%D%/packages/patches/xcb-proto-python3-print.patch \
|
|
||||||
%D%/packages/patches/xcb-proto-python3-whitespace.patch \
|
|
||||||
%D%/packages/patches/xdotool-fix-makefile.patch \
|
%D%/packages/patches/xdotool-fix-makefile.patch \
|
||||||
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
|
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
|
||||||
%D%/packages/patches/xf86-video-ast-remove-mibstore.patch \
|
%D%/packages/patches/xf86-video-ast-remove-mibstore.patch \
|
||||||
|
|
|
@ -188,7 +188,7 @@ decreasing version order."
|
||||||
version>?)))
|
version>?)))
|
||||||
(if version
|
(if version
|
||||||
(filter (lambda (package)
|
(filter (lambda (package)
|
||||||
(string-prefix? version (package-version package)))
|
(version-prefix? version (package-version package)))
|
||||||
matching)
|
matching)
|
||||||
matching)))))
|
matching)))))
|
||||||
|
|
||||||
|
|
|
@ -83,7 +83,7 @@ available to help to click.")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
(define-public footswitch
|
(define-public footswitch
|
||||||
(let ((commit "deedd87fd90fad90ce342aeabafd4a3198d7d3d4")
|
(let ((commit "ca43d53fc2002520cc825d119702afc124303e73")
|
||||||
(revision "2"))
|
(revision "2"))
|
||||||
(package
|
(package
|
||||||
(name "footswitch")
|
(name "footswitch")
|
||||||
|
@ -95,7 +95,8 @@ available to help to click.")
|
||||||
(commit commit)))
|
(commit commit)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1ys90wqyz62kffa8m3hgaq1dl7f29x3mrc3zqfjrkbn2ps0k6ps0"))))
|
(base32
|
||||||
|
"14pyzc4ws1mj859xs9n4x83wzxxvd3bh5bdxzr6nv267xwx1mq68"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
@ -112,6 +113,7 @@ available to help to click.")
|
||||||
(let ((bin (string-append (assoc-ref outputs "out")
|
(let ((bin (string-append (assoc-ref outputs "out")
|
||||||
"/bin")))
|
"/bin")))
|
||||||
(install-file "footswitch" bin)
|
(install-file "footswitch" bin)
|
||||||
|
(install-file "scythe" bin)
|
||||||
#t))))))
|
#t))))))
|
||||||
(home-page "https://github.com/rgerganov/footswitch")
|
(home-page "https://github.com/rgerganov/footswitch")
|
||||||
(synopsis "Command line utility for PCsensor foot switch")
|
(synopsis "Command line utility for PCsensor foot switch")
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
|
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -47,8 +48,20 @@
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:test-target "tests"
|
`(#:test-target "tests"
|
||||||
|
#:modules ((ice-9 ftw)
|
||||||
|
,@%gnu-build-system-modules)
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
;; XXX After repacking the sources the timestamps are reset to the
|
||||||
|
;; epoch, which leads to a failure in gzipping the CHANGES file.
|
||||||
|
(add-after 'unpack 'ensure-no-mtimes-pre-1980
|
||||||
|
(lambda _
|
||||||
|
(let ((early-1980 315619200)) ; 1980-01-02 UTC
|
||||||
|
(ftw "." (lambda (file stat flag)
|
||||||
|
(unless (<= early-1980 (stat:mtime stat))
|
||||||
|
(utime file early-1980 early-1980))
|
||||||
|
#t))
|
||||||
|
#t)))
|
||||||
(add-after 'build 'patch-exec-bin-sh
|
(add-after 'build 'patch-exec-bin-sh
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "test/run"
|
(substitute* "test/run"
|
||||||
|
@ -64,10 +77,11 @@
|
||||||
;; this user does not exist within Guix's build environment.
|
;; this user does not exist within Guix's build environment.
|
||||||
(for-each (lambda (file)
|
(for-each (lambda (file)
|
||||||
(delete-file (string-append "test/" file)))
|
(delete-file (string-append "test/" file)))
|
||||||
'("setfacl-X.test" "cp.test" "misc.test"))))
|
'("setfacl-X.test" "cp.test" "misc.test"))
|
||||||
|
#t))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "make" "install" "install-lib" "install-dev")))))))
|
(invoke "make" "install" "install-lib" "install-dev"))))))
|
||||||
(inputs `(("attr" ,attr)))
|
(inputs `(("attr" ,attr)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("gettext" ,gettext-minimal)
|
`(("gettext" ,gettext-minimal)
|
||||||
|
|
|
@ -50,8 +50,11 @@
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages cyrus-sasl)
|
#:use-module (gnu packages cyrus-sasl)
|
||||||
|
#:use-module (gnu packages dns)
|
||||||
|
#:use-module (gnu packages file)
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
#:use-module (gnu packages readline)
|
#:use-module (gnu packages readline)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
|
@ -70,6 +73,7 @@
|
||||||
#:use-module (gnu packages gnupg)
|
#:use-module (gnu packages gnupg)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
|
#:use-module (gnu packages gl)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages openldap)
|
#:use-module (gnu packages openldap)
|
||||||
#:use-module (gnu packages mcrypt)
|
#:use-module (gnu packages mcrypt)
|
||||||
|
@ -97,7 +101,8 @@
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module (gnu packages boost)
|
#:use-module (gnu packages boost)
|
||||||
#:use-module (gnu packages elf)
|
#:use-module (gnu packages elf)
|
||||||
#:use-module (gnu packages mpi))
|
#:use-module (gnu packages mpi)
|
||||||
|
#:use-module (gnu packages web))
|
||||||
|
|
||||||
(define-public aide
|
(define-public aide
|
||||||
(package
|
(package
|
||||||
|
@ -358,16 +363,15 @@ hostname.")
|
||||||
(define-public shadow
|
(define-public shadow
|
||||||
(package
|
(package
|
||||||
(name "shadow")
|
(name "shadow")
|
||||||
(version "4.5")
|
(version "4.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://github.com/shadow-maint/shadow/releases/"
|
"https://github.com/shadow-maint/shadow/releases/"
|
||||||
"download/" version "/shadow-" version ".tar.xz"))
|
"download/" version "/shadow-" version ".tar.xz"))
|
||||||
(patches (search-patches "shadow-CVE-2018-7169.patch"))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0hdpai78n63l3v3fgr3kkiqzhd0awrpfnnzz4mf7lmxdh61qb37w"))))
|
"10smy01km2bqjjvsd2jz17zvrxbzj89qczyb1amk38j28bcci609"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(;; Assume System V `setpgrp (void)', which is the default on GNU
|
`(;; Assume System V `setpgrp (void)', which is the default on GNU
|
||||||
|
@ -386,7 +390,8 @@ hostname.")
|
||||||
"libc"))))
|
"libc"))))
|
||||||
(substitute* "lib/nscd.c"
|
(substitute* "lib/nscd.c"
|
||||||
(("/usr/sbin/nscd")
|
(("/usr/sbin/nscd")
|
||||||
(string-append libc "/sbin/nscd"))))))
|
(string-append libc "/sbin/nscd")))
|
||||||
|
#t)))
|
||||||
(add-after 'install 'remove-groups
|
(add-after 'install 'remove-groups
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
;; Remove `groups', which is already provided by Coreutils.
|
;; Remove `groups', which is already provided by Coreutils.
|
||||||
|
@ -486,8 +491,8 @@ allow automatic login and starting any app.")
|
||||||
(output (assoc-ref %outputs "out"))
|
(output (assoc-ref %outputs "out"))
|
||||||
(etc (string-append output "/etc")))
|
(etc (string-append output "/etc")))
|
||||||
(setenv "PATH" (string-append xz "/bin"))
|
(setenv "PATH" (string-append xz "/bin"))
|
||||||
(system* (string-append tar "/bin/tar") "xvf"
|
(invoke (string-append tar "/bin/tar") "xvf"
|
||||||
source)
|
source)
|
||||||
(chdir ,(string-append "netbase-" version))
|
(chdir ,(string-append "netbase-" version))
|
||||||
(mkdir-p etc)
|
(mkdir-p etc)
|
||||||
(for-each copy-file
|
(for-each copy-file
|
||||||
|
@ -603,10 +608,10 @@ connection alive.")
|
||||||
|
|
||||||
(define-public isc-dhcp
|
(define-public isc-dhcp
|
||||||
(let* ((bind-major-version "9")
|
(let* ((bind-major-version "9")
|
||||||
(bind-minor-version "9")
|
(bind-minor-version "11")
|
||||||
(bind-patch-version "11")
|
(bind-patch-version "3")
|
||||||
(bind-release-type "-P") ; for patch release, use "-P"
|
(bind-release-type "") ; for patch release, use "-P"
|
||||||
(bind-release-version "1") ; for patch release, e.g. "6"
|
(bind-release-version "") ; for patch release, e.g. "6"
|
||||||
(bind-version (string-append bind-major-version
|
(bind-version (string-append bind-major-version
|
||||||
"."
|
"."
|
||||||
bind-minor-version
|
bind-minor-version
|
||||||
|
@ -616,14 +621,14 @@ connection alive.")
|
||||||
bind-release-version)))
|
bind-release-version)))
|
||||||
(package
|
(package
|
||||||
(name "isc-dhcp")
|
(name "isc-dhcp")
|
||||||
(version "4.3.6-P1")
|
(version "4.4.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://ftp.isc.org/isc/dhcp/"
|
(uri (string-append "http://ftp.isc.org/isc/dhcp/"
|
||||||
version "/dhcp-" version ".tar.gz"))
|
version "/dhcp-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1hx3az6ckvgvybr1ag4k9kqr8zfcpzcww4vpw5gz0mi8y2z7gl9g"))))
|
"025nfqx4zwdgv4b3rkw26ihcj312vir08jk6yi57ndmb4a4m08ia"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:parallel-build? #f
|
`(#:parallel-build? #f
|
||||||
|
@ -669,16 +674,16 @@ connection alive.")
|
||||||
sh " SHELL=" sh))))
|
sh " SHELL=" sh))))
|
||||||
|
|
||||||
(let ((bind-directory (string-append "bind-" ,bind-version)))
|
(let ((bind-directory (string-append "bind-" ,bind-version)))
|
||||||
(system* "tar" "xf" "bind.tar.gz")
|
(invoke "tar" "xf" "bind.tar.gz")
|
||||||
(for-each patch-shebang
|
(for-each patch-shebang
|
||||||
(find-files bind-directory ".*"))
|
(find-files bind-directory ".*"))
|
||||||
(zero? (system* "tar" "cf" "bind.tar.gz"
|
(invoke "tar" "cf" "bind.tar.gz"
|
||||||
bind-directory
|
bind-directory
|
||||||
;; avoid non-determinism in the archive
|
;; avoid non-determinism in the archive
|
||||||
"--sort=name"
|
"--sort=name"
|
||||||
"--mtime=@0"
|
"--mtime=@0"
|
||||||
"--owner=root:0"
|
"--owner=root:0"
|
||||||
"--group=root:0"))))))
|
"--group=root:0")))))
|
||||||
(add-after 'install 'post-install
|
(add-after 'install 'post-install
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
;; Install the dhclient script for GNU/Linux and make sure
|
;; Install the dhclient script for GNU/Linux and make sure
|
||||||
|
@ -704,7 +709,8 @@ connection alive.")
|
||||||
,(map (lambda (dir)
|
,(map (lambda (dir)
|
||||||
(string-append dir "/bin:"
|
(string-append dir "/bin:"
|
||||||
dir "/sbin"))
|
dir "/sbin"))
|
||||||
(list inetutils net-tools coreutils sed))))))))))
|
(list inetutils net-tools coreutils sed))))
|
||||||
|
#t))))))
|
||||||
|
|
||||||
(native-inputs `(("perl" ,perl)))
|
(native-inputs `(("perl" ,perl)))
|
||||||
|
|
||||||
|
@ -722,7 +728,7 @@ connection alive.")
|
||||||
"/bind-" bind-version ".tar.gz"))
|
"/bind-" bind-version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1a4g6nzzrbmhngdgvgv1jjq4fm06m8fwc2a0gskkchplxl7dva20"))))
|
"1xbnb2b11274z9frc9y7nvkyxr52qx09bwb97gf9qzzcn8adx78d"))))
|
||||||
|
|
||||||
;; When cross-compiling, we need the cross Coreutils and sed.
|
;; When cross-compiling, we need the cross Coreutils and sed.
|
||||||
;; Otherwise just use those from %FINAL-INPUTS.
|
;; Otherwise just use those from %FINAL-INPUTS.
|
||||||
|
@ -737,7 +743,7 @@ connection alive.")
|
||||||
"ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a
|
"ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a
|
||||||
reference implementation of all aspects of DHCP, through a suite of DHCP
|
reference implementation of all aspects of DHCP, through a suite of DHCP
|
||||||
tools: server, client, and relay agent.")
|
tools: server, client, and relay agent.")
|
||||||
(license license:isc)
|
(license license:mpl2.0)
|
||||||
(properties '((cpe-name . "dhcp"))))))
|
(properties '((cpe-name . "dhcp"))))))
|
||||||
|
|
||||||
(define-public libpcap
|
(define-public libpcap
|
||||||
|
@ -898,13 +904,15 @@ at once based on a Perl regular expression.")
|
||||||
"0751mb9l2f0jrk3vj6q8ilanifd121dliwk0c34g8k0dlzsv3kd7"))
|
"0751mb9l2f0jrk3vj6q8ilanifd121dliwk0c34g8k0dlzsv3kd7"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(substitute* "Makefile.in"
|
'(begin
|
||||||
(("-o \\$\\{LOG_OWN\\} -g \\$\\{LOG_GROUP\\}")
|
(substitute* "Makefile.in"
|
||||||
;; Don't try to chown root.
|
(("-o \\$\\{LOG_OWN\\} -g \\$\\{LOG_GROUP\\}")
|
||||||
"")
|
;; Don't try to chown root.
|
||||||
(("mkdir -p \\$\\(ROTT_STATDIR\\)")
|
"")
|
||||||
;; Don't attempt to create /var/lib/rottlog.
|
(("mkdir -p \\$\\(ROTT_STATDIR\\)")
|
||||||
"true")))))
|
;; Don't attempt to create /var/lib/rottlog.
|
||||||
|
"true"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags (list "ROTT_ETCDIR=/etc/rottlog" ;rc file location
|
'(#:configure-flags (list "ROTT_ETCDIR=/etc/rottlog" ;rc file location
|
||||||
|
@ -955,7 +963,7 @@ system administrator.")
|
||||||
(define-public sudo
|
(define-public sudo
|
||||||
(package
|
(package
|
||||||
(name "sudo")
|
(name "sudo")
|
||||||
(version "1.8.22")
|
(version "1.8.23")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri
|
(uri
|
||||||
|
@ -965,10 +973,12 @@ system administrator.")
|
||||||
version ".tar.gz")))
|
version ".tar.gz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"00pxp74xkwdcmrjwy55j0k8p684jk1zx3nzdc11v30q8q8kwnmkj"))
|
"0yg62wq8rcrbr7qvh3wgfg2g4bwanbi50cr2lf2cfyy8dydx4qyq"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(delete-file-recursively "lib/zlib"))))
|
'(begin
|
||||||
|
(delete-file-recursively "lib/zlib")
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
|
@ -1255,7 +1265,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
|
||||||
(define-public acpica
|
(define-public acpica
|
||||||
(package
|
(package
|
||||||
(name "acpica")
|
(name "acpica")
|
||||||
(version "20180313")
|
(version "20180531")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -1263,7 +1273,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"16galaadmr37q2pvk2gyxrm8d1xldzk31djfxfq9v1c9yq4i425h"))))
|
"0q7vg1nr51f3rg16vjh4glz361a64r6gpm46fqkl2jf4fq7g43g5"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs `(("flex" ,flex)
|
(native-inputs `(("flex" ,flex)
|
||||||
("bison" ,bison)))
|
("bison" ,bison)))
|
||||||
|
@ -1272,7 +1282,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
|
||||||
"CC=gcc"
|
"CC=gcc"
|
||||||
"HOST=_LINUX"
|
"HOST=_LINUX"
|
||||||
"OPT_CFLAGS=-Wall -fno-strict-aliasing")
|
"OPT_CFLAGS=-Wall -fno-strict-aliasing")
|
||||||
#:tests? #f ; no 'check' target.
|
#:tests? #f ; no 'check' target
|
||||||
#:phases (modify-phases %standard-phases (delete 'configure))))
|
#:phases (modify-phases %standard-phases (delete 'configure))))
|
||||||
(home-page "https://acpica.org/")
|
(home-page "https://acpica.org/")
|
||||||
(synopsis "Tools for the development and debug of ACPI tables")
|
(synopsis "Tools for the development and debug of ACPI tables")
|
||||||
|
@ -1284,7 +1294,7 @@ of ACPI meant to be directly integrated into the host OS as a kernel-resident
|
||||||
subsystem, and a small set of tools to assist in developing and debugging ACPI
|
subsystem, and a small set of tools to assist in developing and debugging ACPI
|
||||||
tables. This package contains only the user-space tools needed for ACPI table
|
tables. This package contains only the user-space tools needed for ACPI table
|
||||||
development, not the kernel implementation of ACPI.")
|
development, not the kernel implementation of ACPI.")
|
||||||
(license license:gpl2))) ; Dual GPLv2/ACPICA Licence
|
(license license:gpl2))) ; dual GPLv2/ACPICA Licence
|
||||||
|
|
||||||
(define-public stress
|
(define-public stress
|
||||||
(package
|
(package
|
||||||
|
@ -1407,9 +1417,11 @@ environment variable is set and output is to tty.")
|
||||||
(base32
|
(base32
|
||||||
"1nwvjmx7kb14ni34c0b8x9a3791pc20gvhj7xaj66d8q4h6n0qf4"))
|
"1nwvjmx7kb14ni34c0b8x9a3791pc20gvhj7xaj66d8q4h6n0qf4"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet '(substitute* "tests/testsuite"
|
(snippet '(begin
|
||||||
(("#![[:blank:]]?/bin/sh")
|
(substitute* "tests/testsuite"
|
||||||
"#!$SHELL")))))
|
(("#![[:blank:]]?/bin/sh")
|
||||||
|
"#!$SHELL"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(#:phases
|
||||||
|
@ -1829,14 +1841,14 @@ done with the @code{auditctl} utility.")
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
(map delete-file-recursively
|
(for-each delete-file-recursively
|
||||||
;; Remove bundled lua, pcap, and pcre libraries.
|
;; Remove bundled lua, pcap, and pcre libraries.
|
||||||
;; FIXME: Remove bundled liblinear once packaged.
|
;; FIXME: Remove bundled liblinear once packaged.
|
||||||
'("liblua"
|
'("liblua"
|
||||||
"libpcap"
|
"libpcap"
|
||||||
"libpcre"
|
"libpcre"
|
||||||
;; Remove pre-compiled binares.
|
;; Remove pre-compiled binares.
|
||||||
"mswin32"))
|
"mswin32"))
|
||||||
#t))))
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -1941,7 +1953,7 @@ throughput (in the same interval).")
|
||||||
(define-public thefuck
|
(define-public thefuck
|
||||||
(package
|
(package
|
||||||
(name "thefuck")
|
(name "thefuck")
|
||||||
(version "3.26")
|
(version "3.27")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://github.com/nvbn/thefuck/archive/"
|
(uri (string-append "https://github.com/nvbn/thefuck/archive/"
|
||||||
|
@ -1949,7 +1961,7 @@ throughput (in the same interval).")
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ddlf25ik97z34bcpc52xyfhlfm6a3hdi43l6cz4ggwcawdwvn1p"))
|
"0my32n2x8x0f0wr8ql7qgk9qhb6ibv5b1rqs5b2r4nadv0gpiv96"))
|
||||||
(patches (search-patches "thefuck-test-environ.patch"))))
|
(patches (search-patches "thefuck-test-environ.patch"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -2141,7 +2153,9 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
|
||||||
(snippet
|
(snippet
|
||||||
;; Remove binaries contained in the tarball which are only for the
|
;; Remove binaries contained in the tarball which are only for the
|
||||||
;; target and can be regenerated anyway.
|
;; target and can be regenerated anyway.
|
||||||
'(delete-file-recursively "bin"))
|
'(begin
|
||||||
|
(delete-file-recursively "bin")
|
||||||
|
#t))
|
||||||
(file-name (string-append name "-" version ".tar.gz"))))
|
(file-name (string-append name "-" version ".tar.gz"))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("pkg-config" ,pkg-config)
|
||||||
|
@ -2468,7 +2482,7 @@ make it a perfect utility on modern distros.")
|
||||||
(define-public thermald
|
(define-public thermald
|
||||||
(package
|
(package
|
||||||
(name "thermald")
|
(name "thermald")
|
||||||
(version "1.7.1")
|
(version "1.7.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -2476,25 +2490,15 @@ make it a perfect utility on modern distros.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256 (base32
|
(sha256 (base32
|
||||||
"0isgmav3z3nb5bsdya8m3haqhzj1lyfjx7i812cqfjrh2a9msin4"))))
|
"15a6vb67y5wsmf0irrq7sxam18yqpz64130k83ryf24mp40h661b"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases (modify-phases %standard-phases
|
`(#:phases
|
||||||
(add-after
|
(modify-phases %standard-phases
|
||||||
'unpack 'autogen.sh-and-fix-paths
|
(add-after 'unpack 'bootstrap
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda _
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(invoke "sh" "autogen.sh")
|
||||||
;; XXX this can probably be removed after version 1.7.1.
|
#t)))
|
||||||
;; upstartconfir is hardcoded to /etc/init and the build
|
|
||||||
;; system tries to mkdir that. We don't even need upstart
|
|
||||||
;; files at all; this is a fast and kludgy workaround
|
|
||||||
(substitute* "data/Makefile.am"
|
|
||||||
(("upstartconfdir = /etc/init")
|
|
||||||
(string-append "upstartconfdir = "
|
|
||||||
out "/etc/init")))
|
|
||||||
;; Now run autogen
|
|
||||||
(invoke "sh" "autogen.sh")
|
|
||||||
#t))))
|
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(let ((out (assoc-ref %outputs "out")))
|
(let ((out (assoc-ref %outputs "out")))
|
||||||
(list (string-append "--sysconfdir="
|
(list (string-append "--sysconfdir="
|
||||||
|
@ -2516,7 +2520,7 @@ make it a perfect utility on modern distros.")
|
||||||
(synopsis "CPU scaling for thermal management")
|
(synopsis "CPU scaling for thermal management")
|
||||||
(description "The Linux Thermal Daemon helps monitor and control temperature
|
(description "The Linux Thermal Daemon helps monitor and control temperature
|
||||||
on systems running the Linux kernel.")
|
on systems running the Linux kernel.")
|
||||||
;; arm and aarch64 don't have cpuid.h
|
;; arm and aarch64 don't have cpuid.h.
|
||||||
(supported-systems '("i686-linux" "x86_64-linux"))
|
(supported-systems '("i686-linux" "x86_64-linux"))
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
@ -2652,3 +2656,116 @@ Python loading in HPC environments.")
|
||||||
;; This package supports x86_64 and PowerPC64
|
;; This package supports x86_64 and PowerPC64
|
||||||
(supported-systems '("x86_64-linux"))
|
(supported-systems '("x86_64-linux"))
|
||||||
(license license:lgpl2.1)))
|
(license license:lgpl2.1)))
|
||||||
|
|
||||||
|
(define-public inxi-minimal
|
||||||
|
(let ((real-name "inxi"))
|
||||||
|
(package
|
||||||
|
(name "inxi-minimal")
|
||||||
|
(version "3.0.11-1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/smxi/inxi")
|
||||||
|
(commit version)))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"07wihl4gsamq98mhxvm6k4vpphym75467cxfa19b3g5ggpyq894g"))))
|
||||||
|
(build-system trivial-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("bash" ,bash)
|
||||||
|
("perl" ,perl)))
|
||||||
|
(native-inputs
|
||||||
|
`(("gzip" ,gzip)))
|
||||||
|
(arguments
|
||||||
|
`(#:modules
|
||||||
|
((guix build utils)
|
||||||
|
(ice-9 match)
|
||||||
|
(srfi srfi-26))
|
||||||
|
#:builder
|
||||||
|
(begin
|
||||||
|
(use-modules (guix build utils)
|
||||||
|
(ice-9 match)
|
||||||
|
(srfi srfi-26))
|
||||||
|
(setenv "PATH" (string-append
|
||||||
|
(assoc-ref %build-inputs "bash") "/bin" ":"
|
||||||
|
(assoc-ref %build-inputs "gzip") "/bin" ":"
|
||||||
|
(assoc-ref %build-inputs "perl") "/bin" ":"))
|
||||||
|
(copy-recursively (assoc-ref %build-inputs "source")
|
||||||
|
,(string-append real-name "-" version))
|
||||||
|
(with-directory-excursion ,(string-append real-name "-" version)
|
||||||
|
(with-fluids ((%default-port-encoding #f))
|
||||||
|
(substitute* "inxi" (("/usr/bin/env perl") (which "perl"))))
|
||||||
|
(let ((bin (string-append %output "/bin")))
|
||||||
|
(install-file "inxi" bin)
|
||||||
|
(wrap-program (string-append bin "/inxi")
|
||||||
|
`("PATH" ":" =
|
||||||
|
("$PATH"
|
||||||
|
,@(map (lambda (input)
|
||||||
|
(match input
|
||||||
|
((name . store)
|
||||||
|
(let ((store-append
|
||||||
|
(cut string-append store <>)))
|
||||||
|
(cond
|
||||||
|
((member name '("util-linux"))
|
||||||
|
(string-append (store-append "/bin") ":"
|
||||||
|
(store-append "/sbin")))
|
||||||
|
((member name '("dmidecode" "iproute2"))
|
||||||
|
(store-append "/sbin"))
|
||||||
|
(else (store-append "/bin")))))))
|
||||||
|
%build-inputs)))
|
||||||
|
`("PERL5LIB" ":" =
|
||||||
|
,(delete
|
||||||
|
""
|
||||||
|
(map (match-lambda
|
||||||
|
(((? (cut string-prefix? "perl-" <>) name) . dir)
|
||||||
|
(string-append dir "/lib/perl5/site_perl"))
|
||||||
|
(_ ""))
|
||||||
|
%build-inputs)))))
|
||||||
|
(invoke "gzip" "inxi.1")
|
||||||
|
(install-file "inxi.1.gz"
|
||||||
|
(string-append %output "/share/man/man1")))
|
||||||
|
#t)))
|
||||||
|
(home-page "https://smxi.org/docs/inxi.htm")
|
||||||
|
(synopsis "Full-featured system information script")
|
||||||
|
(description "Inxi is a system information script that can display
|
||||||
|
various things about your hardware and software to users in an IRC chatroom or
|
||||||
|
support forum. It runs with the @code{/exec} command in most IRC clients.")
|
||||||
|
(license license:gpl3+))))
|
||||||
|
|
||||||
|
(define-public inxi
|
||||||
|
(package
|
||||||
|
(inherit inxi-minimal)
|
||||||
|
(name "inxi")
|
||||||
|
(inputs
|
||||||
|
`(("dmidecode" ,dmidecode)
|
||||||
|
("file" ,file)
|
||||||
|
("bind:utils" ,isc-bind "utils") ; dig
|
||||||
|
("gzip" ,gzip)
|
||||||
|
("iproute2" ,iproute) ; ip
|
||||||
|
("kmod" ,kmod) ; modinfo
|
||||||
|
("lm-sensors" ,lm-sensors)
|
||||||
|
("mesa-utils" ,mesa-utils)
|
||||||
|
("pciutils" ,pciutils)
|
||||||
|
("procps" ,procps)
|
||||||
|
("tar" ,tar)
|
||||||
|
("tree" ,tree)
|
||||||
|
("util-linux" ,util-linux) ; lsblk
|
||||||
|
("usbutils" ,usbutils) ; lsusb
|
||||||
|
("wmctrl" ,wmctrl)
|
||||||
|
("xdpyinfo" ,xdpyinfo)
|
||||||
|
("xprop" ,xprop)
|
||||||
|
("xrandr" ,xrandr)
|
||||||
|
("coreutils" ,coreutils) ; uptime
|
||||||
|
("inetutils" ,inetutils) ; ifconfig
|
||||||
|
("perl-cpanel-json-xs" ,perl-cpanel-json-xs)
|
||||||
|
("perl-http-tiny" ,perl-http-tiny)
|
||||||
|
("perl-io-socket-ssl" ,perl-io-socket-ssl)
|
||||||
|
("perl-json-xs" ,perl-json-xs)
|
||||||
|
("perl-time-hires" ,perl-time-hires)
|
||||||
|
;; TODO: Add more inputs:
|
||||||
|
;; ipmi-sensors
|
||||||
|
;; hddtemp
|
||||||
|
;; perl-xml-dumper
|
||||||
|
;; ipmitool
|
||||||
|
,@(package-inputs inxi-minimal)))))
|
||||||
|
|
|
@ -51,15 +51,15 @@ formats.")
|
||||||
(define-public qrencode
|
(define-public qrencode
|
||||||
(package
|
(package
|
||||||
(name "qrencode")
|
(name "qrencode")
|
||||||
(version "3.4.4")
|
(version "4.0.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://fukuchi.org/works/qrencode/qrencode-" version
|
"https://fukuchi.org/works/qrencode/qrencode-" version
|
||||||
".tar.gz"))
|
".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0wiagx7i8p9zal53smf5abrnh9lr31mv0p36wg017401jrmf5577"))))
|
"02vx69fl52jbcrmnydsaxcmy6nxqm9jyxzd7hr07s491d7hka069"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("libpng" ,libpng)))
|
(inputs `(("libpng" ,libpng)))
|
||||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2013, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
@ -27,7 +27,9 @@
|
||||||
(define-module (gnu packages algebra)
|
(define-module (gnu packages algebra)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
|
#:use-module (gnu packages cpp)
|
||||||
#:use-module (gnu packages documentation)
|
#:use-module (gnu packages documentation)
|
||||||
#:use-module (gnu packages ed)
|
#:use-module (gnu packages ed)
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
|
@ -60,15 +62,15 @@
|
||||||
(define-public mpfrcx
|
(define-public mpfrcx
|
||||||
(package
|
(package
|
||||||
(name "mpfrcx")
|
(name "mpfrcx")
|
||||||
(version "0.4.2")
|
(version "0.5")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"http://www.multiprecision.org/mpfrcx/download/mpfrcx-"
|
"http://www.multiprecision.org/downloads/mpfrcx-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0grw66b255r574lvll1bqccm5myj2m8ajzsjaygcyq9zjnnbnhhy"))))
|
"1s968480ymv6w0rnvfp9mxvx98hvi29fkvw8nk4ggzc6azxgwybs"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("gmp" ,gmp)
|
`(("gmp" ,gmp)
|
||||||
|
@ -82,7 +84,7 @@ on the rounding. For the time being, only the few functions needed to
|
||||||
implement the floating point approach to complex multiplication are
|
implement the floating point approach to complex multiplication are
|
||||||
implemented. On the other hand, these comprise asymptotically fast
|
implemented. On the other hand, these comprise asymptotically fast
|
||||||
multiplication routines such as Toom–Cook and the FFT.")
|
multiplication routines such as Toom–Cook and the FFT.")
|
||||||
(license license:lgpl2.1+)
|
(license license:lgpl3+)
|
||||||
(home-page "http://mpfrcx.multiprecision.org/")))
|
(home-page "http://mpfrcx.multiprecision.org/")))
|
||||||
|
|
||||||
(define-public cm
|
(define-public cm
|
||||||
|
@ -211,7 +213,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
|
||||||
(define-public giac-xcas
|
(define-public giac-xcas
|
||||||
(package
|
(package
|
||||||
(name "giac-xcas")
|
(name "giac-xcas")
|
||||||
(version "1.4.9-45")
|
(version "1.4.9-59")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
;; "~parisse/giac" is not used because the maintainer regularly
|
;; "~parisse/giac" is not used because the maintainer regularly
|
||||||
|
@ -223,7 +225,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
|
||||||
"source/giac_" version ".tar.gz"))
|
"source/giac_" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"11za5rznr2dgy6598y4iwrcyi86w7f601ci9i794kl8k22pqhcd8"))))
|
"0dv5p5y6gkrsmz3xa7fw87rjyabwdwk09mqb09kb7gai9n9dgayk"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -519,31 +521,40 @@ a C program.")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
(define-public fftw
|
(define-public fftw
|
||||||
;; TODO: Make this 3.3.7 (see below) on the next upgrade cycle.
|
|
||||||
(package
|
(package
|
||||||
(name "fftw")
|
(name "fftw")
|
||||||
(version "3.3.5")
|
(version "3.3.7")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "ftp://ftp.fftw.org/pub/fftw/fftw-"
|
(uri (string-append "ftp://ftp.fftw.org/pub/fftw/fftw-"
|
||||||
version".tar.gz"))
|
version".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1kwbx92ps0r7s2mqy7lxbxanslxdzj7dp7r7gmdkzv1j8yqf3kwf"))))
|
"0wsms8narnbhfsa8chdflv2j9hzspvflblnqdn7hw8x5xdzrnq1v"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags
|
`(#:configure-flags
|
||||||
'("--enable-shared" "--enable-openmp" "--enable-threads")
|
'("--enable-shared" "--enable-openmp" "--enable-threads"
|
||||||
#:phases (alist-cons-before
|
,@(let ((system (or (%current-target-system) (%current-system))))
|
||||||
'build 'no-native
|
;; Enable SIMD extensions for codelets. See details at:
|
||||||
(lambda _
|
;; <http://fftw.org/fftw3_doc/Installation-on-Unix.html>.
|
||||||
;; By default '-mtune=native' is used. However, that may
|
(cond
|
||||||
;; cause the use of ISA extensions (SSE2, etc.) that are
|
((string-prefix? "x86_64" system)
|
||||||
;; not necessarily available on the user's machine when
|
'("--enable-sse2" "--enable-avx" "--enable-avx2"
|
||||||
;; that package is built on a different machine.
|
"--enable-avx512" "--enable-avx-128-fma"))
|
||||||
(substitute* (find-files "." "Makefile$")
|
((string-prefix? "i686" system)
|
||||||
(("-mtune=native") "")))
|
'("--enable-sse2"))
|
||||||
%standard-phases)))
|
((string-prefix? "aarch64" system)
|
||||||
|
;; Note that fftw supports NEON on 32-bit ARM only when
|
||||||
|
;; compiled for single-precision.
|
||||||
|
'("--enable-neon"))
|
||||||
|
(else
|
||||||
|
'())))
|
||||||
|
;; By default '-mtune=native' is used. However, that may cause the
|
||||||
|
;; use of ISA extensions (e.g. AVX) that are not necessarily
|
||||||
|
;; available on the user's machine when that package is built on a
|
||||||
|
;; different machine.
|
||||||
|
"ax_cv_c_flags__mtune_native=no")))
|
||||||
(native-inputs `(("perl" ,perl)))
|
(native-inputs `(("perl" ,perl)))
|
||||||
(home-page "http://fftw.org")
|
(home-page "http://fftw.org")
|
||||||
(synopsis "Computing the discrete Fourier transform")
|
(synopsis "Computing the discrete Fourier transform")
|
||||||
|
@ -559,8 +570,15 @@ cosine/ sine transforms or DCT/DST).")
|
||||||
(name "fftwf")
|
(name "fftwf")
|
||||||
(arguments
|
(arguments
|
||||||
(substitute-keyword-arguments (package-arguments fftw)
|
(substitute-keyword-arguments (package-arguments fftw)
|
||||||
((#:configure-flags cf)
|
((#:configure-flags fftw-configure-flags)
|
||||||
`(cons "--enable-float" ,cf))))
|
`(cons* "--enable-single"
|
||||||
|
,@(if (string-prefix? "arm" (or (%current-target-system)
|
||||||
|
(%current-system)))
|
||||||
|
;; fftw supports NEON on 32-bit ARM only when compiled
|
||||||
|
;; for single-precision, so add it here.
|
||||||
|
'("--enable-neon")
|
||||||
|
'())
|
||||||
|
,fftw-configure-flags))))
|
||||||
(description
|
(description
|
||||||
(string-append (package-description fftw)
|
(string-append (package-description fftw)
|
||||||
" Single-precision version."))))
|
" Single-precision version."))))
|
||||||
|
@ -579,42 +597,6 @@ cosine/ sine transforms or DCT/DST).")
|
||||||
(string-append (package-description fftw)
|
(string-append (package-description fftw)
|
||||||
" With OpenMPI parallelism support."))))
|
" With OpenMPI parallelism support."))))
|
||||||
|
|
||||||
(define-public fftw-3.3.7
|
|
||||||
;; TODO: Make this the default 'fftw' on the next upgrade cycle.
|
|
||||||
(package
|
|
||||||
(inherit fftw)
|
|
||||||
(version "3.3.7")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "ftp://ftp.fftw.org/pub/fftw/fftw-"
|
|
||||||
version".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0wsms8narnbhfsa8chdflv2j9hzspvflblnqdn7hw8x5xdzrnq1v"))))))
|
|
||||||
|
|
||||||
(define-public fftw-avx
|
|
||||||
(package
|
|
||||||
(inherit fftw-3.3.7)
|
|
||||||
(name "fftw-avx")
|
|
||||||
(arguments
|
|
||||||
(substitute-keyword-arguments (package-arguments fftw-3.3.7)
|
|
||||||
((#:configure-flags flags ''())
|
|
||||||
;; Enable AVX & co. See details at:
|
|
||||||
;; <http://fftw.org/fftw3_doc/Installation-on-Unix.html>.
|
|
||||||
`(append '("--enable-avx" "--enable-avx2" "--enable-avx512"
|
|
||||||
"--enable-avx-128-fma")
|
|
||||||
,flags))
|
|
||||||
((#:substitutable? _ #f)
|
|
||||||
;; To run the tests, we must have a CPU that supports all these
|
|
||||||
;; extensions. Since we cannot be sure that machines in the build
|
|
||||||
;; farm support them, disable substitutes altogether.
|
|
||||||
#f)
|
|
||||||
((#:phases _)
|
|
||||||
;; Since we're not providing binaries, let '-mtune=native' through.
|
|
||||||
'%standard-phases)))
|
|
||||||
(synopsis "Computing the discrete Fourier transform (AVX2-optimized)")
|
|
||||||
(supported-systems '("x86_64-linux"))))
|
|
||||||
|
|
||||||
(define-public java-la4j
|
(define-public java-la4j
|
||||||
(package
|
(package
|
||||||
(name "java-la4j")
|
(name "java-la4j")
|
||||||
|
@ -732,9 +714,10 @@ Sine Transform} (DST) and @dfn{Discrete Hartley Transform} (DHT).")
|
||||||
;; but maintainers say it's a known issue and it's unsupported
|
;; but maintainers say it's a known issue and it's unsupported
|
||||||
;; anyway, so just skip them.
|
;; anyway, so just skip them.
|
||||||
'(begin
|
'(begin
|
||||||
|
(substitute* "unsupported/CMakeLists.txt"
|
||||||
|
(("add_subdirectory\\(test.*")
|
||||||
|
"# Do not build the tests for unsupported features.\n"))
|
||||||
(substitute* "CMakeLists.txt"
|
(substitute* "CMakeLists.txt"
|
||||||
(("add_subdirectory\\(unsupported\\)")
|
|
||||||
"# Do not build the tests for unsupported features.\n")
|
|
||||||
;; Work around
|
;; Work around
|
||||||
;; <http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1114>.
|
;; <http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1114>.
|
||||||
(("\"include/eigen3\"")
|
(("\"include/eigen3\"")
|
||||||
|
@ -743,7 +726,8 @@ Sine Transform} (DST) and @dfn{Discrete Hartley Transform} (DHT).")
|
||||||
;; See
|
;; See
|
||||||
;; https://bitbucket.org/eigen/eigen/commits/ea8c22ce6920e982d15245ee41d0531a46a28e5d
|
;; https://bitbucket.org/eigen/eigen/commits/ea8c22ce6920e982d15245ee41d0531a46a28e5d
|
||||||
((".*svd_preallocate[^\n]*" &)
|
((".*svd_preallocate[^\n]*" &)
|
||||||
(string-append "//" & " // Not supported by BDCSVD")))))))
|
(string-append "//" & " // Not supported by BDCSVD")))
|
||||||
|
#t))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(;; Turn off debugging symbols to save space.
|
'(;; Turn off debugging symbols to save space.
|
||||||
|
@ -774,3 +758,37 @@ features, and more.")
|
||||||
;; Most of the code is MPLv2, with a few files under LGPLv2.1+ or BSD-3.
|
;; Most of the code is MPLv2, with a few files under LGPLv2.1+ or BSD-3.
|
||||||
;; See 'COPYING.README' for details.
|
;; See 'COPYING.README' for details.
|
||||||
(license license:mpl2.0)))
|
(license license:mpl2.0)))
|
||||||
|
|
||||||
|
(define-public xtensor
|
||||||
|
(package
|
||||||
|
(name "xtensor")
|
||||||
|
(version "0.15.9")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/QuantStack/xtensor/archive/"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0mlsw4p1w5mh7pscddfdamz27zq3wml5qla3vbzgvif34vsqc8ra"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("googletest" ,googletest)
|
||||||
|
("xtl" ,xtl)))
|
||||||
|
(arguments
|
||||||
|
`(#:configure-flags
|
||||||
|
'("-DBUILD_TESTS=ON")
|
||||||
|
#:test-target "xtest"))
|
||||||
|
(home-page "http://quantstack.net/xtensor")
|
||||||
|
(synopsis "C++ tensors with broadcasting and lazy computing")
|
||||||
|
(description "xtensor is a C++ library meant for numerical analysis with
|
||||||
|
multi-dimensional array expressions.
|
||||||
|
|
||||||
|
xtensor provides:
|
||||||
|
@itemize
|
||||||
|
@item an extensible expression system enabling lazy broadcasting.
|
||||||
|
@item an API following the idioms of the C++ standard library.
|
||||||
|
@item tools to manipulate array expressions and build upon xtensor.
|
||||||
|
@end itemize")
|
||||||
|
(license license:bsd-3)))
|
||||||
|
|
|
@ -27,18 +27,73 @@
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system android-ndk)
|
||||||
#:use-module (guix build-system python)
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages gnupg)
|
#:use-module (gnu packages gnupg)
|
||||||
|
#:use-module (gnu packages pcre)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages selinux)
|
||||||
#:use-module (gnu packages ssh)
|
#:use-module (gnu packages ssh)
|
||||||
#:use-module (gnu packages version-control)
|
#:use-module (gnu packages version-control)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages linux))
|
#:use-module (gnu packages linux))
|
||||||
|
|
||||||
|
(define-public android-make-stub
|
||||||
|
(package
|
||||||
|
(name "android-make-stub")
|
||||||
|
(version "0.6.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/daym/android-make-stub.git")
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
(file-name (string-append "android-make-stub-"
|
||||||
|
version "-checkout"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0y1b2x96d37n6f1bp6dcx08bn08zac0cylmbfsx6mf2nahc02fhc"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:tests? #f ; None exist.
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(delete 'configure)
|
||||||
|
(delete 'build)
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out")))
|
||||||
|
(invoke "make" (string-append "prefix=" out) "install")
|
||||||
|
#t))))))
|
||||||
|
(home-page "https://github.com/daym/android-make-stub")
|
||||||
|
(synopsis "Stubs for the @command{make} system of the Android platform")
|
||||||
|
(description "@code{android-make-stub} provides stubs for the
|
||||||
|
@command{make} system of the Android platform. This allows us to
|
||||||
|
use their packages mostly unmodified in our Android NDK build system.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public android-googletest
|
||||||
|
(package (inherit googletest)
|
||||||
|
(name "android-googletest")
|
||||||
|
(arguments
|
||||||
|
`(#:configure-flags '("-DBUILD_SHARED_LIBS=ON")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'install 'install-host-libraries
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(lib (string-append out "/lib")))
|
||||||
|
(symlink "libgtest.so"
|
||||||
|
(string-append lib "/libgtest_host.so"))
|
||||||
|
(symlink "libgmock.so"
|
||||||
|
(string-append lib "/libgmock_host.so"))
|
||||||
|
#t))))))))
|
||||||
|
|
||||||
;; The Makefiles that we add are largely based on the Debian
|
;; The Makefiles that we add are largely based on the Debian
|
||||||
;; packages. They are licensed under GPL-2 and have copyright:
|
;; packages. They are licensed under GPL-2 and have copyright:
|
||||||
;; 2012, Stefan Handschuh <handschuh.stefan@googlemail.com>
|
;; 2012, Stefan Handschuh <handschuh.stefan@googlemail.com>
|
||||||
|
@ -58,52 +113,69 @@
|
||||||
version "-checkout"))
|
version "-checkout"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0xc2n7jxrf1iw9cc278pijdfjix2fkiig5ws27f6rwp40zg5mrgg"))))
|
"0xc2n7jxrf1iw9cc278pijdfjix2fkiig5ws27f6rwp40zg5mrgg"))
|
||||||
|
(patches
|
||||||
|
(search-patches "libbase-use-own-logging.patch"
|
||||||
|
"libbase-fix-includes.patch"
|
||||||
|
"libutils-remove-damaging-includes.patch"
|
||||||
|
"libutils-add-includes.patch"
|
||||||
|
"adb-add-libraries.patch"
|
||||||
|
"libziparchive-add-includes.patch"))))
|
||||||
|
|
||||||
(define liblog
|
(define (android-platform-system-extras version)
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://android.googlesource.com/platform/system/extras")
|
||||||
|
(commit (string-append "android-" version))))
|
||||||
|
(file-name (string-append "android-platform-system-extras-"
|
||||||
|
version "-checkout"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"18130c23ybqcpgjc5v6f8kdbv2xn39hyiaj17dzldjb9rlwzcyy9"))))
|
||||||
|
|
||||||
|
(define (android-platform-bionic version)
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://android.googlesource.com/platform/bionic")
|
||||||
|
(commit (string-append "android-" version))))
|
||||||
|
(file-name (string-append "android-platform-bionic-"
|
||||||
|
version "-checkout"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0n9wkz3ynqw39if1ss9n32m66iga14nndf29hpm7g1aqn4wvvgzk"))))
|
||||||
|
|
||||||
|
(define (android-platform-external version subdirectory checksum)
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url
|
||||||
|
(string-append "https://android.googlesource.com/platform/external/"
|
||||||
|
subdirectory))
|
||||||
|
(commit (string-append "android-" version))))
|
||||||
|
(file-name (string-append "android-platform-system-external-" subdirectory "-"
|
||||||
|
version "-checkout"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
checksum))))
|
||||||
|
|
||||||
|
(define android-liblog
|
||||||
(package
|
(package
|
||||||
(name "liblog")
|
(name "android-liblog")
|
||||||
(version (android-platform-version))
|
(version (android-platform-version))
|
||||||
(source (android-platform-system-core version))
|
(source (android-platform-system-core version))
|
||||||
(build-system gnu-build-system)
|
(build-system android-ndk-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; TODO.
|
`(#:make-flags '("LDLIBS=-lpthread")
|
||||||
#:make-flags '("CC=gcc")
|
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'enter-source
|
(add-after 'unpack 'enter-source
|
||||||
(lambda _ (chdir "liblog") #t))
|
(lambda _ (chdir "liblog") #t))
|
||||||
(add-after 'enter-source 'create-Makefile
|
(add-after 'install 'ldconfig
|
||||||
(lambda _
|
|
||||||
;; No useful makefile is shipped, so we create one.
|
|
||||||
(with-output-to-file "Makefile"
|
|
||||||
(lambda _
|
|
||||||
(display
|
|
||||||
(string-append
|
|
||||||
"NAME = liblog\n"
|
|
||||||
"SOURCES = log_event_list.c log_event_write.c"
|
|
||||||
" logger_write.c config_write.c logger_name.c"
|
|
||||||
" logger_lock.c fake_log_device.c fake_writer.c"
|
|
||||||
" event_tag_map.c\n"
|
|
||||||
|
|
||||||
"CFLAGS += -fvisibility=hidden -fPIC\n"
|
|
||||||
"CPPFLAGS += -I../include -DFAKE_LOG_DEVICE=1"
|
|
||||||
;; Keep these two in sync with "liblog/Android.bp".
|
|
||||||
" -DLIBLOG_LOG_TAG=1005"
|
|
||||||
" -DSNET_EVENT_LOG_TAG=1397638484\n"
|
|
||||||
"LDFLAGS += -shared -Wl,-soname,$(NAME).so.0 -lpthread\n"
|
|
||||||
|
|
||||||
"build: $(SOURCES)\n"
|
|
||||||
" $(CC) $^ -o $(NAME).so.0 $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)\n"))
|
|
||||||
#t))))
|
|
||||||
(delete 'configure)
|
|
||||||
(replace 'install
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(lib (string-append out "/lib")))
|
(symlink "liblog.so.0" (string-append out "/lib/liblog.so"))
|
||||||
(install-file "liblog.so.0" lib)
|
|
||||||
(with-directory-excursion lib
|
|
||||||
(symlink "liblog.so.0" "liblog.so"))
|
|
||||||
#t))))))
|
#t))))))
|
||||||
(home-page "https://developer.android.com/")
|
(home-page "https://developer.android.com/")
|
||||||
(synopsis "Logging library from the Android platform.")
|
(synopsis "Logging library from the Android platform.")
|
||||||
|
@ -113,62 +185,29 @@ interfaces for either writing or reading logs. The log buffers are divided up
|
||||||
in Main, System, Radio and Events sub-logs.")
|
in Main, System, Radio and Events sub-logs.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define libbase
|
(define android-libbase
|
||||||
(package
|
(package
|
||||||
(name "libbase")
|
(name "android-libbase")
|
||||||
(version (android-platform-version))
|
(version (android-platform-version))
|
||||||
(source (origin
|
(source (android-platform-system-core version))
|
||||||
(inherit (android-platform-system-core version))
|
(build-system android-ndk-build-system)
|
||||||
(patches
|
|
||||||
(search-patches "libbase-use-own-logging.patch"
|
|
||||||
"libbase-fix-includes.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; TODO.
|
`(#:tests? #f ; Test failure: logging.UNIMPLEMENTED
|
||||||
|
#:make-flags '("CXXFLAGS=-std=gnu++11")
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'enter-source
|
(add-after 'unpack 'enter-source
|
||||||
(lambda _ (chdir "base") #t))
|
(lambda _ (chdir "base") #t)))))
|
||||||
(add-after 'enter-source 'create-Makefile
|
(inputs `(("android-liblog" ,android-liblog)))
|
||||||
(lambda _
|
|
||||||
;; No useful makefile is shipped, so we create one.
|
|
||||||
(with-output-to-file "Makefile"
|
|
||||||
(lambda _
|
|
||||||
(display
|
|
||||||
(string-append
|
|
||||||
"NAME = libbase\n"
|
|
||||||
"SOURCES = file.cpp logging.cpp parsenetaddress.cpp"
|
|
||||||
" stringprintf.cpp strings.cpp errors_unix.cpp\n"
|
|
||||||
|
|
||||||
"CXXFLAGS += -std=gnu++11 -fPIC\n"
|
|
||||||
"CPPFLAGS += -Iinclude -I../include\n"
|
|
||||||
"LDFLAGS += -shared -Wl,-soname,$(NAME).so.0"
|
|
||||||
" -L.. -llog\n"
|
|
||||||
|
|
||||||
"build: $(SOURCES)\n"
|
|
||||||
" $(CXX) $^ -o $(NAME).so.0 $(CXXFLAGS) $(CPPFLAGS)"
|
|
||||||
" $(LDFLAGS)\n"))
|
|
||||||
#t))))
|
|
||||||
(delete 'configure)
|
|
||||||
(replace 'install
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(lib (string-append out "/lib")))
|
|
||||||
(install-file "libbase.so.0" lib)
|
|
||||||
(with-directory-excursion lib
|
|
||||||
(symlink "libbase.so.0" "libbase.so"))
|
|
||||||
(copy-recursively "include" out)
|
|
||||||
#t))))))
|
|
||||||
(inputs `(("liblog" ,liblog)))
|
|
||||||
(home-page "https://developer.android.com/")
|
(home-page "https://developer.android.com/")
|
||||||
(synopsis "Android platform base library")
|
(synopsis "Android platform base library")
|
||||||
(description "@code{libbase} is a library in common use by the
|
(description "@code{libbase} is a library in common use by the
|
||||||
various Android core host applications.")
|
various Android core host applications.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define libcutils
|
(define android-libcutils
|
||||||
(package
|
(package
|
||||||
(name "libcutils")
|
(name "android-libcutils")
|
||||||
(version (android-platform-version))
|
(version (android-platform-version))
|
||||||
(source (android-platform-system-core version))
|
(source (android-platform-system-core version))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
@ -206,10 +245,13 @@ various Android core host applications.")
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(lib (string-append out "/lib")))
|
(lib (string-append out "/lib"))
|
||||||
|
(include (string-append out "/include")))
|
||||||
(install-file "libcutils.so.0" lib)
|
(install-file "libcutils.so.0" lib)
|
||||||
(with-directory-excursion lib
|
(with-directory-excursion lib
|
||||||
(symlink "libcutils.so.0" "libcutils.so"))
|
(symlink "libcutils.so.0" "libcutils.so"))
|
||||||
|
(copy-recursively "../include/cutils"
|
||||||
|
(string-append include "/cutils"))
|
||||||
#t))))))
|
#t))))))
|
||||||
(home-page "https://developer.android.com/")
|
(home-page "https://developer.android.com/")
|
||||||
(synopsis "Android platform c utils library")
|
(synopsis "Android platform c utils library")
|
||||||
|
@ -217,90 +259,92 @@ various Android core host applications.")
|
||||||
various Android core host applications.")
|
various Android core host applications.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public android-libsparse
|
||||||
|
(package
|
||||||
|
(name "android-libsparse")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-system-core version))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags '("CFLAGS=-Wno-error"
|
||||||
|
"CXXFLAGS=-fpermissive -Wno-error")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'enter-source
|
||||||
|
(lambda _ (chdir "libsparse") #t)))))
|
||||||
|
(inputs
|
||||||
|
`(("zlib" ,zlib)))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis "Android platform sparse library")
|
||||||
|
(description "@code{android-libsparse} is a library in common use by the
|
||||||
|
various Android core host applications.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public android-libziparchive
|
||||||
|
(package
|
||||||
|
(name "android-libziparchive")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-system-core version))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags '("CFLAGS=-Wno-error"
|
||||||
|
"CXXFLAGS=-fpermissive -Wno-error -std=gnu++11")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'enter-source
|
||||||
|
(lambda _ (chdir "libziparchive") #t))
|
||||||
|
(add-before 'check 'setenv
|
||||||
|
(lambda _
|
||||||
|
(setenv "ziparchive_tests_host_PARAMS" "--test_data_dir=testdata")
|
||||||
|
#t))
|
||||||
|
(add-after 'install 'install-headers
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(let ((out (assoc-ref outputs "out")))
|
||||||
|
(copy-recursively "../include/ziparchive"
|
||||||
|
(string-append out "/include/ziparchive"))
|
||||||
|
#t))))))
|
||||||
|
(inputs
|
||||||
|
`(("zlib" ,zlib)))
|
||||||
|
(native-inputs
|
||||||
|
`(("android-libbase" ,android-libbase)
|
||||||
|
("android-libutils" ,android-libutils)
|
||||||
|
("android-liblog" ,android-liblog)))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis "Android platform ZIP library")
|
||||||
|
(description "@code{android-libziparchive} is a library in common use by the
|
||||||
|
various Android core host applications.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public adb
|
(define-public adb
|
||||||
(package
|
(package
|
||||||
(name "adb")
|
(name "adb")
|
||||||
(version (android-platform-version))
|
(version (android-platform-version))
|
||||||
(source (origin
|
(source (android-platform-system-core version))
|
||||||
(inherit (android-platform-system-core version))
|
(build-system android-ndk-build-system)
|
||||||
(patches
|
|
||||||
(search-patches "libbase-use-own-logging.patch"
|
|
||||||
"libbase-fix-includes.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:tests? #f ; Test failure: sysdeps_poll.fd_count
|
||||||
|
#:make-flags
|
||||||
|
(list "CFLAGS=-Wno-error"
|
||||||
|
"CXXFLAGS=-fpermissive -Wno-error -std=gnu++14 -D_Nonnull= -D_Nullable= -I ."
|
||||||
|
(string-append "LDFLAGS=-Wl,-rpath=" (assoc-ref %outputs "out") "/lib "
|
||||||
|
"-Wl,-rpath=" (assoc-ref %build-inputs "openssl") "/lib -L ."))
|
||||||
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'enter-source
|
(add-after 'unpack 'enter-source
|
||||||
(lambda _ (chdir "adb") #t))
|
(lambda _ (chdir "adb") #t))
|
||||||
(add-before 'build 'fix-clang
|
(add-after 'enter-source 'make-libs-available
|
||||||
(lambda _
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
;; adb_client.h contains _Nonnull and _Nullable attributes, that
|
(substitute* "Android.mk"
|
||||||
;; are not understood by gcc.
|
(("libcrypto_static") "libcrypto"))
|
||||||
(substitute* "adb_client.h"
|
|
||||||
(("_Nonnull") "")
|
|
||||||
(("_Nullable") ""))
|
|
||||||
#t))
|
#t))
|
||||||
(add-before 'build 'fix-main
|
(add-after 'install 'install-headers
|
||||||
(lambda _
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
;; main.cpp used to be adb_main.cpp in the current directory
|
(install-file "diagnose_usb.h" (string-append (assoc-ref outputs "out") "/include"))
|
||||||
;; rather than in its own subdirectory, but it was not fixed.
|
#t)))))
|
||||||
;; This leads to some header files not being found anymore.
|
|
||||||
(copy-file "client/main.cpp" "adb_main.cpp")
|
|
||||||
#t))
|
|
||||||
(add-after 'enter-source 'create-Makefile
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
;; No useful makefile is shipped, so we create one.
|
|
||||||
(with-output-to-file "Makefile"
|
|
||||||
(lambda _
|
|
||||||
(display
|
|
||||||
(string-append
|
|
||||||
;; Common for all components.
|
|
||||||
"CXXFLAGS += -std=gnu++14 -fpermissive\n"
|
|
||||||
"CPPFLAGS += -I../include -I../base/include -I. -DADB_HOST=1 "
|
|
||||||
"-DADB_REVISION='\"" ,version "\"' -fPIC\n"
|
|
||||||
"LDFLAGS += -lcrypto -lpthread -lbase -lcutils -L. -ladb\n"
|
|
||||||
|
|
||||||
;; Libadb specifics.
|
|
||||||
"LIBADB_SOURCES = adb.cpp adb_auth.cpp adb_io.cpp "
|
|
||||||
"adb_listeners.cpp adb_trace.cpp adb_utils.cpp fdevent.cpp "
|
|
||||||
"sockets.cpp transport.cpp transport_local.cpp transport_usb.cpp "
|
|
||||||
"get_my_path_linux.cpp sysdeps_unix.cpp usb_linux.cpp "
|
|
||||||
"adb_auth_host.cpp diagnose_usb.cpp services.cpp "
|
|
||||||
"shell_service_protocol.cpp bugreport.cpp line_printer.cpp\n"
|
|
||||||
|
|
||||||
"LIBADB_LDFLAGS += -shared -Wl,-soname,libadb.so.0 "
|
|
||||||
"-lcrypto -lpthread -lbase\n"
|
|
||||||
|
|
||||||
;; Adb specifics.
|
|
||||||
"ADB_SOURCES = adb_main.cpp console.cpp commandline.cpp "
|
|
||||||
"adb_client.cpp file_sync_client.cpp\n"
|
|
||||||
"ADB_LDFLAGS += -Wl,-rpath=" (assoc-ref outputs "out") "/lib\n"
|
|
||||||
|
|
||||||
"build: libadb $(ADB_SOURCES)\n"
|
|
||||||
" $(CXX) $(ADB_SOURCES) -o adb $(CXXFLAGS) $(CPPFLAGS) "
|
|
||||||
"$(ADB_LDFLAGS) $(LDFLAGS)\n"
|
|
||||||
|
|
||||||
"libadb: $(LIBADB_SOURCES)\n"
|
|
||||||
" $(CXX) $^ -o libadb.so.0 $(CXXFLAGS) $(CPPFLAGS) "
|
|
||||||
"$(LIBADB_LDFLAGS)\n"
|
|
||||||
" ln -sv libadb.so.0 libadb.so\n"))
|
|
||||||
#t))))
|
|
||||||
(delete 'configure)
|
|
||||||
(replace 'install
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(lib (string-append out "/lib"))
|
|
||||||
(bin (string-append out "/bin")))
|
|
||||||
(install-file "libadb.so.0" lib)
|
|
||||||
(install-file "adb" bin)
|
|
||||||
(with-directory-excursion lib
|
|
||||||
(symlink "libadb.so.0" "libadb.so"))
|
|
||||||
#t))))
|
|
||||||
;; Test suite must be run with attached devices
|
|
||||||
#:tests? #f))
|
|
||||||
(inputs
|
(inputs
|
||||||
`(("libbase" ,libbase)
|
`(("android-libbase" ,android-libbase)
|
||||||
("libcutils" ,libcutils)
|
("android-libcutils" ,android-libcutils)
|
||||||
|
("android-liblog" ,android-liblog)
|
||||||
("openssl" ,openssl)))
|
("openssl" ,openssl)))
|
||||||
(home-page "https://developer.android.com/studio/command-line/adb.html")
|
(home-page "https://developer.android.com/studio/command-line/adb.html")
|
||||||
(synopsis "Android Debug Bridge")
|
(synopsis "Android Debug Bridge")
|
||||||
|
@ -329,8 +373,10 @@ to a Unix shell that can run commands on the connected device or emulator.")
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(bin (string-append out "/bin")))
|
(bin (string-append out "/bin"))
|
||||||
|
(include (string-append out "/include")))
|
||||||
(install-file "mkbootimg" bin)
|
(install-file "mkbootimg" bin)
|
||||||
|
(install-file "bootimg.h" include)
|
||||||
#t))))))
|
#t))))))
|
||||||
(home-page "https://developer.android.com/studio/command-line/adb.html")
|
(home-page "https://developer.android.com/studio/command-line/adb.html")
|
||||||
(synopsis "Tool to create Android boot images")
|
(synopsis "Tool to create Android boot images")
|
||||||
|
@ -338,6 +384,263 @@ to a Unix shell that can run commands on the connected device or emulator.")
|
||||||
Images.")
|
Images.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public android-safe-iop
|
||||||
|
(package
|
||||||
|
(name "android-safe-iop")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-external version "safe-iop"
|
||||||
|
"1nyyrs463advjhlq8xx1lm37m4g5afv7gy0csxrj7biwwl0v13qw"))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags '("CXXFLAGS=-fpermissive -Wno-error")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-before 'build 'patch-host
|
||||||
|
(lambda _
|
||||||
|
;; TODO: Cross-compile.
|
||||||
|
(substitute* "Android.mk"
|
||||||
|
(("BUILD_STATIC_LIBRARY") "BUILD_HOST_STATIC_LIBRARY"))
|
||||||
|
#t)))))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis "Safe integers in C")
|
||||||
|
(description "@code{android-safe-iop} provides a set of functions for
|
||||||
|
performing and checking safe integer operations. Ensure that integer
|
||||||
|
operations do not result in silent overflow.")
|
||||||
|
(license license:bsd-2)))
|
||||||
|
|
||||||
|
(define-public android-bionic-uapi
|
||||||
|
(package
|
||||||
|
(name "android-bionic-uapi")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-bionic version))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'enter-source
|
||||||
|
(lambda _ (chdir "libc") #t))
|
||||||
|
(replace 'check
|
||||||
|
(const #t))
|
||||||
|
(replace 'build
|
||||||
|
(const #t))
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(out-sys (string-append out "/include/sys")))
|
||||||
|
(mkdir-p out-sys)
|
||||||
|
(install-file "include/sys/system_properties.h" out-sys)
|
||||||
|
(install-file "include/sys/_system_properties.h" out-sys)
|
||||||
|
(copy-recursively "kernel/uapi" (string-append out "/include"))
|
||||||
|
#t))))))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis "Android Linux API that is safe for user space")
|
||||||
|
(description "@code{android-bionic-uapi} provides the part of the Linux API
|
||||||
|
that is safe to use for user space. It also includes
|
||||||
|
@code{system_properties.h} and @code{_system_properties.h}.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public android-libselinux
|
||||||
|
(package
|
||||||
|
(name "android-libselinux")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source
|
||||||
|
(android-platform-external version "libselinux"
|
||||||
|
"13m2q32gzdcs5d0zj1nwasjy1j8vsxsgbjg7m5sa9lfcjaj7nkm7"))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
;; See logd/Android.mk for the *_LOG_TAG values.
|
||||||
|
`(#:make-flags (list (string-append "CFLAGS=-Wno-error "
|
||||||
|
"-I core/include "
|
||||||
|
"-I core/libpackagelistparser/include "
|
||||||
|
"-DAUDITD_LOG_TAG=1003 "
|
||||||
|
"-DLOGD_LOG_TAG=1004 -D_GNU_SOURCE")
|
||||||
|
"LDFLAGS=-L . -lpcre")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack-core 'patch-HOST
|
||||||
|
(lambda _
|
||||||
|
;; gettid duplicates otherwise.
|
||||||
|
(substitute* "src/procattr.c"
|
||||||
|
(("#ifdef HOST") "#ifdef XXX"))
|
||||||
|
#t)))))
|
||||||
|
(inputs
|
||||||
|
`(("openssl" ,openssl)))
|
||||||
|
(native-inputs
|
||||||
|
`(("android-bionic-uapi" ,android-bionic-uapi)
|
||||||
|
;; pcre is inlined by our package.
|
||||||
|
("pcre" ,pcre)))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis (package-synopsis libselinux))
|
||||||
|
(description (package-description libselinux))
|
||||||
|
(license (package-license libselinux))))
|
||||||
|
|
||||||
|
(define-public android-ext4-utils
|
||||||
|
(package
|
||||||
|
(name "android-ext4-utils")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-system-extras version))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags
|
||||||
|
(list (string-append "CPPFLAGS="
|
||||||
|
;"-Wno-error "
|
||||||
|
"-I "
|
||||||
|
(assoc-ref %build-inputs "android-libselinux")
|
||||||
|
"/include "
|
||||||
|
"-I " (assoc-ref %build-inputs "android-libsparse")
|
||||||
|
"/include "
|
||||||
|
"-I " (assoc-ref %build-inputs "android-libcutils")
|
||||||
|
"/include "
|
||||||
|
"-I " (assoc-ref %build-inputs "android-liblog") "/include "
|
||||||
|
"-I ../core/include")
|
||||||
|
"CFLAGS=-Wno-error"
|
||||||
|
"install-libext4_utils_host.a"
|
||||||
|
(string-append "prefix=" (assoc-ref %outputs "out")))
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'unpack-core
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(mkdir-p "core")
|
||||||
|
(with-directory-excursion "core"
|
||||||
|
(invoke "tar" "axf" (assoc-ref inputs "android-core")
|
||||||
|
"--strip-components=1"))
|
||||||
|
#t))
|
||||||
|
(add-after 'unpack-core 'enter-source
|
||||||
|
(lambda _ (chdir "ext4_utils") #t))
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(let ((out (assoc-ref outputs "out")))
|
||||||
|
(copy-recursively "." (string-append out "/include")))
|
||||||
|
#t)))))
|
||||||
|
(inputs
|
||||||
|
`(("android-libcutils" ,android-libcutils)
|
||||||
|
("android-liblog" ,android-liblog)
|
||||||
|
("android-libselinux" ,android-libselinux)
|
||||||
|
("android-libsparse" ,android-libsparse)
|
||||||
|
("zlib" ,zlib)))
|
||||||
|
(native-inputs
|
||||||
|
`(("android-core" ,(android-platform-system-core version))))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis "Android ext4 filesystem utils")
|
||||||
|
(description "@code{android-ext4-utils} is a library in common use by the
|
||||||
|
Android core.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public android-f2fs-utils
|
||||||
|
(package
|
||||||
|
(name "android-f2fs-utils")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-system-extras version))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'enter-source
|
||||||
|
(lambda _ (chdir "f2fs_utils") #t))
|
||||||
|
(add-after 'install 'install-headers
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(copy-recursively "." (string-append (assoc-ref outputs "out")
|
||||||
|
"/include"))
|
||||||
|
#t))
|
||||||
|
(add-after 'install 'install-shell-scripts
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bin (string-append out "/bin")))
|
||||||
|
(patch-shebang "mkf2fsuserimg.sh")
|
||||||
|
(substitute* "mkf2fsuserimg.sh"
|
||||||
|
(("make_f2fs") (string-append bin "/make_f2fs")))
|
||||||
|
(install-file "mkf2fsuserimg.sh" bin)
|
||||||
|
#t))))))
|
||||||
|
(inputs
|
||||||
|
`(("f2fs-tools" ,f2fs-tools-1.7)
|
||||||
|
("android-libselinux" ,android-libselinux)
|
||||||
|
("android-libsparse" ,android-libsparse)
|
||||||
|
("android-libcutils" ,android-libcutils)
|
||||||
|
("zlib" ,zlib)))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis "Android f2fs utils")
|
||||||
|
(description "@code{android-f2fs-utils} is a library in common use by the
|
||||||
|
Android core. It allows the user to create images for the @code{f2fs} Flash
|
||||||
|
file system.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public android-libutils
|
||||||
|
(package
|
||||||
|
(name "android-libutils")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-system-core version))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:tests? #f ; TODO
|
||||||
|
#:make-flags '("CXXFLAGS=-std=gnu++11 -Wno-error")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'enter-source
|
||||||
|
(lambda _ (chdir "libutils") #t))
|
||||||
|
|
||||||
|
(add-after 'install 'install-headers
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(copy-recursively "../include/utils" (string-append (assoc-ref outputs "out") "/include/utils")))))))
|
||||||
|
(inputs
|
||||||
|
`(("android-safe-iop" ,android-safe-iop)
|
||||||
|
("android-libcutils" ,android-libcutils)))
|
||||||
|
(native-inputs
|
||||||
|
`(("android-bionic-uapi" ,android-bionic-uapi)
|
||||||
|
("android-liblog" ,android-liblog)))
|
||||||
|
(home-page "https://developer.android.com/")
|
||||||
|
(synopsis "Android utility library")
|
||||||
|
(description "@code{android-libutils} provides utilities for Android NDK developers.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public fastboot
|
||||||
|
(package
|
||||||
|
(name "fastboot")
|
||||||
|
(version (android-platform-version))
|
||||||
|
(source (android-platform-system-core version))
|
||||||
|
(build-system android-ndk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags (list "CXXFLAGS=-std=gnu++11")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'enter-source
|
||||||
|
(lambda _
|
||||||
|
(chdir "fastboot")
|
||||||
|
#t))
|
||||||
|
(add-after 'enter-source 'patch-source
|
||||||
|
(lambda _
|
||||||
|
(substitute* "Android.mk"
|
||||||
|
(("libext4_utils_host") "libext4_utils_host libselinux libpcre"))
|
||||||
|
#t))
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(lib (string-append out "/lib"))
|
||||||
|
(bin (string-append out "/bin")))
|
||||||
|
(install-file "fastboot" bin)
|
||||||
|
#t))))))
|
||||||
|
(inputs
|
||||||
|
`(("adb" ,adb)
|
||||||
|
("android-safe-iop" ,android-safe-iop)
|
||||||
|
("android-ext4-utils" ,android-ext4-utils)
|
||||||
|
("android-f2fs-utils" ,android-f2fs-utils)
|
||||||
|
("android-libbase" ,android-libbase)
|
||||||
|
("android-libcutils" ,android-libcutils)
|
||||||
|
("android-liblog" ,android-liblog)
|
||||||
|
("android-libutils" ,android-libutils)
|
||||||
|
("android-libsparse" ,android-libsparse)
|
||||||
|
("android-libziparchive" ,android-libziparchive)
|
||||||
|
("android-libselinux" ,android-libselinux)
|
||||||
|
("pcre" ,pcre)
|
||||||
|
("mkbootimg" ,mkbootimg)
|
||||||
|
("zlib" ,zlib)))
|
||||||
|
(native-inputs
|
||||||
|
`(("xz" ,xz)))
|
||||||
|
(home-page "https://developer.android.com/studio/command-line/")
|
||||||
|
(synopsis "Android image flasher")
|
||||||
|
(description
|
||||||
|
"This package provides @command{fastboot}, a tool to upload file system images to Android devices.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
(define-public android-udev-rules
|
(define-public android-udev-rules
|
||||||
(package
|
(package
|
||||||
(name "android-udev-rules")
|
(name "android-udev-rules")
|
||||||
|
@ -360,7 +663,8 @@ Images.")
|
||||||
(use-modules (guix build utils))
|
(use-modules (guix build utils))
|
||||||
(let ((source (assoc-ref %build-inputs "source")))
|
(let ((source (assoc-ref %build-inputs "source")))
|
||||||
(install-file (string-append source "/51-android.rules")
|
(install-file (string-append source "/51-android.rules")
|
||||||
(string-append %output "/lib/udev/rules.d"))))))
|
(string-append %output "/lib/udev/rules.d"))
|
||||||
|
#t))))
|
||||||
(home-page "https://github.com/M0Rf30/android-udev-rules")
|
(home-page "https://github.com/M0Rf30/android-udev-rules")
|
||||||
(synopsis "udev rules for Android devices")
|
(synopsis "udev rules for Android devices")
|
||||||
(description "Provides a set of udev rules to allow using Android devices
|
(description "Provides a set of udev rules to allow using Android devices
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -87,11 +87,10 @@ around or take advantage of platform-specific deficiencies or features.")
|
||||||
(apr (assoc-ref inputs "apr"))
|
(apr (assoc-ref inputs "apr"))
|
||||||
(expat (assoc-ref inputs "expat")))
|
(expat (assoc-ref inputs "expat")))
|
||||||
(setenv "CONFIG_SHELL" (which "bash"))
|
(setenv "CONFIG_SHELL" (which "bash"))
|
||||||
(zero?
|
(invoke "./configure"
|
||||||
(system* "./configure"
|
(string-append "--prefix=" out)
|
||||||
(string-append "--prefix=" out)
|
(string-append "--with-apr=" apr)
|
||||||
(string-append "--with-apr=" apr)
|
(string-append "--with-expat=" expat))))))
|
||||||
(string-append "--with-expat=" expat)))))))
|
|
||||||
|
|
||||||
;; There are race conditions during 'make check'. Typically, the
|
;; There are race conditions during 'make check'. Typically, the
|
||||||
;; 'testall' executable is not built yet by the time 'make check' tries
|
;; 'testall' executable is not built yet by the time 'make check' tries
|
||||||
|
|
|
@ -55,7 +55,8 @@
|
||||||
"/bin/aspell")))
|
"/bin/aspell")))
|
||||||
(wrap-program bin/aspell
|
(wrap-program bin/aspell
|
||||||
'("ASPELL_CONF" "" =
|
'("ASPELL_CONF" "" =
|
||||||
("${ASPELL_CONF:-\"dict-dir ${GUIX_PROFILE:-$HOME/.guix-profile}/lib/aspell\"}")))))))))
|
("${ASPELL_CONF:-\"dict-dir ${GUIX_PROFILE:-$HOME/.guix-profile}/lib/aspell\"}")))
|
||||||
|
#t))))))
|
||||||
(inputs `(("perl" ,perl)))
|
(inputs `(("perl" ,perl)))
|
||||||
|
|
||||||
(native-search-paths
|
(native-search-paths
|
||||||
|
@ -101,7 +102,7 @@ dictionaries, including personal ones.")
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(zero? (system* "./configure"))))))
|
(invoke "./configure")))))
|
||||||
#:make-flags
|
#:make-flags
|
||||||
(let ((out (assoc-ref %outputs "out")))
|
(let ((out (assoc-ref %outputs "out")))
|
||||||
(list (string-append "dictdir=" out "/lib/aspell")
|
(list (string-append "dictdir=" out "/lib/aspell")
|
||||||
|
|
|
@ -60,7 +60,7 @@
|
||||||
#t))
|
#t))
|
||||||
(add-after 'install 'install-info
|
(add-after 'install 'install-info
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "make" "install_doc")))))))
|
(invoke "make" "install_doc"))))))
|
||||||
(home-page "http://www.nasm.us/")
|
(home-page "http://www.nasm.us/")
|
||||||
(synopsis "80x86 and x86-64 assembler")
|
(synopsis "80x86 and x86-64 assembler")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
(define-public cfitsio
|
(define-public cfitsio
|
||||||
(package
|
(package
|
||||||
(name "cfitsio")
|
(name "cfitsio")
|
||||||
(version "3.420")
|
(version "3.450")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -43,7 +43,7 @@
|
||||||
"http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
|
"http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
|
||||||
name (string-replace-substring version "." "") ".tar.gz"))
|
name (string-replace-substring version "." "") ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1f0nmki45h9kw7vxpxiav9cb6vs3qqi6zrp2lpci5yhqc5isl43c"))))
|
(base32 "0bmrkw6w65zb0k3mszaaqy1f4zjm2hl7njww74nb5v38wvdi4q5z"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
;; XXX Building with curl currently breaks wcslib. It doesn't use
|
;; XXX Building with curl currently breaks wcslib. It doesn't use
|
||||||
;; pkg-config and hence won't link with -lcurl.
|
;; pkg-config and hence won't link with -lcurl.
|
||||||
|
@ -81,12 +81,17 @@ in FITS files.")
|
||||||
`(("cfitsio" ,cfitsio)))
|
`(("cfitsio" ,cfitsio)))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases (modify-phases %standard-phases
|
`(#:phases
|
||||||
(add-before 'configure 'patch-/bin/sh
|
(modify-phases %standard-phases
|
||||||
(lambda _
|
(add-before 'configure 'patch-/bin/sh
|
||||||
(substitute* "makedefs.in"
|
(lambda _
|
||||||
(("/bin/sh") "sh"))
|
(substitute* "makedefs.in"
|
||||||
#t)))))
|
(("/bin/sh") "sh"))
|
||||||
|
#t))
|
||||||
|
(delete 'install-license-files)) ; installed by ‘make install’
|
||||||
|
;; Both the build and tests fail randomly when run in parallel.
|
||||||
|
#:parallel-build? #f
|
||||||
|
#:parallel-tests? #f))
|
||||||
(home-page "https://www.atnf.csiro.au/people/mcalabre/WCS")
|
(home-page "https://www.atnf.csiro.au/people/mcalabre/WCS")
|
||||||
(synopsis "Library which implements the FITS WCS standard")
|
(synopsis "Library which implements the FITS WCS standard")
|
||||||
(description "The FITS \"World Coordinate System\" (@dfn{WCS}) standard
|
(description "The FITS \"World Coordinate System\" (@dfn{WCS}) standard
|
||||||
|
@ -98,7 +103,7 @@ header.")
|
||||||
(define-public gnuastro
|
(define-public gnuastro
|
||||||
(package
|
(package
|
||||||
(name "gnuastro")
|
(name "gnuastro")
|
||||||
(version "0.5")
|
(version "0.6")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -106,12 +111,14 @@ header.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"10lxzxyrf30hj3bqdgprvaj9phzdi816khjmr0vmjf8pmsr8bqqr"))))
|
"16a212j9ghdirm11d25s5q5qw32bkjrxsh3rblfyyv29djch34w6"))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("cfitsio" ,cfitsio)
|
`(("cfitsio" ,cfitsio)
|
||||||
("gsl" ,gsl)
|
("gsl" ,gsl)
|
||||||
("libjpeg" ,libjpeg)
|
("libjpeg" ,libjpeg)
|
||||||
("wcslib" ,wcslib)))
|
("libtiff" ,libtiff)
|
||||||
|
("wcslib" ,wcslib)
|
||||||
|
("zlib" ,zlib)))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "https://www.gnu.org/software/gnuastro/")
|
(home-page "https://www.gnu.org/software/gnuastro/")
|
||||||
(synopsis "Astronomy utilities")
|
(synopsis "Astronomy utilities")
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||||
;;; Copyright © 2012, 2013, 2016 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -42,13 +43,14 @@
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'configure 'patch-makefile-SHELL
|
(add-after 'configure 'patch-makefile-SHELL
|
||||||
(lambda _
|
(lambda _
|
||||||
(patch-makefile-SHELL "include/buildmacros")))
|
(patch-makefile-SHELL "include/buildmacros")
|
||||||
|
#t))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "make"
|
(invoke "make"
|
||||||
"install"
|
"install"
|
||||||
"install-lib"
|
"install-lib"
|
||||||
"install-dev"))))
|
"install-dev")))
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda* (#:key target #:allow-other-keys)
|
(lambda* (#:key target #:allow-other-keys)
|
||||||
;; Use the right shell.
|
;; Use the right shell.
|
||||||
|
@ -57,11 +59,14 @@
|
||||||
(which "sh")))
|
(which "sh")))
|
||||||
|
|
||||||
;; When building natively, run the tests.
|
;; When building natively, run the tests.
|
||||||
|
;;
|
||||||
|
;; Note that we use system* and unconditionally return #t here
|
||||||
|
;; to ignore the test result, because the tests will fail when
|
||||||
|
;; the build is performed on a file system without support for
|
||||||
|
;; extended attributes, and we wish to allow Guix to be built
|
||||||
|
;; on such systems.
|
||||||
(unless target
|
(unless target
|
||||||
(system* "make" "tests" "-C" "test"))
|
(system* "make" "tests" "-C" "test"))
|
||||||
|
|
||||||
;; XXX: Ignore the test result since this is
|
|
||||||
;; dependent on the underlying file system.
|
|
||||||
#t)))))
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
;; Perl is needed to run tests; remove it from cross builds.
|
;; Perl is needed to run tests; remove it from cross builds.
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
||||||
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
|
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
|
||||||
;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
|
;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
|
||||||
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
|
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
|
||||||
|
@ -12,6 +12,7 @@
|
||||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
;;; Copyright © 2018 okapi <okapi@firemail.cc>
|
;;; Copyright © 2018 okapi <okapi@firemail.cc>
|
||||||
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||||
|
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -212,7 +213,8 @@ streams from live audio.")
|
||||||
"libs/ardour/revision.cc"
|
"libs/ardour/revision.cc"
|
||||||
(lambda (port)
|
(lambda (port)
|
||||||
(format port ,(string-append "#include \"ardour/revision.h\"
|
(format port ,(string-append "#include \"ardour/revision.h\"
|
||||||
namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
|
namespace ARDOUR { const char* revision = \"" version "\" ; }"))
|
||||||
|
#t)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr"))
|
"0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr"))
|
||||||
|
@ -514,7 +516,9 @@ tools (analyzer, mono/stereo tools, crossovers).")
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; remove prebuilt binaries
|
;; remove prebuilt binaries
|
||||||
'(delete-file-recursively "linux_32bit"))))
|
'(begin
|
||||||
|
(delete-file-recursively "linux_32bit")
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
|
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
|
||||||
|
@ -569,16 +573,7 @@ based on human speech recordings.")
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'remove-compiler-flags
|
(add-after 'unpack 'remove-compiler-flags
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* '("src/casynth/CMakeLists.txt"
|
(substitute* (find-files "." "CMakeLists.txt")
|
||||||
"src/cheapdist/CMakeLists.txt"
|
|
||||||
"src/duffer/CMakeLists.txt"
|
|
||||||
"src/envfollower/CMakeLists.txt"
|
|
||||||
"src/ewham/CMakeLists.txt"
|
|
||||||
"src/hip2b/CMakeLists.txt"
|
|
||||||
"src/lushlife/CMakeLists.txt"
|
|
||||||
"src/powercut/CMakeLists.txt"
|
|
||||||
"src/powerup/CMakeLists.txt"
|
|
||||||
"src/stuck/CMakeLists.txt")
|
|
||||||
(("-msse2 -mfpmath=sse") ""))
|
(("-msse2 -mfpmath=sse") ""))
|
||||||
#t)))))
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -1034,7 +1029,7 @@ follower.")
|
||||||
(define-public fluidsynth
|
(define-public fluidsynth
|
||||||
(package
|
(package
|
||||||
(name "fluidsynth")
|
(name "fluidsynth")
|
||||||
(version "1.1.10")
|
(version "1.1.11")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
|
@ -1043,7 +1038,7 @@ follower.")
|
||||||
(file-name (string-append name "-" version "-checkout"))
|
(file-name (string-append name "-" version "-checkout"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"04jlgq1d1hd8r9cnmkl3lgf1fgm7kgy4hh9nfddap41fm1wp121p"))))
|
"0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; no check target
|
'(#:tests? #f ; no check target
|
||||||
|
@ -1095,10 +1090,10 @@ also play midifiles using a Soundfont.")
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'bootstrap
|
(replace 'bootstrap
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "bootstrap" (("\r\n") "\n"))
|
(substitute* "bootstrap" (("\r\n") "\n"))
|
||||||
(zero? (system* "sh" "bootstrap")))))))
|
(invoke "sh" "bootstrap"))))))
|
||||||
(home-page "http://www.audiocoding.com/faad2.html")
|
(home-page "http://www.audiocoding.com/faad2.html")
|
||||||
(synopsis "MPEG-4 and MPEG-2 AAC decoder")
|
(synopsis "MPEG-4 and MPEG-2 AAC decoder")
|
||||||
(description
|
(description
|
||||||
|
@ -1202,14 +1197,15 @@ PS, and DAB+.")
|
||||||
(setenv "PATH" (string-append
|
(setenv "PATH" (string-append
|
||||||
(assoc-ref %build-inputs "bzip2") "/bin:"
|
(assoc-ref %build-inputs "bzip2") "/bin:"
|
||||||
(assoc-ref %build-inputs "tar") "/bin"))
|
(assoc-ref %build-inputs "tar") "/bin"))
|
||||||
(system* "tar" "xvf" (assoc-ref %build-inputs "source"))
|
(invoke "tar" "xvf" (assoc-ref %build-inputs "source"))
|
||||||
(chdir "freepats")
|
(chdir "freepats")
|
||||||
;; Use absolute pattern references
|
;; Use absolute pattern references
|
||||||
(substitute* "freepats.cfg"
|
(substitute* "freepats.cfg"
|
||||||
(("Tone_000") (string-append out "/Tone_000"))
|
(("Tone_000") (string-append out "/Tone_000"))
|
||||||
(("Drum_000") (string-append out "/Drum_000")))
|
(("Drum_000") (string-append out "/Drum_000")))
|
||||||
(mkdir-p out)
|
(mkdir-p out)
|
||||||
(copy-recursively "." out)))))
|
(copy-recursively "." out)
|
||||||
|
#t))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("tar" ,tar)
|
`(("tar" ,tar)
|
||||||
("bzip2" ,bzip2)))
|
("bzip2" ,bzip2)))
|
||||||
|
@ -1730,7 +1726,8 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(setenv "LDFLAGS"
|
(setenv "LDFLAGS"
|
||||||
(string-append "-Wl,-rpath="
|
(string-append "-Wl,-rpath="
|
||||||
(assoc-ref outputs "out") "/lib")))))))
|
(assoc-ref outputs "out") "/lib"))
|
||||||
|
#t)))))
|
||||||
;; required by lilv-0.pc
|
;; required by lilv-0.pc
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("serd" ,serd)
|
`(("serd" ,serd)
|
||||||
|
@ -1997,14 +1994,14 @@ and ALSA.")
|
||||||
(define-public qjackctl
|
(define-public qjackctl
|
||||||
(package
|
(package
|
||||||
(name "qjackctl")
|
(name "qjackctl")
|
||||||
(version "0.5.0")
|
(version "0.5.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
|
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
|
||||||
version "/qjackctl-" version ".tar.gz"))
|
version "/qjackctl-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0lx81dfwanc10vrny1vzi0wx73ph82dlz99ffjzsigj3cqzz6x4s"))))
|
"0jw1s4qh4qjxnysddjv3j2lchwlslj9p4iisv9i89d3m7pf1svs4"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f)) ; no check target
|
'(#:tests? #f)) ; no check target
|
||||||
|
@ -2041,9 +2038,9 @@ into various outputs and to start, stop and configure jackd")
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(zero? (system* "qmake"
|
(invoke "qmake"
|
||||||
(string-append "PREFIX="
|
(string-append "PREFIX="
|
||||||
(assoc-ref outputs "out")))))))))
|
(assoc-ref outputs "out"))))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("qtbase" ,qtbase))) ; for qmake
|
`(("qtbase" ,qtbase))) ; for qmake
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -2073,6 +2070,7 @@ background file post-processing.")
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
|
`(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
|
||||||
|
"-DSC_QT=off"
|
||||||
"-DSC_EL=off") ;scel is packaged individually as
|
"-DSC_EL=off") ;scel is packaged individually as
|
||||||
;emacs-scel.
|
;emacs-scel.
|
||||||
#:modules ((guix build utils)
|
#:modules ((guix build utils)
|
||||||
|
@ -2133,8 +2131,7 @@ set(YAMLCPP_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/\
|
||||||
external_libraries/yaml-cpp/include)"))
|
external_libraries/yaml-cpp/include)"))
|
||||||
#t)))))
|
#t)))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("pkg-config" ,pkg-config)))
|
||||||
("qttools" ,qttools)))
|
|
||||||
(inputs
|
(inputs
|
||||||
`(("jack" ,jack-1)
|
`(("jack" ,jack-1)
|
||||||
("libsndfile" ,libsndfile)
|
("libsndfile" ,libsndfile)
|
||||||
|
@ -2147,12 +2144,7 @@ external_libraries/yaml-cpp/include)"))
|
||||||
("icu4c" ,icu4c)
|
("icu4c" ,icu4c)
|
||||||
("boost" ,boost)
|
("boost" ,boost)
|
||||||
("boost-sync" ,boost-sync)
|
("boost-sync" ,boost-sync)
|
||||||
("yaml-cpp" ,yaml-cpp)
|
("yaml-cpp" ,yaml-cpp)))
|
||||||
("qtbase" ,qtbase) ;IDE support
|
|
||||||
("qtwebkit" ,qtwebkit)
|
|
||||||
("qtsensors" ,qtsensors)
|
|
||||||
("qtdeclarative" ,qtdeclarative)
|
|
||||||
("qtlocation" ,qtlocation)))
|
|
||||||
(home-page "https://github.com/supercollider/supercollider")
|
(home-page "https://github.com/supercollider/supercollider")
|
||||||
(synopsis "Synthesis engine and programming language")
|
(synopsis "Synthesis engine and programming language")
|
||||||
(description "SuperCollider is a synthesis engine (@code{scsynth} or
|
(description "SuperCollider is a synthesis engine (@code{scsynth} or
|
||||||
|
@ -2595,12 +2587,6 @@ Tracker 3 S3M and Impulse Tracker IT files.")
|
||||||
("automake" ,automake)
|
("automake" ,automake)
|
||||||
("libtool" ,libtool)
|
("libtool" ,libtool)
|
||||||
("file" ,file)))
|
("file" ,file)))
|
||||||
(arguments
|
|
||||||
'(#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'bootstrap
|
|
||||||
(lambda _
|
|
||||||
(zero? (system* "sh" "bootstrap")))))))
|
|
||||||
(home-page "http://www.surina.net/soundtouch/")
|
(home-page "http://www.surina.net/soundtouch/")
|
||||||
(synopsis
|
(synopsis
|
||||||
"Audio processing library for changing tempo, pitch and playback rate")
|
"Audio processing library for changing tempo, pitch and playback rate")
|
||||||
|
@ -2750,7 +2736,7 @@ interface.")
|
||||||
(define-public qsynth
|
(define-public qsynth
|
||||||
(package
|
(package
|
||||||
(name "qsynth")
|
(name "qsynth")
|
||||||
(version "0.5.0")
|
(version "0.5.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -2758,7 +2744,7 @@ interface.")
|
||||||
"/qsynth-" version ".tar.gz"))
|
"/qsynth-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1sr6vrz8z9r99j9xcix86lgcqldragb2ajmq1bnhr58d99sda584"))))
|
"0kpk1rnhbifbvm4xvw8i0d4ksk78pf505qvg08k89kqkg32494ap"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; no "check" phase
|
`(#:tests? #f ; no "check" phase
|
||||||
|
@ -2863,8 +2849,10 @@ result.")
|
||||||
version ".tar.bz2"))
|
version ".tar.bz2"))
|
||||||
(snippet
|
(snippet
|
||||||
;; Don't optimize for a specific processor architecture.
|
;; Don't optimize for a specific processor architecture.
|
||||||
'(substitute* "libs/Makefile"
|
'(begin
|
||||||
(("^CXXFLAGS \\+= -march=native") "")))
|
(substitute* "libs/Makefile"
|
||||||
|
(("^CXXFLAGS \\+= -march=native") ""))
|
||||||
|
#t))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
|
@ -2908,8 +2896,10 @@ engine.")
|
||||||
version ".tar.bz2"))
|
version ".tar.bz2"))
|
||||||
(snippet
|
(snippet
|
||||||
;; Don't optimize for a specific processor architecture.
|
;; Don't optimize for a specific processor architecture.
|
||||||
'(substitute* '("apps/Makefile" "libs/Makefile")
|
'(begin
|
||||||
(("^CXXFLAGS \\+= -march=native") "")))
|
(substitute* '("apps/Makefile" "libs/Makefile")
|
||||||
|
(("^CXXFLAGS \\+= -march=native") ""))
|
||||||
|
#t))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
|
@ -3003,12 +2993,6 @@ point audio data.")
|
||||||
"01xi3rvdmil9nawsha04iagjylqr1l9v9vlzk99scs8c207l58i4"))))
|
"01xi3rvdmil9nawsha04iagjylqr1l9v9vlzk99scs8c207l58i4"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
;; The source tarball is not bootstrapped.
|
;; The source tarball is not bootstrapped.
|
||||||
(arguments
|
|
||||||
`(#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'bootstrap
|
|
||||||
(lambda _ (zero? (system* "autoreconf" "-vfi")))))))
|
|
||||||
;; Bootstrapping tools
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("autoconf" ,autoconf)
|
||||||
("automake" ,automake)
|
("automake" ,automake)
|
||||||
|
@ -3137,7 +3121,7 @@ code, used in @code{libtoxcore}.")
|
||||||
(define-public gsm
|
(define-public gsm
|
||||||
(package
|
(package
|
||||||
(name "gsm")
|
(name "gsm")
|
||||||
(version "1.0.17")
|
(version "1.0.18")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -3146,7 +3130,7 @@ code, used in @code{libtoxcore}.")
|
||||||
"-" version ".tar.gz"))
|
"-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"00bns0d4wwrvc60lj2w7wz4yk49q1f6rpdrwqzrxsha9d78mfnl5"))))
|
"041amvpz8cvxykl3pwqldrzxligmmzcg8ncdnxbg32rlqf3q1xh4"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:test-target "tst"
|
`(#:test-target "tst"
|
||||||
|
@ -3172,7 +3156,7 @@ code, used in @code{libtoxcore}.")
|
||||||
(mkdir-p (string-append out "/include/gsm"))
|
(mkdir-p (string-append out "/include/gsm"))
|
||||||
(copy-recursively "inc"
|
(copy-recursively "inc"
|
||||||
(string-append out "/include/gsm")))))
|
(string-append out "/include/gsm")))))
|
||||||
(delete 'configure))))
|
(delete 'configure)))) ; no configure script
|
||||||
(synopsis "GSM 06.10 lossy speech compression library")
|
(synopsis "GSM 06.10 lossy speech compression library")
|
||||||
(description "This C library provides an encoder and a decoder for the GSM
|
(description "This C library provides an encoder and a decoder for the GSM
|
||||||
06.10 RPE-LTP lossy speech compression algorithm.")
|
06.10 RPE-LTP lossy speech compression algorithm.")
|
||||||
|
@ -3221,12 +3205,6 @@ mixers.")
|
||||||
(base32
|
(base32
|
||||||
"1qinf41wl2ihx54zmmhanycihwjkn7dn1cicq6pp4rqbiv79b95x"))))
|
"1qinf41wl2ihx54zmmhanycihwjkn7dn1cicq6pp4rqbiv79b95x"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
|
||||||
`(#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'bootstrap
|
|
||||||
(lambda _
|
|
||||||
(zero? (system* "autoreconf" "-vif")))))))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("autoconf" ,autoconf)
|
||||||
("automake" ,automake)
|
("automake" ,automake)
|
||||||
|
@ -3266,7 +3244,7 @@ on the ALSA software PCM plugin.")
|
||||||
"1vm0dy5qlycqkima7y5ajzvazyjybifa803fabjcpncjz08c26vp"))))
|
"1vm0dy5qlycqkima7y5ajzvazyjybifa803fabjcpncjz08c26vp"))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system glib-or-gtk-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; no tests
|
`(#:tests? #f ; no tests
|
||||||
#:out-of-source? #f ; for the 'install-doc' phase
|
#:out-of-source? #f ; for the 'install-doc' phase
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(let* ((out (assoc-ref %outputs "out"))
|
(let* ((out (assoc-ref %outputs "out"))
|
||||||
|
@ -3278,13 +3256,13 @@ on the ALSA software PCM plugin.")
|
||||||
(add-after 'install 'install-doc
|
(add-after 'install 'install-doc
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(docdir (string-append out "/share/doc/snd")))
|
(doc (string-append out "/share/doc/"
|
||||||
(mkdir-p docdir)
|
,name "-" ,version)))
|
||||||
(for-each
|
(for-each
|
||||||
(lambda (f)
|
(lambda (f)
|
||||||
(install-file f docdir))
|
(install-file f doc))
|
||||||
(find-files "." "\\.html$|COPYING"))
|
(find-files "." "\\.html$|COPYING"))
|
||||||
(copy-recursively "pix" (string-append docdir "/pix"))
|
(copy-recursively "pix" (string-append doc "/pix"))
|
||||||
#t))))))
|
#t))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
@ -3418,7 +3396,7 @@ representations.")
|
||||||
(define-public cava
|
(define-public cava
|
||||||
(package
|
(package
|
||||||
(name "cava")
|
(name "cava")
|
||||||
(version "0.6.0")
|
(version "0.6.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -3427,7 +3405,7 @@ representations.")
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1p24lz3h4d0h82ffylqr7mq8a8x1c66flm2r2bsv1liw51n1rma2"))))
|
"13d72swnjs894llf0paandmhf1lf90dz6ygkcdw4bv84wzkq1f4q"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("autoconf" ,autoconf)
|
||||||
|
@ -3446,7 +3424,7 @@ representations.")
|
||||||
(list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib)))
|
(list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib)))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'bootstrap
|
(replace 'bootstrap
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(setenv "HOME" (getcwd))
|
(setenv "HOME" (getcwd))
|
||||||
(invoke "sh" "autogen.sh")))
|
(invoke "sh" "autogen.sh")))
|
||||||
|
@ -3492,7 +3470,8 @@ using ALSA, MPD, PulseAudio, or a FIFO buffer as its input.")
|
||||||
(let ((file (assoc-ref %build-inputs "source"))
|
(let ((file (assoc-ref %build-inputs "source"))
|
||||||
(out (string-append %output "/share/soundfonts")))
|
(out (string-append %output "/share/soundfonts")))
|
||||||
(mkdir-p out)
|
(mkdir-p out)
|
||||||
(copy-file file (string-append out "/FluidR3Mono_GM.sf3"))))))
|
(copy-file file (string-append out "/FluidR3Mono_GM.sf3"))
|
||||||
|
#t))))
|
||||||
(home-page "https://github.com/musescore/MuseScore/tree/master/share/sound")
|
(home-page "https://github.com/musescore/MuseScore/tree/master/share/sound")
|
||||||
(synopsis "Pro-quality GM soundfont")
|
(synopsis "Pro-quality GM soundfont")
|
||||||
(description "Fluid-3 is Frank Wen's pro-quality GM soundfont.")
|
(description "Fluid-3 is Frank Wen's pro-quality GM soundfont.")
|
||||||
|
|
|
@ -3,11 +3,12 @@
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
|
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
|
||||||
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||||
;;; Copyright © 2015, 2017 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2015, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016 David Thompson <davet@gnu.org>
|
;;; Copyright © 2016 David Thompson <davet@gnu.org>
|
||||||
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
||||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -120,9 +121,9 @@ know anything about Autoconf or M4.")
|
||||||
(out (assoc-ref outputs "out")))
|
(out (assoc-ref outputs "out")))
|
||||||
(setenv "CONFIG_SHELL" bash)
|
(setenv "CONFIG_SHELL" bash)
|
||||||
(setenv "SHELL" bash)
|
(setenv "SHELL" bash)
|
||||||
(zero? (system* bash "./configure"
|
(invoke bash "./configure"
|
||||||
(string-append "--prefix=" out)
|
(string-append "--prefix=" out)
|
||||||
(string-append "--build=" build)))))))))))
|
(string-append "--build=" build))))))))))
|
||||||
|
|
||||||
|
|
||||||
(define (make-autoconf-wrapper autoconf)
|
(define (make-autoconf-wrapper autoconf)
|
||||||
|
@ -192,7 +193,8 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
|
||||||
(patch-shebang "configure"))
|
(patch-shebang "configure"))
|
||||||
(exit (status:exit-val result))))
|
(exit (status:exit-val result))))
|
||||||
port)))
|
port)))
|
||||||
(chmod (string-append bin "/autoconf") #o555)))))
|
(chmod (string-append bin "/autoconf") #o555)
|
||||||
|
#t))))
|
||||||
|
|
||||||
;; Do not show it in the UI since it's meant for internal use.
|
;; Do not show it in the UI since it's meant for internal use.
|
||||||
(properties '((hidden? . #t)))))
|
(properties '((hidden? . #t)))))
|
||||||
|
@ -248,14 +250,14 @@ output is indexed in many ways to simplify browsing.")
|
||||||
(define-public automake
|
(define-public automake
|
||||||
(package
|
(package
|
||||||
(name "automake")
|
(name "automake")
|
||||||
(version "1.15.1")
|
(version "1.16.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/automake/automake-"
|
(uri (string-append "mirror://gnu/automake/automake-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1bzd9g32dfm4rsbw93ld9x7b5nc1y6i4m6zp032qf1i28a8s6sxg"))
|
"08g979ficj18i1w6w5219bgmns7czr03iadf20mk3lrzl8wbn1ax"))
|
||||||
(patches
|
(patches
|
||||||
(search-patches "automake-skip-amhello-tests.patch"))))
|
(search-patches "automake-skip-amhello-tests.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
@ -287,32 +289,33 @@ output is indexed in many ways to simplify browsing.")
|
||||||
(setenv "CONFIG_SHELL" sh)
|
(setenv "CONFIG_SHELL" sh)
|
||||||
#t)))
|
#t)))
|
||||||
|
|
||||||
;; Files like `install-sh', `mdate.sh', etc. must use
|
;; Files like `install-sh', `mdate.sh', etc. must use
|
||||||
;; #!/bin/sh, otherwise users could leak erroneous shebangs
|
;; #!/bin/sh, otherwise users could leak erroneous shebangs
|
||||||
;; in the wild. See <http://bugs.gnu.org/14201> for an
|
;; in the wild. See <http://bugs.gnu.org/14201> for an
|
||||||
;; example.
|
;; example.
|
||||||
(add-after 'install 'unpatch-shebangs
|
(add-after 'install 'unpatch-shebangs
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(dir (string-append out "/share")))
|
(dir (string-append out "/share")))
|
||||||
(define (starts-with-shebang? file)
|
(define (starts-with-shebang? file)
|
||||||
(equal? (call-with-input-file file
|
(equal? (call-with-input-file file
|
||||||
(lambda (p)
|
(lambda (p)
|
||||||
(list (get-u8 p) (get-u8 p))))
|
(list (get-u8 p) (get-u8 p))))
|
||||||
(map char->integer '(#\# #\!))))
|
(map char->integer '(#\# #\!))))
|
||||||
|
|
||||||
(for-each (lambda (file)
|
(for-each (lambda (file)
|
||||||
(when (and (starts-with-shebang? file)
|
(when (and (starts-with-shebang? file)
|
||||||
(executable-file? file))
|
(executable-file? file))
|
||||||
(format #t "restoring shebang on `~a'~%"
|
(format #t "restoring shebang on `~a'~%"
|
||||||
file)
|
file)
|
||||||
(substitute* file
|
(substitute* file
|
||||||
(("^#!.*/bin/sh")
|
(("^#!.*/bin/sh")
|
||||||
"#!/bin/sh")
|
"#!/bin/sh")
|
||||||
(("^#!.*/bin/env(.*)$" _ args)
|
(("^#!.*/bin/env(.*)$" _ args)
|
||||||
(string-append "#!/usr/bin/env"
|
(string-append "#!/usr/bin/env"
|
||||||
args)))))
|
args)))))
|
||||||
(find-files dir ".*"))))))))
|
(find-files dir ".*"))
|
||||||
|
#t))))))
|
||||||
(home-page "https://www.gnu.org/software/automake/")
|
(home-page "https://www.gnu.org/software/automake/")
|
||||||
(synopsis "Making GNU standards-compliant Makefiles")
|
(synopsis "Making GNU standards-compliant Makefiles")
|
||||||
(description
|
(description
|
||||||
|
@ -322,21 +325,6 @@ intuitive format and then Automake works with Autoconf to produce a robust
|
||||||
Makefile, simplifying the entire process for the developer.")
|
Makefile, simplifying the entire process for the developer.")
|
||||||
(license gpl2+))) ; some files are under GPLv3+
|
(license gpl2+))) ; some files are under GPLv3+
|
||||||
|
|
||||||
(define-public automake-1.16
|
|
||||||
;; Make this the default on the next rebuild cycle.
|
|
||||||
(package
|
|
||||||
(inherit automake)
|
|
||||||
(version "1.16.1")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "mirror://gnu/automake/automake-"
|
|
||||||
version ".tar.xz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"08g979ficj18i1w6w5219bgmns7czr03iadf20mk3lrzl8wbn1ax"))
|
|
||||||
(patches
|
|
||||||
(search-patches "automake-skip-amhello-tests.patch"))))))
|
|
||||||
|
|
||||||
(define-public libtool
|
(define-public libtool
|
||||||
(package
|
(package
|
||||||
(name "libtool")
|
(name "libtool")
|
||||||
|
@ -353,6 +341,9 @@ Makefile, simplifying the entire process for the developer.")
|
||||||
(propagated-inputs `(("m4" ,m4)))
|
(propagated-inputs `(("m4" ,m4)))
|
||||||
(native-inputs `(("m4" ,m4)
|
(native-inputs `(("m4" ,m4)
|
||||||
("perl" ,perl)
|
("perl" ,perl)
|
||||||
|
;; XXX: this shouldn't be necessary, but without it test
|
||||||
|
;; 102 fails because it cannot find ltdl/libltdl.la.
|
||||||
|
("libltdl" ,libltdl)
|
||||||
("help2man" ,help2man) ;because we modify ltmain.sh
|
("help2man" ,help2man) ;because we modify ltmain.sh
|
||||||
("automake" ,automake) ;some tests rely on 'aclocal'
|
("automake" ,automake) ;some tests rely on 'aclocal'
|
||||||
("autoconf" ,autoconf-wrapper))) ;others on 'autom4te'
|
("autoconf" ,autoconf-wrapper))) ;others on 'autom4te'
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,313 @@
|
||||||
|
/* GNU Guix --- Functional package management for GNU
|
||||||
|
Copyright (C) 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
|
||||||
|
This file is part of GNU Guix.
|
||||||
|
|
||||||
|
GNU Guix is free software; you can redistribute it and/or modify it
|
||||||
|
under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 3 of the License, or (at
|
||||||
|
your option) any later version.
|
||||||
|
|
||||||
|
GNU Guix is distributed in the hope that it will be useful, but
|
||||||
|
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
/* Make the given @WRAPPED_PROGRAM@ relocatable by executing it in a separate
|
||||||
|
mount namespace where the store is mounted in its right place.
|
||||||
|
|
||||||
|
We would happily do that in Scheme using 'call-with-container'. However,
|
||||||
|
this very program needs to be relocatable, so it needs to be statically
|
||||||
|
linked, which complicates things (Guile's modules can hardly be "linked"
|
||||||
|
into a single executable.) */
|
||||||
|
|
||||||
|
#define _GNU_SOURCE
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <sched.h>
|
||||||
|
#include <sys/mount.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <libgen.h>
|
||||||
|
#include <limits.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <assert.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/wait.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <dirent.h>
|
||||||
|
#include <sys/syscall.h>
|
||||||
|
|
||||||
|
/* Concatenate DIRECTORY, a slash, and FILE. Return the result, which the
|
||||||
|
caller must eventually free. */
|
||||||
|
static char *
|
||||||
|
concat (const char *directory, const char *file)
|
||||||
|
{
|
||||||
|
char *result = malloc (strlen (directory) + 2 + strlen (file));
|
||||||
|
assert (result != NULL);
|
||||||
|
|
||||||
|
strcpy (result, directory);
|
||||||
|
strcat (result, "/");
|
||||||
|
strcat (result, file);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
mkdir_p (const char *directory)
|
||||||
|
{
|
||||||
|
if (strcmp (directory, "/") != 0)
|
||||||
|
{
|
||||||
|
char *parent = dirname (strdupa (directory));
|
||||||
|
mkdir_p (parent);
|
||||||
|
int err = mkdir (directory, 0700);
|
||||||
|
if (err < 0 && errno != EEXIST)
|
||||||
|
assert_perror (errno);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
rm_rf (const char *directory)
|
||||||
|
{
|
||||||
|
DIR *stream = opendir (directory);
|
||||||
|
|
||||||
|
for (struct dirent *entry = readdir (stream);
|
||||||
|
entry != NULL;
|
||||||
|
entry = readdir (stream))
|
||||||
|
{
|
||||||
|
if (strcmp (entry->d_name, ".") == 0
|
||||||
|
|| strcmp (entry->d_name, "..") == 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
char *full = concat (directory, entry->d_name);
|
||||||
|
|
||||||
|
int err = unlink (full);
|
||||||
|
if (err < 0)
|
||||||
|
{
|
||||||
|
if (errno == EISDIR)
|
||||||
|
/* Recurse (we expect a shallow directory structure so there's
|
||||||
|
little risk of stack overflow.) */
|
||||||
|
rm_rf (full);
|
||||||
|
else
|
||||||
|
assert_perror (errno);
|
||||||
|
}
|
||||||
|
|
||||||
|
free (full);
|
||||||
|
}
|
||||||
|
|
||||||
|
closedir (stream);
|
||||||
|
|
||||||
|
int err = rmdir (directory);
|
||||||
|
if (err < 0 && errno != ENOENT)
|
||||||
|
assert_perror (errno);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Bind mount all the top-level entries in SOURCE to TARGET. */
|
||||||
|
static void
|
||||||
|
bind_mount (const char *source, const char *target)
|
||||||
|
{
|
||||||
|
DIR *stream = opendir (source);
|
||||||
|
|
||||||
|
for (struct dirent *entry = readdir (stream);
|
||||||
|
entry != NULL;
|
||||||
|
entry = readdir (stream))
|
||||||
|
{
|
||||||
|
/* XXX: Some file systems may not report a useful 'd_type'. Ignore them
|
||||||
|
for now. */
|
||||||
|
assert (entry->d_type != DT_UNKNOWN);
|
||||||
|
|
||||||
|
if (strcmp (entry->d_name, ".") == 0
|
||||||
|
|| strcmp (entry->d_name, "..") == 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
char *abs_source = concat (source, entry->d_name);
|
||||||
|
char *new_entry = concat (target, entry->d_name);
|
||||||
|
|
||||||
|
if (entry->d_type == DT_LNK)
|
||||||
|
{
|
||||||
|
char target[PATH_MAX];
|
||||||
|
|
||||||
|
ssize_t result = readlink (abs_source, target, sizeof target - 1);
|
||||||
|
if (result > 0)
|
||||||
|
{
|
||||||
|
target[result] = '\0';
|
||||||
|
int err = symlink (target, new_entry);
|
||||||
|
if (err < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* Create the mount point. */
|
||||||
|
if (entry->d_type == DT_DIR)
|
||||||
|
{
|
||||||
|
int err = mkdir (new_entry, 0700);
|
||||||
|
if (err != 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
close (open (new_entry, O_WRONLY | O_CREAT));
|
||||||
|
|
||||||
|
int err = mount (abs_source, new_entry, "none",
|
||||||
|
MS_BIND | MS_REC | MS_RDONLY, NULL);
|
||||||
|
|
||||||
|
/* It used to be that only directories could be bind-mounted. Thus,
|
||||||
|
keep going if we fail to bind-mount a non-directory entry.
|
||||||
|
That's OK because regular files in the root file system are
|
||||||
|
usually uninteresting. */
|
||||||
|
if (err != 0 && entry->d_type != DT_DIR)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
free (new_entry);
|
||||||
|
free (abs_source);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
closedir (stream);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Write the user/group ID map for PID to FILE, mapping ID to itself. See
|
||||||
|
user_namespaces(7). */
|
||||||
|
static void
|
||||||
|
write_id_map (pid_t pid, const char *file, int id)
|
||||||
|
{
|
||||||
|
char id_map_file[100];
|
||||||
|
snprintf (id_map_file, sizeof id_map_file, "/proc/%d/%s", pid, file);
|
||||||
|
|
||||||
|
char id_map[100];
|
||||||
|
|
||||||
|
/* Map root and the current user. */
|
||||||
|
int len = snprintf (id_map, sizeof id_map, "%d %d 1\n", id, id);
|
||||||
|
int fd = open (id_map_file, O_WRONLY);
|
||||||
|
if (fd < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
int n = write (fd, id_map, len);
|
||||||
|
if (n < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
close (fd);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Disallow setgroups(2) for PID. */
|
||||||
|
static void
|
||||||
|
disallow_setgroups (pid_t pid)
|
||||||
|
{
|
||||||
|
char file[100];
|
||||||
|
|
||||||
|
snprintf (file, sizeof file, "/proc/%d/setgroups", pid);
|
||||||
|
|
||||||
|
int fd = open (file, O_WRONLY);
|
||||||
|
if (fd < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
int err = write (fd, "deny", 5);
|
||||||
|
if (err < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
close (fd);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
main (int argc, char *argv[])
|
||||||
|
{
|
||||||
|
ssize_t size;
|
||||||
|
char self[PATH_MAX];
|
||||||
|
size = readlink ("/proc/self/exe", self, sizeof self - 1);
|
||||||
|
assert (size > 0);
|
||||||
|
|
||||||
|
/* SELF is something like "/home/ludo/.local/gnu/store/…-foo/bin/ls" and we
|
||||||
|
want to extract "/home/ludo/.local/gnu/store". */
|
||||||
|
size_t index = strlen (self)
|
||||||
|
- strlen ("@WRAPPED_PROGRAM@")
|
||||||
|
+ strlen ("@STORE_DIRECTORY@");
|
||||||
|
char *store = strdup (self);
|
||||||
|
store[index] = '\0';
|
||||||
|
|
||||||
|
struct stat statbuf;
|
||||||
|
|
||||||
|
/* If STORE is already at the "right" place, we can execute
|
||||||
|
@WRAPPED_PROGRAM@ right away. This is not just an optimization: it's
|
||||||
|
needed when running one of these wrappers from within an unshare'd
|
||||||
|
namespace, because 'unshare' fails with EPERM in that context. */
|
||||||
|
if (strcmp (store, "@STORE_DIRECTORY@") != 0
|
||||||
|
&& lstat ("@WRAPPED_PROGRAM@", &statbuf) != 0)
|
||||||
|
{
|
||||||
|
/* Spawn @WRAPPED_PROGRAM@ in a separate namespace where STORE is
|
||||||
|
bind-mounted in the right place. */
|
||||||
|
int err;
|
||||||
|
char *new_root = mkdtemp (strdup ("/tmp/guix-exec-XXXXXX"));
|
||||||
|
char *new_store = concat (new_root, "@STORE_DIRECTORY@");
|
||||||
|
char *cwd = get_current_dir_name ();
|
||||||
|
|
||||||
|
/* Create a child with separate namespaces and set up bind-mounts from
|
||||||
|
there. That way, bind-mounts automatically disappear when the child
|
||||||
|
exits, which simplifies cleanup for the parent. Note: clone is more
|
||||||
|
convenient than fork + unshare since the parent can directly write
|
||||||
|
the child uid_map/gid_map files. */
|
||||||
|
pid_t child = syscall (SYS_clone, SIGCHLD | CLONE_NEWNS | CLONE_NEWUSER,
|
||||||
|
NULL, NULL, NULL);
|
||||||
|
switch (child)
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
/* Note: Due to <https://bugzilla.kernel.org/show_bug.cgi?id=183461>
|
||||||
|
we cannot make NEW_ROOT a tmpfs (which would have saved the need
|
||||||
|
for 'rm_rf'.) */
|
||||||
|
bind_mount ("/", new_root);
|
||||||
|
mkdir_p (new_store);
|
||||||
|
err = mount (store, new_store, "none", MS_BIND | MS_REC | MS_RDONLY,
|
||||||
|
NULL);
|
||||||
|
if (err < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
chdir (new_root);
|
||||||
|
err = chroot (new_root);
|
||||||
|
if (err < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
/* Change back to where we were before chroot'ing. */
|
||||||
|
chdir (cwd);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case -1:
|
||||||
|
fprintf (stderr, "%s: error: 'clone' failed: %m\n", argv[0]);
|
||||||
|
fprintf (stderr, "\
|
||||||
|
This may be because \"user namespaces\" are not supported on this system.\n\
|
||||||
|
Consequently, we cannot run '@WRAPPED_PROGRAM@',\n\
|
||||||
|
unless you move it to the '@STORE_DIRECTORY@' directory.\n\
|
||||||
|
\n\
|
||||||
|
Please refer to the 'guix pack' documentation for more information.\n");
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
/* Map the current user/group ID in the child's namespace (the
|
||||||
|
default is to get the "overflow UID", i.e., the UID of
|
||||||
|
"nobody"). We must first disallow 'setgroups' for that
|
||||||
|
process. */
|
||||||
|
disallow_setgroups (child);
|
||||||
|
write_id_map (child, "uid_map", getuid ());
|
||||||
|
write_id_map (child, "gid_map", getgid ());
|
||||||
|
|
||||||
|
int status;
|
||||||
|
waitpid (child, &status, 0);
|
||||||
|
chdir ("/"); /* avoid EBUSY */
|
||||||
|
rm_rf (new_root);
|
||||||
|
free (new_root);
|
||||||
|
exit (status);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The executable is available under @STORE_DIRECTORY@, so we can now
|
||||||
|
execute it. */
|
||||||
|
int err = execv ("@WRAPPED_PROGRAM@", argv);
|
||||||
|
if (err < 0)
|
||||||
|
assert_perror (errno);
|
||||||
|
|
||||||
|
return EXIT_FAILURE;
|
||||||
|
}
|
|
@ -77,7 +77,7 @@ DNS-SD (for \"DNS-Based Service Discovery\") protocols.")
|
||||||
(define-public nss-mdns
|
(define-public nss-mdns
|
||||||
(package
|
(package
|
||||||
(name "nss-mdns")
|
(name "nss-mdns")
|
||||||
(version "0.12")
|
(version "0.14.1")
|
||||||
(home-page "https://github.com/lathiat/nss-mdns")
|
(home-page "https://github.com/lathiat/nss-mdns")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -85,32 +85,13 @@ DNS-SD (for \"DNS-Based Service Discovery\") protocols.")
|
||||||
name "-" version ".tar.gz"))
|
name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1p2vj9fz4kzrjrj81ipf4qwgnr2n7a8cbzw4bpk18xyqhdx8h775"))
|
"134wdr0n9cm5ab4g6dwq76lvzqns9dcylr470i2xxjimnw0l22d2"))))
|
||||||
(patches
|
|
||||||
(list (origin
|
|
||||||
;; See
|
|
||||||
;; <https://github.com/lathiat/nss-mdns/issues/26#issuecomment-364781799>.
|
|
||||||
(uri (string-append
|
|
||||||
home-page
|
|
||||||
"/commit/31ccbec3b4f054e590c7c880d8a8a50cfc97127d.patch"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0b1jmhnkpsczbph4ala7x3rafwxdg93277s30iaxh37jnvgjnhsd"))
|
|
||||||
(method url-fetch))))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases (modify-phases %standard-phases
|
;; The Avahi daemon socket is expected by 'configure.ac' to be at
|
||||||
(add-after 'unpack 'set-avahi-socket-name
|
;; "$(localstatedir)/run/avahi-daemon/socket", but nowadays it lives in
|
||||||
(lambda _
|
;; /run/avahi-daemon/socket. Remove the "$(localstatedir)" bit.
|
||||||
;; The Avahi daemon socket is expected by
|
'(#:configure-flags '("AVAHI_SOCKET=/run/avahi-daemon/socket")))
|
||||||
;; src/Makefile.am to be at
|
|
||||||
;; "$(localstatedir)/run/avahi-daemon/socket", but
|
|
||||||
;; nowadays it lives in /run/avahi-daemon/socket.
|
|
||||||
;; Remove the "$(localstatedir)" bit.
|
|
||||||
(substitute* "src/Makefile.in"
|
|
||||||
(("\\$\\(localstatedir)/run/avahi-daemon/socket")
|
|
||||||
"/run/avahi-daemon/socket"))
|
|
||||||
#t)))))
|
|
||||||
(synopsis "Multicast DNS Name Service Switch (@dfn{NSS}) plug-in")
|
(synopsis "Multicast DNS Name Service Switch (@dfn{NSS}) plug-in")
|
||||||
(description
|
(description
|
||||||
"Nss-mdns is a plug-in for the GNU C Library's Name Service Switch
|
"Nss-mdns is a plug-in for the GNU C Library's Name Service Switch
|
||||||
|
|
|
@ -117,7 +117,7 @@ for use with GCC on Atmel AVR microcontrollers.")
|
||||||
(version (package-version avr-gcc))
|
(version (package-version avr-gcc))
|
||||||
(source #f)
|
(source #f)
|
||||||
(build-system trivial-build-system)
|
(build-system trivial-build-system)
|
||||||
(arguments '(#:builder (mkdir %output)))
|
(arguments '(#:builder (begin (mkdir %output) #t)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("avrdude" ,avrdude)
|
`(("avrdude" ,avrdude)
|
||||||
("binutils" ,avr-binutils)
|
("binutils" ,avr-binutils)
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
|
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
|
||||||
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
||||||
|
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -63,7 +64,7 @@
|
||||||
(define-public duplicity
|
(define-public duplicity
|
||||||
(package
|
(package
|
||||||
(name "duplicity")
|
(name "duplicity")
|
||||||
(version "0.7.12")
|
(version "0.7.17")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -73,12 +74,13 @@
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1rhgrz2lm9vbfdp2raykrih1c6n2lw5jd572z4dsz488m52avjqi"))))
|
"0jmh3h09680xyf33hzxxxl74bwz66zqhzvjlj7j89r9rz3qwa91p"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("util-linux" ,util-linux) ;setsid command, for the tests
|
`(("util-linux" ,util-linux) ;setsid command, for the tests
|
||||||
("par2cmdline" ,par2cmdline)
|
("par2cmdline" ,par2cmdline)
|
||||||
("python-pexpect" ,python2-pexpect)
|
("python-pexpect" ,python2-pexpect)
|
||||||
|
("python-fasteners" ,python2-fasteners)
|
||||||
("mock" ,python2-mock)))
|
("mock" ,python2-mock)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("lockfile" ,python2-lockfile)
|
`(("lockfile" ,python2-lockfile)
|
||||||
|
@ -203,7 +205,6 @@ backups (called chunks) to allow easy burning to CD/DVD.")
|
||||||
(base32
|
(base32
|
||||||
"1km0mzfl6in7l5vz9kl09a88ajx562rw93ng9h2jqavrailvsbgd"))))
|
"1km0mzfl6in7l5vz9kl09a88ajx562rw93ng9h2jqavrailvsbgd"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
;; TODO: Add -L/path/to/nettle in libarchive.pc.
|
|
||||||
(inputs
|
(inputs
|
||||||
`(("zlib" ,zlib)
|
`(("zlib" ,zlib)
|
||||||
("nettle" ,nettle)
|
("nettle" ,nettle)
|
||||||
|
@ -226,12 +227,33 @@ backups (called chunks) to allow easy burning to CD/DVD.")
|
||||||
;; the chroot's /etc/passwd doesn't have it. Turn off those tests.
|
;; the chroot's /etc/passwd doesn't have it. Turn off those tests.
|
||||||
;;
|
;;
|
||||||
;; The tests allow one to disable tests matching a globbing pattern.
|
;; The tests allow one to disable tests matching a globbing pattern.
|
||||||
(and (zero? (system* "make"
|
(invoke "make" "libarchive_test" "bsdcpio_test" "bsdtar_test")
|
||||||
"libarchive_test" "bsdcpio_test" "bsdtar_test"))
|
;; XXX: This glob disables too much.
|
||||||
;; XXX: This glob disables too much.
|
(invoke "./libarchive_test" "^test_*_disk*")
|
||||||
(zero? (system* "./libarchive_test" "^test_*_disk*"))
|
(invoke "./bsdcpio_test" "^test_owner_parse")
|
||||||
(zero? (system* "./bsdcpio_test" "^test_owner_parse"))
|
(invoke "./bsdtar_test")))
|
||||||
(zero? (system* "./bsdtar_test"))))))
|
(add-after 'install 'add--L-in-libarchive-pc
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(lib (string-append out "/lib"))
|
||||||
|
(nettle (assoc-ref inputs "nettle"))
|
||||||
|
(libxml2 (assoc-ref inputs "libxml2"))
|
||||||
|
(xz (assoc-ref inputs "xz"))
|
||||||
|
(zlib (assoc-ref inputs "zlib"))
|
||||||
|
(bzip2 (assoc-ref inputs "bzip2")))
|
||||||
|
(substitute* (string-append lib "/pkgconfig/libarchive.pc")
|
||||||
|
(("-lnettle")
|
||||||
|
(string-append "-L" nettle "/lib -lnettle"))
|
||||||
|
(("-lxml2")
|
||||||
|
(string-append "-L" libxml2 "/lib -lxml2"))
|
||||||
|
(("-llzma")
|
||||||
|
(string-append "-L" xz "/lib -llzma"))
|
||||||
|
(("-lz")
|
||||||
|
(string-append "-L" zlib "/lib -lz"))
|
||||||
|
(("-lbz2")
|
||||||
|
(string-append "-L" bzip2 "/lib -lbz2")))
|
||||||
|
#t))))
|
||||||
|
|
||||||
;; libarchive/test/test_write_format_gnutar_filenames.c needs to be
|
;; libarchive/test/test_write_format_gnutar_filenames.c needs to be
|
||||||
;; compiled with C99 or C11 or a gnu variant.
|
;; compiled with C99 or C11 or a gnu variant.
|
||||||
#:configure-flags '("CFLAGS=-O2 -g -std=c99")))
|
#:configure-flags '("CFLAGS=-O2 -g -std=c99")))
|
||||||
|
@ -278,9 +300,6 @@ random access nor for in-place modification.")
|
||||||
`(#:parallel-build? #f ;race conditions
|
`(#:parallel-build? #f ;race conditions
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'bootstrap
|
|
||||||
(lambda _
|
|
||||||
(invoke "autoreconf")))
|
|
||||||
(add-before 'build 'qualify-inputs
|
(add-before 'build 'qualify-inputs
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
;; This script is full of pitfalls. Fix some that particularly
|
;; This script is full of pitfalls. Fix some that particularly
|
||||||
|
@ -468,7 +487,8 @@ detection, and lossless compression.")
|
||||||
;; Remove bundled shared libraries.
|
;; Remove bundled shared libraries.
|
||||||
(with-directory-excursion "src/borg/algorithms"
|
(with-directory-excursion "src/borg/algorithms"
|
||||||
(for-each delete-file-recursively
|
(for-each delete-file-recursively
|
||||||
(list "blake2" "lz4" "zstd")))))))
|
(list "blake2" "lz4" "zstd")))
|
||||||
|
#t))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:modules ((srfi srfi-26) ; for cut
|
`(#:modules ((srfi srfi-26) ; for cut
|
||||||
|
|
|
@ -2,16 +2,17 @@
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||||
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||||
;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2016 Alex Vong <alexvong1995@gmail.com>
|
;;; Copyright © 2016, 2018 Alex Vong <alexvong1995@gmail.com>
|
||||||
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -35,6 +36,7 @@
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages acl)
|
#:use-module (gnu packages acl)
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages ed)
|
#:use-module (gnu packages ed)
|
||||||
#:use-module (gnu packages guile)
|
#:use-module (gnu packages guile)
|
||||||
#:use-module (gnu packages multiprecision)
|
#:use-module (gnu packages multiprecision)
|
||||||
|
@ -126,14 +128,14 @@ including, for example, recursive directory searching.")
|
||||||
(define-public sed
|
(define-public sed
|
||||||
(package
|
(package
|
||||||
(name "sed")
|
(name "sed")
|
||||||
(version "4.4")
|
(version "4.5")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/sed/sed-" version
|
(uri (string-append "mirror://gnu/sed/sed-" version
|
||||||
".tar.xz"))
|
".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0fv88bcnraixc8jvpacvxshi30p5x9m7yb8ns1hfv07hmb2ypmnb"))))
|
"0h3b2jfj57wmz680vkbyavlsrkak556qhvs7m7fdlawwhg477bbs"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(synopsis "Stream editor")
|
(synopsis "Stream editor")
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -147,15 +149,9 @@ including, for example, recursive directory searching.")
|
||||||
(substitute* "Makefile.in"
|
(substitute* "Makefile.in"
|
||||||
(("^doc/sed\\.1:.*")
|
(("^doc/sed\\.1:.*")
|
||||||
"doc/sed.1:\n"))
|
"doc/sed.1:\n"))
|
||||||
#t))
|
|
||||||
(add-before 'patch-source-shebangs 'patch-test-suite
|
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
|
||||||
(patch-makefile-SHELL "testsuite/Makefile.tests")
|
|
||||||
(substitute* '("testsuite/bsd.sh"
|
|
||||||
"testsuite/bug-regex9.c")
|
|
||||||
(("/bin/sh")
|
|
||||||
(which "sh")))
|
|
||||||
#t)))))
|
#t)))))
|
||||||
|
(native-inputs
|
||||||
|
`(("perl" ,perl))) ;for tests
|
||||||
(description
|
(description
|
||||||
"Sed is a non-interactive, text stream editor. It receives a text
|
"Sed is a non-interactive, text stream editor. It receives a text
|
||||||
input from a file or from standard input and it then applies a series of text
|
input from a file or from standard input and it then applies a series of text
|
||||||
|
@ -168,20 +164,20 @@ implementation offers several extensions over the standard utility.")
|
||||||
(define-public tar
|
(define-public tar
|
||||||
(package
|
(package
|
||||||
(name "tar")
|
(name "tar")
|
||||||
(version "1.29")
|
(version "1.30")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/tar/tar-"
|
(uri (string-append "mirror://gnu/tar/tar-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"097hx7sbzp8qirl4m930lw84kn0wmxhmq7v1qpra3mrg0b8cyba0"))
|
"1lyjyk8z8hdddsxw0ikchrsfg3i0x3fsh7l63a8jgaz1n7dr5gzi"))
|
||||||
(patches (search-patches "tar-CVE-2016-6321.patch"
|
(patches (search-patches "tar-skip-unreliable-tests.patch"
|
||||||
"tar-skip-unreliable-tests.patch"))))
|
"tar-remove-wholesparse-check.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
;; Note: test suite requires ~1GiB of disk space.
|
;; Note: test suite requires ~1GiB of disk space.
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases (modify-phases %standard-phases
|
`(#:phases (modify-phases %standard-phases
|
||||||
(add-before 'build 'set-shell-file-name
|
(add-before 'build 'set-shell-file-name
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
;; Do not use "/bin/sh" to run programs.
|
;; Do not use "/bin/sh" to run programs.
|
||||||
|
@ -189,7 +185,27 @@ implementation offers several extensions over the standard utility.")
|
||||||
(substitute* "src/system.c"
|
(substitute* "src/system.c"
|
||||||
(("/bin/sh")
|
(("/bin/sh")
|
||||||
(string-append bash "/bin/sh")))
|
(string-append bash "/bin/sh")))
|
||||||
#t))))))
|
#t))))
|
||||||
|
|
||||||
|
;; Work around a cross-compilation bug whereby libgnu.a would provide
|
||||||
|
;; '__mktime_internal', which conflicts with the one in libc.a.
|
||||||
|
,@(if (%current-target-system)
|
||||||
|
`(#:configure-flags '("gl_cv_func_working_mktime=yes"))
|
||||||
|
'())
|
||||||
|
|
||||||
|
;; Test #92 "link mismatch" expects "a/z: Not linked to a/y" but gets
|
||||||
|
;; "a/y: Not linked to a/z" and fails, presumably due to differences in
|
||||||
|
;; the order in which 'diff' traverses directories. That leads to a
|
||||||
|
;; test failure even though conceptually the test passes. Skip it.
|
||||||
|
;; Test 117 and 118 are prone to race conditions too, particularly
|
||||||
|
;; when cross-compiling, so we skip those as well. All issues have
|
||||||
|
;; been fixed upstream in these commits:
|
||||||
|
;; <https://git.savannah.gnu.org/cgit/tar.git/commit/?id=847a36f>
|
||||||
|
;; <https://git.savannah.gnu.org/cgit/tar.git/commit/?id=64b43fd>
|
||||||
|
#:make-flags (list (string-append
|
||||||
|
"TESTSUITEFLAGS= -k '!link mismatch,"
|
||||||
|
"!directory removed before reading,"
|
||||||
|
"!explicitly named directory removed before reading'"))))
|
||||||
|
|
||||||
;; When cross-compiling, the 'set-shell-file-name' phase needs to be able
|
;; When cross-compiling, the 'set-shell-file-name' phase needs to be able
|
||||||
;; to refer to the target Bash.
|
;; to refer to the target Bash.
|
||||||
|
@ -211,16 +227,22 @@ standard utility.")
|
||||||
(define-public patch
|
(define-public patch
|
||||||
(package
|
(package
|
||||||
(name "patch")
|
(name "patch")
|
||||||
(version "2.7.5")
|
(version "2.7.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/patch/patch-"
|
(uri (string-append "mirror://gnu/patch/patch-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"16d2r9kpivaak948mxzc0bai45mqfw73m113wrkmbffnalv1b5gx"))
|
"1zfqy4rdcy279vwn2z1kbv19dcfw25d2aqy9nzvdkq5bjzd0nqdc"))
|
||||||
(patches (search-patches "patch-hurd-path-max.patch"))))
|
(patches (search-patches "patch-hurd-path-max.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
;; Work around a cross-compilation bug whereby libpatch.a would provide
|
||||||
|
;; '__mktime_internal', which conflicts with the one in libc.a.
|
||||||
|
(if (%current-target-system)
|
||||||
|
`(#:configure-flags '("gl_cv_func_working_mktime=yes"))
|
||||||
|
'()))
|
||||||
(native-inputs `(("ed" ,ed)))
|
(native-inputs `(("ed" ,ed)))
|
||||||
(synopsis "Apply differences to originals, with optional backups")
|
(synopsis "Apply differences to originals, with optional backups")
|
||||||
(description
|
(description
|
||||||
|
@ -304,14 +326,14 @@ used to apply commands with arbitrarily long arguments.")
|
||||||
(define-public coreutils
|
(define-public coreutils
|
||||||
(package
|
(package
|
||||||
(name "coreutils")
|
(name "coreutils")
|
||||||
(version "8.28")
|
(version "8.29")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/coreutils/coreutils-"
|
(uri (string-append "mirror://gnu/coreutils/coreutils-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0r8c1bgm68kl70j1lgd0rv12iykw6143k4m9a56xip9rc2hv25qi"))))
|
"0plm1zs9il6bb5mk881qvbghq4glc8ybbgakk2lfzb0w64fgml4j"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("acl" ,acl) ; TODO: add SELinux
|
(inputs `(("acl" ,acl) ; TODO: add SELinux
|
||||||
("gmp" ,gmp) ;bignums in 'expr', yay!
|
("gmp" ,gmp) ;bignums in 'expr', yay!
|
||||||
|
@ -378,13 +400,17 @@ functionality beyond that which is outlined in the POSIX standard.")
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"12f5zzyq2w56g95nni65hc0g5p7154033y2f3qmjvd016szn5qnn"))
|
"12f5zzyq2w56g95nni65hc0g5p7154033y2f3qmjvd016szn5qnn"))
|
||||||
(patches (search-patches "make-impure-dirs.patch"))))
|
(patches (search-patches "make-impure-dirs.patch"
|
||||||
|
"make-glibc-compat.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs `(("pkg-config" ,pkg-config))) ; to detect Guile
|
(native-inputs `(("pkg-config" ,pkg-config))) ; to detect Guile
|
||||||
(inputs `(("guile" ,guile-2.0)))
|
(inputs `(("guile" ,guile-2.0)))
|
||||||
(outputs '("out" "debug"))
|
(outputs '("out" "debug"))
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(;; Work around faulty glob detection with glibc 2.27. See
|
||||||
|
;; <https://lists.nongnu.org/archive/html/bug-make/2017-11/msg00027.html>.
|
||||||
|
#:configure-flags '("make_cv_sys_gnu_glob=yes")
|
||||||
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-before 'build 'set-default-shell
|
(add-before 'build 'set-default-shell
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
@ -393,7 +419,8 @@ functionality beyond that which is outlined in the POSIX standard.")
|
||||||
(substitute* "job.c"
|
(substitute* "job.c"
|
||||||
(("default_shell =.*$")
|
(("default_shell =.*$")
|
||||||
(format #f "default_shell = \"~a/bin/sh\";\n"
|
(format #f "default_shell = \"~a/bin/sh\";\n"
|
||||||
bash)))))))))
|
bash)))
|
||||||
|
#t))))))
|
||||||
(synopsis "Remake files automatically")
|
(synopsis "Remake files automatically")
|
||||||
(description
|
(description
|
||||||
"Make is a program that is used to control the production of
|
"Make is a program that is used to control the production of
|
||||||
|
@ -408,16 +435,15 @@ change. GNU make offers many powerful extensions over the standard utility.")
|
||||||
(define-public binutils
|
(define-public binutils
|
||||||
(package
|
(package
|
||||||
(name "binutils")
|
(name "binutils")
|
||||||
(version "2.28.1")
|
(version "2.30")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/binutils/binutils-"
|
(uri (string-append "mirror://gnu/binutils/binutils-"
|
||||||
version ".tar.bz2"))
|
version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1sj234nd05cdgga1r36zalvvdkvpfbr12g5mir2n8i1dwsdrj939"))
|
"028cklfqaab24glva1ks2aqa1zxa6w6xmc8q34zs1sb7h22dxspg"))
|
||||||
(patches (search-patches "binutils-ld-new-dtags.patch"
|
(patches (search-patches "binutils-loongson-workaround.patch"))))
|
||||||
"binutils-loongson-workaround.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
|
||||||
;; TODO: Add dependency on zlib + those for Gold.
|
;; TODO: Add dependency on zlib + those for Gold.
|
||||||
|
@ -426,6 +452,12 @@ change. GNU make offers many powerful extensions over the standard utility.")
|
||||||
;; on GCC when bootstrapping.
|
;; on GCC when bootstrapping.
|
||||||
"LDFLAGS=-static-libgcc"
|
"LDFLAGS=-static-libgcc"
|
||||||
|
|
||||||
|
;; Turn on --enable-new-dtags by default to make the
|
||||||
|
;; linker set RUNPATH instead of RPATH on binaries.
|
||||||
|
;; This is important because RUNPATH can be overriden
|
||||||
|
;; using LD_LIBRARY_PATH at runtime.
|
||||||
|
"--enable-new-dtags"
|
||||||
|
|
||||||
;; Don't search under /usr/lib & co.
|
;; Don't search under /usr/lib & co.
|
||||||
"--with-lib-path=/no-ld-lib-path"
|
"--with-lib-path=/no-ld-lib-path"
|
||||||
|
|
||||||
|
@ -512,7 +544,8 @@ wrapper for the cross-linker for that target, called 'TARGET-ld'."
|
||||||
target "-ld")
|
target "-ld")
|
||||||
"/bin/ld"))))
|
"/bin/ld"))))
|
||||||
(chmod ld #o555)
|
(chmod ld #o555)
|
||||||
(compile-file ld #:output-file go))))))
|
(compile-file ld #:output-file go)
|
||||||
|
#t)))))
|
||||||
(synopsis "The linker wrapper")
|
(synopsis "The linker wrapper")
|
||||||
(description
|
(description
|
||||||
"The linker wrapper (or 'ld-wrapper') wraps the linker to add any
|
"The linker wrapper (or 'ld-wrapper') wraps the linker to add any
|
||||||
|
@ -526,38 +559,31 @@ store.")
|
||||||
(define-public glibc/linux
|
(define-public glibc/linux
|
||||||
(package
|
(package
|
||||||
(name "glibc")
|
(name "glibc")
|
||||||
;; Glibc has stable branches that continuously pick fixes for each supported
|
|
||||||
;; release. Unfortunately they do not do point-releases, so we are stuck
|
|
||||||
;; with copying almost all patches, or use a snapshot of the release branch.
|
|
||||||
;;
|
|
||||||
;; This version number corresponds to the output of `git describe` and the
|
|
||||||
;; archive can be generated by checking out the commit ID and running:
|
|
||||||
;; git archive --prefix=$(git describe)/ HEAD | xz > $(git describe).tar.xz
|
|
||||||
;; See <https://bugs.gnu.org/29406> for details.
|
|
||||||
;;
|
|
||||||
;; Note: Always use a dot after the minor version since various places rely
|
;; Note: Always use a dot after the minor version since various places rely
|
||||||
;; on "version-major+minor" to determine where locales are found.
|
;; on "version-major+minor" to determine where locales are found.
|
||||||
(version "2.26.105-g0890d5379c")
|
(version "2.27")
|
||||||
(replacement glibc-2.26-patched)
|
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://alpha.gnu.org/gnu/guix/mirror/"
|
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
|
||||||
"glibc-" (version-major+minor version) "-"
|
|
||||||
(caddr (string-split version #\.)) ".tar.xz"))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1jck0c1i248sn02rvsfjykk77qncma34bjq89dyy2irwm50d7s3g"))
|
"0wpwq7gsm7sd6ysidv0z575ckqdg13cr2njyfgrbgh4f65adwwji"))
|
||||||
(snippet
|
(snippet
|
||||||
;; Disable 'ldconfig' and /etc/ld.so.cache. The latter is
|
;; Disable 'ldconfig' and /etc/ld.so.cache. The latter is
|
||||||
;; required on LFS distros to avoid loading the distro's libc.so
|
;; required on LFS distros to avoid loading the distro's libc.so
|
||||||
;; instead of ours.
|
;; instead of ours.
|
||||||
'(substitute* "sysdeps/unix/sysv/linux/configure"
|
'(begin
|
||||||
(("use_ldconfig=yes")
|
(substitute* "sysdeps/unix/sysv/linux/configure"
|
||||||
"use_ldconfig=no")))
|
(("use_ldconfig=yes")
|
||||||
|
"use_ldconfig=no"))
|
||||||
|
#t))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(patches (search-patches "glibc-ldd-x86_64.patch"
|
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||||
|
"glibc-2.27-git-fixes.patch"
|
||||||
|
"glibc-hidden-visibility-ldconfig.patch"
|
||||||
"glibc-versioned-locpath.patch"
|
"glibc-versioned-locpath.patch"
|
||||||
"glibc-o-largefile.patch"))))
|
"glibc-allow-kernel-2.6.32.patch"
|
||||||
|
"glibc-reinstate-prlimit64-fallback.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
|
||||||
;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
|
;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
|
||||||
|
@ -582,8 +608,7 @@ store.")
|
||||||
(guix build gnu-build-system))
|
(guix build gnu-build-system))
|
||||||
|
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(list "--enable-add-ons"
|
(list "--sysconfdir=/etc"
|
||||||
"--sysconfdir=/etc"
|
|
||||||
|
|
||||||
;; Installing a locale archive with all the locales is to
|
;; Installing a locale archive with all the locales is to
|
||||||
;; expensive (~100 MiB), so we rely on users to install the
|
;; expensive (~100 MiB), so we rely on users to install the
|
||||||
|
@ -618,10 +643,7 @@ store.")
|
||||||
;; Use our Bash instead of /bin/sh.
|
;; Use our Bash instead of /bin/sh.
|
||||||
(string-append "BASH_SHELL="
|
(string-append "BASH_SHELL="
|
||||||
(assoc-ref %build-inputs "bash")
|
(assoc-ref %build-inputs "bash")
|
||||||
"/bin/bash")
|
"/bin/bash"))
|
||||||
|
|
||||||
;; XXX: Work around "undefined reference to `__stack_chk_guard'".
|
|
||||||
"libc_cv_ssp=no" "libc_cv_ssp_strong=no")
|
|
||||||
|
|
||||||
#:tests? #f ; XXX
|
#:tests? #f ; XXX
|
||||||
#:phases (modify-phases %standard-phases
|
#:phases (modify-phases %standard-phases
|
||||||
|
@ -685,7 +707,9 @@ store.")
|
||||||
;; "bilingual" eval/exec magic at the top of the file.
|
;; "bilingual" eval/exec magic at the top of the file.
|
||||||
"")
|
"")
|
||||||
(("exec @PERL@")
|
(("exec @PERL@")
|
||||||
"exec perl")))))
|
"exec perl"))
|
||||||
|
|
||||||
|
#t)))
|
||||||
|
|
||||||
(add-after 'install 'move-static-libs
|
(add-after 'install 'move-static-libs
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
@ -732,6 +756,7 @@ store.")
|
||||||
;; install the message catalogs, with 'msgfmt'.
|
;; install the message catalogs, with 'msgfmt'.
|
||||||
(native-inputs `(("texinfo" ,texinfo)
|
(native-inputs `(("texinfo" ,texinfo)
|
||||||
("perl" ,perl)
|
("perl" ,perl)
|
||||||
|
("bison" ,bison)
|
||||||
("gettext" ,gettext-minimal)))
|
("gettext" ,gettext-minimal)))
|
||||||
|
|
||||||
(native-search-paths
|
(native-search-paths
|
||||||
|
@ -799,14 +824,13 @@ with the Linux kernel.")
|
||||||
;; Force mach/hurd/libpthread subdirs to build first in order to avoid
|
;; Force mach/hurd/libpthread subdirs to build first in order to avoid
|
||||||
;; linking errors.
|
;; linking errors.
|
||||||
;; See <https://lists.gnu.org/archive/html/bug-hurd/2016-11/msg00045.html>
|
;; See <https://lists.gnu.org/archive/html/bug-hurd/2016-11/msg00045.html>
|
||||||
(let ((-j (list "-j" (number->string (parallel-job-count)))))
|
(let ((flags (list "-j" (number->string (parallel-job-count)))))
|
||||||
(let-syntax ((make (syntax-rules ()
|
(define (make target)
|
||||||
((_ target)
|
(apply invoke "make" target flags))
|
||||||
(zero? (apply system* "make" target -j))))))
|
(make "mach/subdir_lib")
|
||||||
(and (make "mach/subdir_lib")
|
(make "hurd/subdir_lib")
|
||||||
(make "hurd/subdir_lib")
|
(make "libpthread/subdir_lib")
|
||||||
(make "libpthread/subdir_lib")
|
(apply invoke "make" flags))))))
|
||||||
(zero? (apply system* "make" -j)))))))))
|
|
||||||
((#:configure-flags original-configure-flags)
|
((#:configure-flags original-configure-flags)
|
||||||
`(append (list "--host=i586-pc-gnu"
|
`(append (list "--host=i586-pc-gnu"
|
||||||
|
|
||||||
|
@ -841,13 +865,25 @@ GLIBC/HURD for a Hurd host"
|
||||||
;; Below are old libc versions, which we use mostly to build locale data in
|
;; Below are old libc versions, which we use mostly to build locale data in
|
||||||
;; the old format (which the new libc cannot cope with.)
|
;; the old format (which the new libc cannot cope with.)
|
||||||
|
|
||||||
(define glibc-2.26-patched
|
(define-public glibc-2.26
|
||||||
(package
|
(package
|
||||||
(inherit glibc)
|
(inherit glibc)
|
||||||
|
;; This version number corresponds to the output of `git describe` and the
|
||||||
|
;; archive can be generated by checking out the commit ID and running:
|
||||||
|
;; git archive --prefix=$(git describe)/ HEAD | xz > $(git describe).tar.xz
|
||||||
|
;; See <https://bugs.gnu.org/29406> for why this was necessary.
|
||||||
|
(version "2.26.105-g0890d5379c")
|
||||||
(source (origin
|
(source (origin
|
||||||
(inherit (package-source glibc))
|
(inherit (package-source glibc))
|
||||||
(patches (cons (search-patch "glibc-allow-kernel-2.6.32.patch")
|
(uri (string-append "https://alpha.gnu.org/gnu/guix/mirror/"
|
||||||
(origin-patches (package-source glibc))))))))
|
"glibc-" (version-major+minor version) "-"
|
||||||
|
(caddr (string-split version #\.)) ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1jck0c1i248sn02rvsfjykk77qncma34bjq89dyy2irwm50d7s3g"))
|
||||||
|
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||||
|
"glibc-versioned-locpath.patch"
|
||||||
|
"glibc-allow-kernel-2.6.32.patch"))))))
|
||||||
|
|
||||||
(define-public glibc-2.25
|
(define-public glibc-2.25
|
||||||
(package
|
(package
|
||||||
|
@ -862,7 +898,6 @@ GLIBC/HURD for a Hurd host"
|
||||||
"1813dzkgw6v8q8q1m4v96yfis7vjqc9pslqib6j9mrwh6fxxjyq6"))
|
"1813dzkgw6v8q8q1m4v96yfis7vjqc9pslqib6j9mrwh6fxxjyq6"))
|
||||||
(patches (search-patches "glibc-ldd-x86_64.patch"
|
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||||
"glibc-versioned-locpath.patch"
|
"glibc-versioned-locpath.patch"
|
||||||
"glibc-o-largefile.patch"
|
|
||||||
"glibc-vectorized-strcspn-guards.patch"
|
"glibc-vectorized-strcspn-guards.patch"
|
||||||
"glibc-CVE-2017-1000366-pt1.patch"
|
"glibc-CVE-2017-1000366-pt1.patch"
|
||||||
"glibc-CVE-2017-1000366-pt2.patch"
|
"glibc-CVE-2017-1000366-pt2.patch"
|
||||||
|
@ -881,7 +916,6 @@ GLIBC/HURD for a Hurd host"
|
||||||
"1lxmprg9gm73gvafxd503x70z32phwjzcy74i0adfi6ixzla7m4r"))
|
"1lxmprg9gm73gvafxd503x70z32phwjzcy74i0adfi6ixzla7m4r"))
|
||||||
(patches (search-patches "glibc-ldd-x86_64.patch"
|
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||||
"glibc-versioned-locpath.patch"
|
"glibc-versioned-locpath.patch"
|
||||||
"glibc-o-largefile.patch"
|
|
||||||
"glibc-vectorized-strcspn-guards.patch"
|
"glibc-vectorized-strcspn-guards.patch"
|
||||||
"glibc-CVE-2015-5180.patch"
|
"glibc-CVE-2015-5180.patch"
|
||||||
"glibc-CVE-2017-1000366-pt1.patch"
|
"glibc-CVE-2017-1000366-pt1.patch"
|
||||||
|
@ -901,7 +935,6 @@ GLIBC/HURD for a Hurd host"
|
||||||
"1s8krs3y2n6pzav7ic59dz41alqalphv7vww4138ag30wh0fpvwl"))
|
"1s8krs3y2n6pzav7ic59dz41alqalphv7vww4138ag30wh0fpvwl"))
|
||||||
(patches (search-patches "glibc-ldd-x86_64.patch"
|
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||||
"glibc-versioned-locpath.patch"
|
"glibc-versioned-locpath.patch"
|
||||||
"glibc-o-largefile.patch"
|
|
||||||
"glibc-vectorized-strcspn-guards.patch"
|
"glibc-vectorized-strcspn-guards.patch"
|
||||||
"glibc-CVE-2015-5180.patch"
|
"glibc-CVE-2015-5180.patch"
|
||||||
"glibc-CVE-2016-3075.patch"
|
"glibc-CVE-2016-3075.patch"
|
||||||
|
@ -923,6 +956,7 @@ GLIBC/HURD for a Hurd host"
|
||||||
(base32
|
(base32
|
||||||
"0j49682pm2nh4qbdw35bas82p1pgfnz4d2l7iwfyzvrvj0318wzb"))
|
"0j49682pm2nh4qbdw35bas82p1pgfnz4d2l7iwfyzvrvj0318wzb"))
|
||||||
(patches (search-patches "glibc-ldd-x86_64.patch"
|
(patches (search-patches "glibc-ldd-x86_64.patch"
|
||||||
|
"glibc-o-largefile.patch"
|
||||||
"glibc-vectorized-strcspn-guards.patch"
|
"glibc-vectorized-strcspn-guards.patch"
|
||||||
"glibc-CVE-2015-5180.patch"
|
"glibc-CVE-2015-5180.patch"
|
||||||
"glibc-CVE-2015-7547.patch"
|
"glibc-CVE-2015-7547.patch"
|
||||||
|
@ -965,8 +999,8 @@ the 'share/locale' sub-directory of this package.")
|
||||||
`(modify-phases ,phases
|
`(modify-phases ,phases
|
||||||
(replace 'build
|
(replace 'build
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "make" "localedata/install-locales"
|
(invoke "make" "localedata/install-locales"
|
||||||
"-j" (number->string (parallel-job-count))))))
|
"-j" (number->string (parallel-job-count)))))
|
||||||
(delete 'install)
|
(delete 'install)
|
||||||
(delete 'move-static-libs)))
|
(delete 'move-static-libs)))
|
||||||
((#:configure-flags flags)
|
((#:configure-flags flags)
|
||||||
|
@ -987,8 +1021,7 @@ the 'share/locale' sub-directory of this package.")
|
||||||
(arguments
|
(arguments
|
||||||
`(#:modules ((guix build utils))
|
`(#:modules ((guix build utils))
|
||||||
#:builder (begin
|
#:builder (begin
|
||||||
(use-modules (srfi srfi-1)
|
(use-modules (guix build utils))
|
||||||
(guix build utils))
|
|
||||||
|
|
||||||
(let* ((libc (assoc-ref %build-inputs "glibc"))
|
(let* ((libc (assoc-ref %build-inputs "glibc"))
|
||||||
(gzip (assoc-ref %build-inputs "gzip"))
|
(gzip (assoc-ref %build-inputs "gzip"))
|
||||||
|
@ -999,27 +1032,27 @@ the 'share/locale' sub-directory of this package.")
|
||||||
(setenv "PATH" (string-append libc "/bin:" gzip "/bin"))
|
(setenv "PATH" (string-append libc "/bin:" gzip "/bin"))
|
||||||
|
|
||||||
(mkdir-p localedir)
|
(mkdir-p localedir)
|
||||||
(every (lambda (locale)
|
(for-each (lambda (locale)
|
||||||
(define file
|
(define file
|
||||||
;; Use the "normalized codeset" by
|
;; Use the "normalized codeset" by
|
||||||
;; default--e.g., "en_US.utf8".
|
;; default--e.g., "en_US.utf8".
|
||||||
(string-append localedir "/" locale ".utf8"))
|
(string-append localedir "/" locale ".utf8"))
|
||||||
|
|
||||||
(and (zero? (system* "localedef" "--no-archive"
|
(invoke "localedef" "--no-archive"
|
||||||
"--prefix" localedir
|
"--prefix" localedir
|
||||||
"-i" locale
|
"-i" locale
|
||||||
"-f" "UTF-8" file))
|
"-f" "UTF-8" file)
|
||||||
(begin
|
|
||||||
;; For backward compatibility with Guix
|
|
||||||
;; <= 0.8.3, add "xx_YY.UTF-8".
|
|
||||||
(symlink (string-append locale ".utf8")
|
|
||||||
(string-append localedir "/"
|
|
||||||
locale ".UTF-8"))
|
|
||||||
#t)))
|
|
||||||
|
|
||||||
;; These are the locales commonly used for
|
;; For backward compatibility with Guix
|
||||||
;; tests---e.g., in Guile's i18n tests.
|
;; <= 0.8.3, add "xx_YY.UTF-8".
|
||||||
'("de_DE" "el_GR" "en_US" "fr_FR" "tr_TR"))))))
|
(symlink (string-append locale ".utf8")
|
||||||
|
(string-append localedir "/"
|
||||||
|
locale ".UTF-8")))
|
||||||
|
|
||||||
|
;; These are the locales commonly used for
|
||||||
|
;; tests---e.g., in Guile's i18n tests.
|
||||||
|
'("de_DE" "el_GR" "en_US" "fr_FR" "tr_TR"))
|
||||||
|
#t))))
|
||||||
(inputs `(("glibc" ,glibc)
|
(inputs `(("glibc" ,glibc)
|
||||||
("gzip" ,gzip)))
|
("gzip" ,gzip)))
|
||||||
(synopsis "Small sample of UTF-8 locales")
|
(synopsis "Small sample of UTF-8 locales")
|
||||||
|
@ -1063,30 +1096,26 @@ command.")
|
||||||
"--host=i586-pc-gnu"
|
"--host=i586-pc-gnu"
|
||||||
"--enable-obsolete-rpc"))
|
"--enable-obsolete-rpc"))
|
||||||
((#:phases _)
|
((#:phases _)
|
||||||
'(alist-replace
|
'(modify-phases %standard-phases
|
||||||
'install
|
(replace 'install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(and (zero? (system* "make" "install-headers"))
|
(invoke "make" "install-headers")
|
||||||
|
|
||||||
;; Make an empty stubs.h to work around not being able to
|
;; Make an empty stubs.h to work around not being able to
|
||||||
;; produce a valid stubs.h and causing the build to fail. See
|
;; produce a valid stubs.h and causing the build to fail. See
|
||||||
;; <http://lists.gnu.org/archive/html/guix-devel/2014-04/msg00233.html>.
|
;; <http://lists.gnu.org/archive/html/guix-devel/2014-04/msg00233.html>.
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(close-port
|
(close-port
|
||||||
(open-output-file
|
(open-output-file
|
||||||
(string-append out "/include/gnu/stubs.h"))))))
|
(string-append out "/include/gnu/stubs.h"))))
|
||||||
|
#t))
|
||||||
;; Nothing to build.
|
(delete 'build) ; nothing to build
|
||||||
(alist-delete
|
(add-before 'configure 'patch-configure-script
|
||||||
'build
|
(lambda _
|
||||||
|
;; Use the right 'pwd'.
|
||||||
(alist-cons-before
|
(substitute* "configure"
|
||||||
'configure 'pre-configure
|
(("/bin/pwd") "pwd"))
|
||||||
(lambda _
|
#t))))))))
|
||||||
;; Use the right 'pwd'.
|
|
||||||
(substitute* "configure"
|
|
||||||
(("/bin/pwd") "pwd")))
|
|
||||||
%standard-phases))))))))
|
|
||||||
|
|
||||||
(define-public tzdata
|
(define-public tzdata
|
||||||
(package
|
(package
|
||||||
|
@ -1123,8 +1152,8 @@ command.")
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace 'unpack
|
(replace 'unpack
|
||||||
(lambda* (#:key source inputs #:allow-other-keys)
|
(lambda* (#:key source inputs #:allow-other-keys)
|
||||||
(and (zero? (system* "tar" "xvf" source))
|
(invoke "tar" "xvf" source)
|
||||||
(zero? (system* "tar" "xvf" (assoc-ref inputs "tzcode"))))))
|
(invoke "tar" "xvf" (assoc-ref inputs "tzcode"))))
|
||||||
(add-after 'install 'post-install
|
(add-after 'install 'post-install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
;; Move data in the right place.
|
;; Move data in the right place.
|
||||||
|
@ -1139,7 +1168,8 @@ command.")
|
||||||
(copy-recursively (string-append out "/share/zoneinfo-leaps")
|
(copy-recursively (string-append out "/share/zoneinfo-leaps")
|
||||||
(string-append out "/share/zoneinfo/right"))
|
(string-append out "/share/zoneinfo/right"))
|
||||||
(delete-file-recursively
|
(delete-file-recursively
|
||||||
(string-append out "/share/zoneinfo-leaps")))))
|
(string-append out "/share/zoneinfo-leaps"))
|
||||||
|
#t)))
|
||||||
(delete 'configure))))
|
(delete 'configure))))
|
||||||
(inputs `(("tzcode" ,(origin
|
(inputs `(("tzcode" ,(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -1164,63 +1194,7 @@ and daylight-saving rules.")
|
||||||
;;; will typically be obsolete and should never be referred to by a built
|
;;; will typically be obsolete and should never be referred to by a built
|
||||||
;;; package.
|
;;; package.
|
||||||
(define-public tzdata-for-tests
|
(define-public tzdata-for-tests
|
||||||
(hidden-package (package (inherit tzdata)
|
(hidden-package tzdata))
|
||||||
(version "2017c")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "https://www.iana.org/time-zones/repository"
|
|
||||||
"/releases/tzdata" version ".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"02yrrfj0p7ar885ja41ylijzbr8wc6kz6kzlw8c670i9m693ym6n"))))
|
|
||||||
(arguments
|
|
||||||
'(#:tests? #f
|
|
||||||
#:make-flags (let ((out (assoc-ref %outputs "out"))
|
|
||||||
(tmp (getenv "TMPDIR")))
|
|
||||||
(list (string-append "TOPDIR=" out)
|
|
||||||
(string-append "TZDIR=" out "/share/zoneinfo")
|
|
||||||
|
|
||||||
;; Discard zic, dump, and tzselect, already
|
|
||||||
;; provided by glibc.
|
|
||||||
(string-append "ETCDIR=" tmp "/etc")
|
|
||||||
|
|
||||||
;; Likewise for the C library routines.
|
|
||||||
(string-append "LIBDIR=" tmp "/lib")
|
|
||||||
(string-append "MANDIR=" tmp "/man")
|
|
||||||
|
|
||||||
"AWK=awk"
|
|
||||||
"CC=gcc"))
|
|
||||||
#:modules ((guix build utils)
|
|
||||||
(guix build gnu-build-system)
|
|
||||||
(srfi srfi-1))
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(replace 'unpack
|
|
||||||
(lambda* (#:key source inputs #:allow-other-keys)
|
|
||||||
(and (zero? (system* "tar" "xvf" source))
|
|
||||||
(zero? (system* "tar" "xvf" (assoc-ref inputs "tzcode"))))))
|
|
||||||
(add-after 'install 'post-install
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
;; Move data in the right place.
|
|
||||||
(let ((out (assoc-ref outputs "out")))
|
|
||||||
(symlink (string-append out "/share/zoneinfo")
|
|
||||||
(string-append out "/share/zoneinfo/posix"))
|
|
||||||
(delete-file-recursively
|
|
||||||
(string-append out "/share/zoneinfo-posix"))
|
|
||||||
(copy-recursively (string-append out "/share/zoneinfo-leaps")
|
|
||||||
(string-append out "/share/zoneinfo/right"))
|
|
||||||
(delete-file-recursively
|
|
||||||
(string-append out "/share/zoneinfo-leaps")))))
|
|
||||||
(delete 'configure))))
|
|
||||||
(inputs `(("tzcode" ,(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append
|
|
||||||
"http://www.iana.org/time-zones/repository/releases/tzcode"
|
|
||||||
version ".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1dvrq0b2hz7cjqdyd7x21wpy4qcng3rvysr61ij0c2g64fyb9s41")))))))))
|
|
||||||
|
|
||||||
(define-public libiconv
|
(define-public libiconv
|
||||||
(package
|
(package
|
||||||
|
@ -1237,9 +1211,11 @@ and daylight-saving rules.")
|
||||||
(snippet
|
(snippet
|
||||||
;; Work around "declared gets" error on glibc systems (fixed by
|
;; Work around "declared gets" error on glibc systems (fixed by
|
||||||
;; Gnulib commit 66712c23388e93e5c518ebc8515140fa0c807348.)
|
;; Gnulib commit 66712c23388e93e5c518ebc8515140fa0c807348.)
|
||||||
'(substitute* "srclib/stdio.in.h"
|
'(begin
|
||||||
(("^#undef gets") "")
|
(substitute* "srclib/stdio.in.h"
|
||||||
(("^_GL_WARN_ON_USE \\(gets.*") "")))))
|
(("^#undef gets") "")
|
||||||
|
(("^_GL_WARN_ON_USE \\(gets.*") ""))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(synopsis "Character set conversion library")
|
(synopsis "Character set conversion library")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
@ -72,7 +72,14 @@
|
||||||
(9 "0g1l56kvw61rpw7dqa9fcl9llkl693h73g631hrhxlm030ddssqb")
|
(9 "0g1l56kvw61rpw7dqa9fcl9llkl693h73g631hrhxlm030ddssqb")
|
||||||
(10 "01lfhrkdsdkdz8ypzapr614ras23x7ckjnr60aa5bzkaqprccrc4")
|
(10 "01lfhrkdsdkdz8ypzapr614ras23x7ckjnr60aa5bzkaqprccrc4")
|
||||||
(11 "038p7mhnq9m65g505hi3827jkf9f35nd1cy00w8mwafpyxp44mnx")
|
(11 "038p7mhnq9m65g505hi3827jkf9f35nd1cy00w8mwafpyxp44mnx")
|
||||||
(12 "0gh6lbb1rwpk44pvbamm6vzdfi50xnwkqd9v7s8cjwk3pz973hps")))
|
(12 "0gh6lbb1rwpk44pvbamm6vzdfi50xnwkqd9v7s8cjwk3pz973hps")
|
||||||
|
(13 "1djkx0w9v62q78gz3jsvamj1jq53i6hbfrfhhsw86ihwpjnfy98v")
|
||||||
|
(14 "0z5ikcq9zyxw79d0z36r5p0mspnb5piavbv03jmlan1wnknmrxx7")
|
||||||
|
(15 "09n307fi1j257abhm295k6ksmnzw47ka2zhnr0i5lbdnpvn04xnk")
|
||||||
|
(16 "1cgi1y6mifm8hsgv4avj5ih76535js3qba1sqwbfvp7si76927sh")
|
||||||
|
(17 "0w6jpj2giakji1ir83rpkx1y7n7xqppah3j748m6dm38hywr0gvp")
|
||||||
|
(18 "1k58h4wxbsg7r4rwhrvzx5hfbapba2nxjysbhh6qp6ki5ys99i2v")
|
||||||
|
(19 "07n1i5610lbs672x1s8g82qn3qfj06s0ip3z80sri0g8vxp0s5r7")))
|
||||||
|
|
||||||
(define (download-patches store count)
|
(define (download-patches store count)
|
||||||
"Download COUNT Bash patches into store. Return a list of
|
"Download COUNT Bash patches into store. Return a list of
|
||||||
|
@ -93,9 +100,7 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
|
||||||
1))
|
1))
|
||||||
|
|
||||||
(define-public bash
|
(define-public bash
|
||||||
(let* ((cppflags (string-join '("-DSYS_BASHRC='\"/etc/bashrc\"'"
|
(let* ((cppflags (string-join '("-DDEFAULT_PATH_VALUE='\"/no-such-path\"'"
|
||||||
"-DSYS_BASH_LOGOUT='\"/etc/bash_logout\"'"
|
|
||||||
"-DDEFAULT_PATH_VALUE='\"/no-such-path\"'"
|
|
||||||
"-DSTANDARD_UTILS_PATH='\"/no-such-path\"'"
|
"-DSTANDARD_UTILS_PATH='\"/no-such-path\"'"
|
||||||
"-DNON_INTERACTIVE_LOGIN_SHELLS"
|
"-DNON_INTERACTIVE_LOGIN_SHELLS"
|
||||||
"-DSSH_SOURCE_BASHRC")
|
"-DSSH_SOURCE_BASHRC")
|
||||||
|
@ -160,7 +165,8 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
|
||||||
;; Add a `sh' -> `bash' link.
|
;; Add a `sh' -> `bash' link.
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(with-directory-excursion (string-append out "/bin")
|
(with-directory-excursion (string-append out "/bin")
|
||||||
(symlink "bash" "sh")))))
|
(symlink "bash" "sh")
|
||||||
|
#t))))
|
||||||
|
|
||||||
(add-after 'install 'move-development-files
|
(add-after 'install 'move-development-files
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -30,14 +30,14 @@
|
||||||
(define-public libgc
|
(define-public libgc
|
||||||
(package
|
(package
|
||||||
(name "libgc")
|
(name "libgc")
|
||||||
(version "7.6.0")
|
(version "7.6.4")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://www.hboehm.info/gc/gc_source/gc-"
|
(uri (string-append "http://www.hboehm.info/gc/gc_source/gc-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"143x7g0d0k6250ai6m2x3l4y352mzizi4wbgrmahxscv2aqjhjm1"))))
|
"076dzsqqyxd3nlzs0z277vvhqjp8nv5dqi763s0m90zr6ljiyk5r"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
|
@ -91,7 +91,7 @@ C or C++ programs, though that is not its primary goal.")
|
||||||
(define-public libatomic-ops
|
(define-public libatomic-ops
|
||||||
(package
|
(package
|
||||||
(name "libatomic-ops")
|
(name "libatomic-ops")
|
||||||
(version "7.4.8")
|
(version "7.6.4")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -99,13 +99,13 @@ C or C++ programs, though that is not its primary goal.")
|
||||||
version "/libatomic_ops-" version ".tar.gz"))
|
version "/libatomic_ops-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0sj3plzpbqgxrqpjq3w2zi3zxxqqps71ncdwk5s1k30i9d9da1f4"))))
|
"0knxncsjhbknlyy6lx7ycxhpzfk3sykhvicgxyp0rmsxd1d3v0jv"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(outputs '("out" "debug"))
|
(outputs '("out" "debug"))
|
||||||
(synopsis "Accessing hardware atomic memory update operations")
|
(synopsis "Accessing hardware atomic memory update operations")
|
||||||
(description
|
(description
|
||||||
"This C library provides semi-portable access to hardware-provided atomic
|
"This C library provides semi-portable access to hardware-provided atomic
|
||||||
memory update operations on a number architectures. These might allow you to
|
memory update operations on a number of architectures. These might allow you to
|
||||||
write code that does more interesting things in signal handlers, write
|
write code that does more interesting things in signal handlers, write
|
||||||
lock-free code, experiment with thread programming paradigms, etc.")
|
lock-free code, experiment with thread programming paradigms, etc.")
|
||||||
(home-page "https://github.com/ivmai/libatomic_ops/")
|
(home-page "https://github.com/ivmai/libatomic_ops/")
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
|
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -28,17 +29,49 @@
|
||||||
#:use-module (gnu packages statistics)
|
#:use-module (gnu packages statistics)
|
||||||
#:use-module (gnu packages bioinformatics))
|
#:use-module (gnu packages bioinformatics))
|
||||||
|
|
||||||
|
(define-public r-bsgenome-dmelanogaster-ucsc-dm6
|
||||||
|
(package
|
||||||
|
(name "r-bsgenome-dmelanogaster-ucsc-dm6")
|
||||||
|
(version "1.4.1")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
;; We cannot use bioconductor-uri here because this tarball is
|
||||||
|
;; located under "data/annotation/" instead of "bioc/".
|
||||||
|
(uri (string-append "https://www.bioconductor.org/packages/"
|
||||||
|
"release/data/annotation/src/contrib/"
|
||||||
|
"BSgenome.Dmelanogaster.UCSC.dm6_"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1bhj0rdgf7lspw4xby9y9mf7v7jxxz8001bc8vw8kf04rjsx6060"))))
|
||||||
|
(properties
|
||||||
|
`((upstream-name . "BSgenome.Dmelanogaster.UCSC.dm6")))
|
||||||
|
(build-system r-build-system)
|
||||||
|
;; As this package provides little more than a very large data file it
|
||||||
|
;; doesn't make sense to build substitutes.
|
||||||
|
(arguments `(#:substitutable? #f))
|
||||||
|
(propagated-inputs
|
||||||
|
`(("r-bsgenome" ,r-bsgenome)))
|
||||||
|
(home-page
|
||||||
|
"https://www.bioconductor.org/packages/BSgenome.Dmelanogaster.UCSC.dm6/")
|
||||||
|
(synopsis "Full genome sequences for Fly")
|
||||||
|
(description
|
||||||
|
"This package provides full genome sequences for Drosophila
|
||||||
|
melanogaster (Fly) as provided by UCSC (dm6) and stored in Biostrings
|
||||||
|
objects.")
|
||||||
|
(license license:artistic2.0)))
|
||||||
|
|
||||||
(define-public r-hpar
|
(define-public r-hpar
|
||||||
(package
|
(package
|
||||||
(name "r-hpar")
|
(name "r-hpar")
|
||||||
(version "1.20.0")
|
(version "1.22.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "hpar" version))
|
(uri (bioconductor-uri "hpar" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0s5v79mgxdx862v1jrdf5pdap81nz5vjx25ni8s3sl97ldckf6j8"))))
|
"1b72hvzasf6q739gmx6jblbzzyq22l7crrkbbfkihv3v7s94g388"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://bioconductor.org/packages/hpar/")
|
(home-page "https://bioconductor.org/packages/hpar/")
|
||||||
(synopsis "Human Protein Atlas in R")
|
(synopsis "Human Protein Atlas in R")
|
||||||
|
@ -49,14 +82,14 @@ the Human Protein Atlas project.")
|
||||||
(define-public r-regioner
|
(define-public r-regioner
|
||||||
(package
|
(package
|
||||||
(name "r-regioner")
|
(name "r-regioner")
|
||||||
(version "1.10.0")
|
(version "1.12.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "regioneR" version))
|
(uri (bioconductor-uri "regioneR" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1vprp3l929hwzmvgskbhawfgnrymwc9n2rxd16rgagnv1dxnjxfp"))))
|
"09bzlaqdgy7wmzly3zc9y2da50d07mlixlnpaxdxpiwdk8qmhxsb"))))
|
||||||
(properties `((upstream-name . "regioneR")))
|
(properties `((upstream-name . "regioneR")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -65,7 +98,8 @@ the Human Protein Atlas project.")
|
||||||
("r-bsgenome" ,r-bsgenome)
|
("r-bsgenome" ,r-bsgenome)
|
||||||
("r-rtracklayer" ,r-rtracklayer)
|
("r-rtracklayer" ,r-rtracklayer)
|
||||||
("r-genomeinfodb" ,r-genomeinfodb)
|
("r-genomeinfodb" ,r-genomeinfodb)
|
||||||
("r-iranges" ,r-iranges)))
|
("r-iranges" ,r-iranges)
|
||||||
|
("r-s4vectors" ,r-s4vectors)))
|
||||||
(home-page "https://bioconductor.org/packages/regioneR/")
|
(home-page "https://bioconductor.org/packages/regioneR/")
|
||||||
(synopsis "Association analysis of genomic regions")
|
(synopsis "Association analysis of genomic regions")
|
||||||
(description "This package offers a statistical framework based on
|
(description "This package offers a statistical framework based on
|
||||||
|
@ -76,14 +110,14 @@ region sets and other genomic features.")
|
||||||
(define-public r-diffbind
|
(define-public r-diffbind
|
||||||
(package
|
(package
|
||||||
(name "r-diffbind")
|
(name "r-diffbind")
|
||||||
(version "2.6.6")
|
(version "2.8.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "DiffBind" version))
|
(uri (bioconductor-uri "DiffBind" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1sm5h6nq77hjfis6kr1nqyizcxgfz87dgpqc4fxlfqkmsd9n3vkp"))))
|
"1w1hybzd732ccg3q8zhirwfilq8sx3frv1x98zfyj3svzw98fish"))))
|
||||||
(properties `((upstream-name . "DiffBind")))
|
(properties `((upstream-name . "DiffBind")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -95,6 +129,8 @@ region sets and other genomic features.")
|
||||||
("r-dplyr" ,r-dplyr)
|
("r-dplyr" ,r-dplyr)
|
||||||
("r-edger" ,r-edger)
|
("r-edger" ,r-edger)
|
||||||
("r-genomicalignments" ,r-genomicalignments)
|
("r-genomicalignments" ,r-genomicalignments)
|
||||||
|
("r-genomicranges" ,r-genomicranges)
|
||||||
|
("r-ggplot2" ,r-ggplot2)
|
||||||
("r-ggrepel" ,r-ggrepel)
|
("r-ggrepel" ,r-ggrepel)
|
||||||
("r-gplots" ,r-gplots)
|
("r-gplots" ,r-gplots)
|
||||||
("r-iranges" ,r-iranges)
|
("r-iranges" ,r-iranges)
|
||||||
|
@ -105,6 +141,7 @@ region sets and other genomic features.")
|
||||||
("r-rcpp" ,r-rcpp)
|
("r-rcpp" ,r-rcpp)
|
||||||
("r-rsamtools" ,r-rsamtools)
|
("r-rsamtools" ,r-rsamtools)
|
||||||
("r-s4vectors" ,r-s4vectors)
|
("r-s4vectors" ,r-s4vectors)
|
||||||
|
("r-summarizedexperiment" ,r-summarizedexperiment)
|
||||||
("r-systempiper" ,r-systempiper)
|
("r-systempiper" ,r-systempiper)
|
||||||
("r-zlibbioc" ,r-zlibbioc)))
|
("r-zlibbioc" ,r-zlibbioc)))
|
||||||
(home-page "http://bioconductor.org/packages/DiffBind")
|
(home-page "http://bioconductor.org/packages/DiffBind")
|
||||||
|
@ -118,14 +155,14 @@ occupancy (overlap) analysis and plotting functions.")
|
||||||
(define-public r-ripseeker
|
(define-public r-ripseeker
|
||||||
(package
|
(package
|
||||||
(name "r-ripseeker")
|
(name "r-ripseeker")
|
||||||
(version "1.18.0")
|
(version "1.20.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "RIPSeeker" version))
|
(uri (bioconductor-uri "RIPSeeker" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0bqkzwrncww7il36273chkd3gfxmii7p566ycki9qij419pwr35y"))))
|
"0y9cvzqslfxj3z9mnp47mknff0pky2g5x8x1z1s5yjcx35q89xfi"))))
|
||||||
(properties `((upstream-name . "RIPSeeker")))
|
(properties `((upstream-name . "RIPSeeker")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -151,14 +188,14 @@ processing to visualization and annotation.")
|
||||||
(define-public r-multtest
|
(define-public r-multtest
|
||||||
(package
|
(package
|
||||||
(name "r-multtest")
|
(name "r-multtest")
|
||||||
(version "2.34.0")
|
(version "2.36.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "multtest" version))
|
(uri (bioconductor-uri "multtest" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0n11rd49xl2vn3ldmfips7d3yb70l8npjcqsxyswr9ypjhgzkv9j"))))
|
"11949h2kglw13x8haaj4clg4jim1mwh5n98n9zxp9mmgn01z1lp0"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-survival" ,r-survival)
|
`(("r-survival" ,r-survival)
|
||||||
|
@ -189,23 +226,27 @@ expressed genes in DNA microarray experiments.")
|
||||||
(define-public r-chippeakanno
|
(define-public r-chippeakanno
|
||||||
(package
|
(package
|
||||||
(name "r-chippeakanno")
|
(name "r-chippeakanno")
|
||||||
(version "3.12.7")
|
(version "3.14.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "ChIPpeakAnno" version))
|
(uri (bioconductor-uri "ChIPpeakAnno" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1zab489d7a6bh6ylc68x6yn47gdkmr7p3677grx9l2qafrryjr04"))))
|
"1kcnc3cnmrhdk1x7q3y6zsz09pgd3xn9xy1hfbxz48cajlb18ad0"))))
|
||||||
(properties `((upstream-name . "ChIPpeakAnno")))
|
(properties `((upstream-name . "ChIPpeakAnno")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-biocgenerics" ,r-biocgenerics)
|
`(("r-biocgenerics" ,r-biocgenerics)
|
||||||
|
("r-biostrings" ,r-biostrings)
|
||||||
|
("r-delayedarray" ,r-delayedarray)
|
||||||
("r-go-db" ,r-go-db)
|
("r-go-db" ,r-go-db)
|
||||||
("r-biomart" ,r-biomart)
|
("r-biomart" ,r-biomart)
|
||||||
("r-bsgenome" ,r-bsgenome)
|
("r-bsgenome" ,r-bsgenome)
|
||||||
("r-genomicfeatures" ,r-genomicfeatures)
|
("r-genomicfeatures" ,r-genomicfeatures)
|
||||||
|
("r-genomicranges" ,r-genomicranges)
|
||||||
("r-genomeinfodb" ,r-genomeinfodb)
|
("r-genomeinfodb" ,r-genomeinfodb)
|
||||||
|
("r-iranges" ,r-iranges)
|
||||||
("r-matrixstats" ,r-matrixstats)
|
("r-matrixstats" ,r-matrixstats)
|
||||||
("r-annotationdbi" ,r-annotationdbi)
|
("r-annotationdbi" ,r-annotationdbi)
|
||||||
("r-limma" ,r-limma)
|
("r-limma" ,r-limma)
|
||||||
|
@ -217,6 +258,7 @@ expressed genes in DNA microarray experiments.")
|
||||||
("r-dbi" ,r-dbi)
|
("r-dbi" ,r-dbi)
|
||||||
("r-ensembldb" ,r-ensembldb)
|
("r-ensembldb" ,r-ensembldb)
|
||||||
("r-biobase" ,r-biobase)
|
("r-biobase" ,r-biobase)
|
||||||
|
("r-s4vectors" ,r-s4vectors)
|
||||||
("r-seqinr" ,r-seqinr)
|
("r-seqinr" ,r-seqinr)
|
||||||
("r-idr" ,r-idr)
|
("r-idr" ,r-idr)
|
||||||
("r-genomicalignments" ,r-genomicalignments)
|
("r-genomicalignments" ,r-genomicalignments)
|
||||||
|
@ -239,16 +281,15 @@ enrichedGO (addGeneIDs).")
|
||||||
(define-public r-marray
|
(define-public r-marray
|
||||||
(package
|
(package
|
||||||
(name "r-marray")
|
(name "r-marray")
|
||||||
(version "1.56.0")
|
(version "1.58.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "marray" version))
|
(uri (bioconductor-uri "marray" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "14c93i86yc7jn4ax8p4l0z6v9xisw1bv7gzb4a0gbxhxn7mddaic"))))
|
(base32 "0539flh3y1qy5b1bamkfwbskis765c5s33v1y9j51n33mxb9h08d"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-biobase" ,r-biobase)
|
`(("r-limma" ,r-limma)))
|
||||||
("r-limma" ,r-limma)))
|
|
||||||
(home-page "http://bioconductor.org/packages/marray")
|
(home-page "http://bioconductor.org/packages/marray")
|
||||||
(synopsis "Exploratory analysis for two-color spotted microarray data")
|
(synopsis "Exploratory analysis for two-color spotted microarray data")
|
||||||
(description "This package contains class definitions for two-color spotted
|
(description "This package contains class definitions for two-color spotted
|
||||||
|
@ -259,12 +300,12 @@ normalization and quality checking.")
|
||||||
(define-public r-cghbase
|
(define-public r-cghbase
|
||||||
(package
|
(package
|
||||||
(name "r-cghbase")
|
(name "r-cghbase")
|
||||||
(version "1.38.0")
|
(version "1.40.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "CGHbase" version))
|
(uri (bioconductor-uri "CGHbase" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0fynvcsjdbgp69i0nxrc8ni58rhb1kx9k5r3nb91n9i8s43gjqlm"))))
|
(base32 "1hf44vma3kgwr61kjbszvfxkava8bjqnam1mdncqvczbypb2xwaq"))))
|
||||||
(properties `((upstream-name . "CGHbase")))
|
(properties `((upstream-name . "CGHbase")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -279,12 +320,12 @@ the @code{arrayCGH} packages.")
|
||||||
(define-public r-cghcall
|
(define-public r-cghcall
|
||||||
(package
|
(package
|
||||||
(name "r-cghcall")
|
(name "r-cghcall")
|
||||||
(version "2.40.0")
|
(version "2.42.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "CGHcall" version))
|
(uri (bioconductor-uri "CGHcall" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "11pi6awz3858yb4s0z3qf3kcmsdgp6d4aj41g4lfix1sv5amllch"))))
|
(base32 "0y71vfxv9x0am3xvv520yr95cb7m7y92dhdx1vkqki80jrmf12dz"))))
|
||||||
(properties `((upstream-name . "CGHcall")))
|
(properties `((upstream-name . "CGHcall")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -302,16 +343,17 @@ the @code{arrayCGH} packages.")
|
||||||
(define-public r-qdnaseq
|
(define-public r-qdnaseq
|
||||||
(package
|
(package
|
||||||
(name "r-qdnaseq")
|
(name "r-qdnaseq")
|
||||||
(version "1.14.0")
|
(version "1.16.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "QDNAseq" version))
|
(uri (bioconductor-uri "QDNAseq" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "0lgbv4s0xqgrs7q6ynb3c273sf7pyrp51jnc8ravq1z5g0a2zshy"))))
|
(base32 "1pj69mfyxwfd0d7h4kls9xq96sdc55y3rv20qpla50hw9libcwwd"))))
|
||||||
(properties `((upstream-name . "QDNAseq")))
|
(properties `((upstream-name . "QDNAseq")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-biobase" ,r-biobase)
|
`(("r-biobase" ,r-biobase)
|
||||||
|
("r-biocparallel" ,r-biocparallel)
|
||||||
("r-cghbase" ,r-cghbase)
|
("r-cghbase" ,r-cghbase)
|
||||||
("r-cghcall" ,r-cghcall)
|
("r-cghcall" ,r-cghcall)
|
||||||
("r-dnacopy" ,r-dnacopy)
|
("r-dnacopy" ,r-dnacopy)
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -3,7 +3,7 @@
|
||||||
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2016 Tomáš Čech <sleep_walker@gnu.org>
|
;;; Copyright © 2016 Tomáš Čech <sleep_walker@gnu.org>
|
||||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
|
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
|
||||||
|
@ -62,7 +62,7 @@
|
||||||
(define-public transmission
|
(define-public transmission
|
||||||
(package
|
(package
|
||||||
(name "transmission")
|
(name "transmission")
|
||||||
(version "2.93")
|
(version "2.94")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -70,7 +70,7 @@
|
||||||
"master/transmission-" version ".tar.xz"))
|
"master/transmission-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"02xrp49gsv4jkbzp37qrwlnb9nlja08s92dyvgdbr6a4187945c8"))))
|
"0zbbj7rlm6m7vb64x68a64cwmijhsrwx9l63hbwqs7zr9742qi1m"))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system glib-or-gtk-build-system)
|
||||||
(outputs '("out" ; library and command-line interface
|
(outputs '("out" ; library and command-line interface
|
||||||
"gui")) ; graphical user interface
|
"gui")) ; graphical user interface
|
||||||
|
@ -257,7 +257,7 @@ maintained upstream.")
|
||||||
(define-public aria2
|
(define-public aria2
|
||||||
(package
|
(package
|
||||||
(name "aria2")
|
(name "aria2")
|
||||||
(version "1.33.1")
|
(version "1.34.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://github.com/tatsuhiro-t/aria2/"
|
(uri (string-append "https://github.com/tatsuhiro-t/aria2/"
|
||||||
|
@ -265,7 +265,7 @@ maintained upstream.")
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"06syqxia701dk96rcbhnd4x0arjj6d22gm3aqksz38am9y2f8f95"))))
|
"18vpgr430vxlwbcc3598rr1srfmwypls6wp1m4wf21hncc1ahi1s"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags (list "--enable-libaria2"
|
`(#:configure-flags (list "--enable-libaria2"
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
|
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
||||||
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
|
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -41,7 +43,7 @@
|
||||||
(define-public boost
|
(define-public boost
|
||||||
(package
|
(package
|
||||||
(name "boost")
|
(name "boost")
|
||||||
(version "1.64.0")
|
(version "1.66.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -50,7 +52,8 @@
|
||||||
".tar.bz2"))
|
".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0cikd35xfkpg9nnl76yqqnqxnf3hyfjjww8xjd4akflprsm5rk3v"))))
|
"1aaw48cmimsskzgiclwn0iifp62a5iw9cbqrhfari876af1828ap"))
|
||||||
|
(patches (search-patches "boost-fix-icu-build.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("icu4c" ,icu4c)
|
(inputs `(("icu4c" ,icu4c)
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
|
@ -65,22 +68,14 @@
|
||||||
|
|
||||||
;; Set the RUNPATH to $libdir so that the libs find each other.
|
;; Set the RUNPATH to $libdir so that the libs find each other.
|
||||||
(string-append "linkflags=-Wl,-rpath="
|
(string-append "linkflags=-Wl,-rpath="
|
||||||
(assoc-ref %outputs "out") "/lib")
|
(assoc-ref %outputs "out") "/lib"))
|
||||||
|
|
||||||
;; Boost's 'context' library is not yet supported on mips64, so
|
|
||||||
;; we disable it. The 'coroutine' library depends on 'context',
|
|
||||||
;; so we disable that too.
|
|
||||||
,@(if (string-prefix? "mips64" (or (%current-target-system)
|
|
||||||
(%current-system)))
|
|
||||||
'("--without-context"
|
|
||||||
"--without-coroutine" "--without-coroutine2")
|
|
||||||
'()))
|
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace
|
(delete 'bootstrap)
|
||||||
'configure
|
(replace 'configure
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((icu (assoc-ref inputs "icu4c"))
|
||||||
|
(out (assoc-ref outputs "out")))
|
||||||
(substitute* '("libs/config/configure"
|
(substitute* '("libs/config/configure"
|
||||||
"libs/spirit/classic/phoenix/test/runtest.sh"
|
"libs/spirit/classic/phoenix/test/runtest.sh"
|
||||||
"tools/build/doc/bjam.qbk"
|
"tools/build/doc/bjam.qbk"
|
||||||
|
@ -92,42 +87,29 @@
|
||||||
(setenv "SHELL" (which "sh"))
|
(setenv "SHELL" (which "sh"))
|
||||||
(setenv "CONFIG_SHELL" (which "sh"))
|
(setenv "CONFIG_SHELL" (which "sh"))
|
||||||
|
|
||||||
(zero? (system* "./bootstrap.sh"
|
(invoke "./bootstrap.sh"
|
||||||
(string-append "--prefix=" out)
|
(string-append "--prefix=" out)
|
||||||
"--with-toolset=gcc")))))
|
;; Auto-detection looks for ICU only in traditional
|
||||||
(replace
|
;; install locations.
|
||||||
'build
|
(string-append "--with-icu=" icu)
|
||||||
(lambda* (#:key outputs make-flags #:allow-other-keys)
|
"--with-toolset=gcc"))))
|
||||||
(zero? (apply system* "./b2"
|
(replace 'build
|
||||||
(format #f "-j~a" (parallel-job-count))
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
make-flags))))
|
(apply invoke "./b2"
|
||||||
(replace
|
(format #f "-j~a" (parallel-job-count))
|
||||||
'install
|
make-flags)))
|
||||||
(lambda* (#:key outputs make-flags #:allow-other-keys)
|
(replace 'install
|
||||||
(zero? (apply system* "./b2" "install" make-flags)))))))
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
|
(apply invoke "./b2" "install" make-flags))))))
|
||||||
|
|
||||||
(home-page "http://boost.org")
|
(home-page "https://www.boost.org")
|
||||||
(synopsis "Peer-reviewed portable C++ source libraries")
|
(synopsis "Peer-reviewed portable C++ source libraries")
|
||||||
(description
|
(description
|
||||||
"A collection of libraries intended to be widely useful, and usable
|
"A collection of libraries intended to be widely useful, and usable
|
||||||
across a broad spectrum of applications.")
|
across a broad spectrum of applications.")
|
||||||
(license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt"
|
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
|
||||||
"Some components have other similar licences."))))
|
"Some components have other similar licences."))))
|
||||||
|
|
||||||
(define-public boost-1.66
|
|
||||||
(package
|
|
||||||
(inherit boost)
|
|
||||||
(version "1.66.0")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append
|
|
||||||
"mirror://sourceforge/boost/boost/" version "/boost_"
|
|
||||||
(string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)
|
|
||||||
".tar.bz2"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1aaw48cmimsskzgiclwn0iifp62a5iw9cbqrhfari876af1828ap"))))))
|
|
||||||
|
|
||||||
(define-public boost-sync
|
(define-public boost-sync
|
||||||
(let ((commit "c72891d9b90e2ceb466ec859f640cd012b2d8709")
|
(let ((commit "c72891d9b90e2ceb466ec859f640cd012b2d8709")
|
||||||
(version "1.55")
|
(version "1.55")
|
||||||
|
@ -158,7 +140,7 @@ across a broad spectrum of applications.")
|
||||||
(description "The Boost.Sync library provides mutexes, semaphores, locks
|
(description "The Boost.Sync library provides mutexes, semaphores, locks
|
||||||
and events and other thread related facilities. Boost.Sync originated from
|
and events and other thread related facilities. Boost.Sync originated from
|
||||||
Boost.Thread.")
|
Boost.Thread.")
|
||||||
(license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt")))))
|
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt")))))
|
||||||
|
|
||||||
(define-public mdds
|
(define-public mdds
|
||||||
(package
|
(package
|
||||||
|
|
|
@ -33,6 +33,7 @@
|
||||||
#:use-module (gnu packages disk)
|
#:use-module (gnu packages disk)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages cdrom)
|
#:use-module (gnu packages cdrom)
|
||||||
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages cross-base)
|
#:use-module (gnu packages cross-base)
|
||||||
#:use-module (gnu packages disk)
|
#:use-module (gnu packages disk)
|
||||||
#:use-module (gnu packages firmware)
|
#:use-module (gnu packages firmware)
|
||||||
|
@ -49,6 +50,7 @@
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages texinfo)
|
#:use-module (gnu packages texinfo)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
|
#:use-module (gnu packages sdl)
|
||||||
#:use-module (gnu packages swig)
|
#:use-module (gnu packages swig)
|
||||||
#:use-module (gnu packages virtualization)
|
#:use-module (gnu packages virtualization)
|
||||||
#:use-module (gnu packages web)
|
#:use-module (gnu packages web)
|
||||||
|
@ -338,7 +340,7 @@ tree binary files. These are board description files used by Linux and BSD.")
|
||||||
(define u-boot
|
(define u-boot
|
||||||
(package
|
(package
|
||||||
(name "u-boot")
|
(name "u-boot")
|
||||||
(version "2018.01")
|
(version "2018.05")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -346,11 +348,15 @@ tree binary files. These are board description files used by Linux and BSD.")
|
||||||
"u-boot-" version ".tar.bz2"))
|
"u-boot-" version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1nidnnjprgxdhiiz7gmaj8cgcf52l5gbv64cmzjq4gmkjirmk3wk"))))
|
"0j60p4iskzb4hamxgykc6gd7xchxfka1zwh8hv08r9rrc4m3r8ad"))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("bc" ,bc)
|
`(("bc" ,bc)
|
||||||
;("dtc" ,dtc) ; they have their own incompatible copy.
|
("dtc" ,dtc)
|
||||||
|
("openssl" ,openssl)
|
||||||
("python-2" ,python-2)
|
("python-2" ,python-2)
|
||||||
|
("python2-coverage" ,python2-coverage)
|
||||||
|
("python2-pytest" ,python2-pytest)
|
||||||
|
("sdl" ,sdl)
|
||||||
("swig" ,swig)))
|
("swig" ,swig)))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://www.denx.de/wiki/U-Boot/")
|
(home-page "http://www.denx.de/wiki/U-Boot/")
|
||||||
|
@ -359,6 +365,80 @@ tree binary files. These are board description files used by Linux and BSD.")
|
||||||
also initializes the boards (RAM etc).")
|
also initializes the boards (RAM etc).")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public u-boot-tools
|
||||||
|
(package
|
||||||
|
(inherit u-boot)
|
||||||
|
(name "u-boot-tools")
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags '("HOSTCC=gcc")
|
||||||
|
#:test-target "tests"
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'patch
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(substitute* "Makefile"
|
||||||
|
(("/bin/pwd") (which "pwd"))
|
||||||
|
(("/bin/false") (which "false")))
|
||||||
|
(substitute* "tools/dtoc/fdt_util.py"
|
||||||
|
(("'cc'") "'gcc'"))
|
||||||
|
(substitute* "test/run"
|
||||||
|
;; Make it easier to find test failures.
|
||||||
|
(("#!/bin/bash") "#!/bin/bash -x")
|
||||||
|
;; pytest doesn't find it otherwise.
|
||||||
|
(("test/py/tests/test_ofplatdata.py")
|
||||||
|
"tests/test_ofplatdata.py")
|
||||||
|
;; This test would require git.
|
||||||
|
(("\\./tools/patman/patman") (which "true"))
|
||||||
|
;; This test would require internet access.
|
||||||
|
(("\\./tools/buildman/buildman") (which "true")))
|
||||||
|
(substitute* "test/py/tests/test_sandbox_exit.py"
|
||||||
|
(("def test_ctrl_c")
|
||||||
|
"@pytest.mark.skip(reason='Guix has problems with SIGINT')
|
||||||
|
def test_ctrl_c"))
|
||||||
|
(substitute* "tools/binman/binman.py"
|
||||||
|
(("100%") "99%")) ; TODO: Find out why that is needed.
|
||||||
|
#t))
|
||||||
|
(replace 'configure
|
||||||
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
|
(call-with-output-file "configs/tools_defconfig"
|
||||||
|
(lambda (port)
|
||||||
|
(display "CONFIG_SYS_TEXT_BASE=0\n" port)))
|
||||||
|
(apply invoke "make" "tools_defconfig" make-flags)))
|
||||||
|
(replace 'build
|
||||||
|
(lambda* (#:key inputs make-flags #:allow-other-keys)
|
||||||
|
(apply invoke "make" "tools-only" make-flags)
|
||||||
|
(apply invoke "make" "envtools" make-flags)))
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bin (string-append out "/bin")))
|
||||||
|
(for-each (lambda (name)
|
||||||
|
(install-file name bin))
|
||||||
|
'("tools/netconsole"
|
||||||
|
"tools/jtagconsole"
|
||||||
|
"tools/gen_eth_addr"
|
||||||
|
"tools/gen_ethaddr_crc"
|
||||||
|
"tools/img2srec"
|
||||||
|
"tools/mkenvimage"
|
||||||
|
"tools/dumpimage"
|
||||||
|
"tools/mkimage"
|
||||||
|
"tools/proftool"
|
||||||
|
"tools/fdtgrep"
|
||||||
|
"tools/env/fw_printenv"))
|
||||||
|
#t)))
|
||||||
|
(delete 'check)
|
||||||
|
(add-after 'install 'check
|
||||||
|
(lambda* (#:key make-flags test-target #:allow-other-keys)
|
||||||
|
(apply invoke "make" "mrproper" make-flags)
|
||||||
|
(setenv "SDL_VIDEODRIVER" "dummy")
|
||||||
|
(setenv "PAGER" "cat")
|
||||||
|
(apply invoke "make" test-target make-flags)
|
||||||
|
(symlink "build-sandbox_spl" "sandbox")
|
||||||
|
(invoke "test/image/test-imagetools.sh"))))))
|
||||||
|
(description "U-Boot is a bootloader used mostly for ARM boards. It
|
||||||
|
also initializes the boards (RAM etc). This package provides its
|
||||||
|
board-independent tools.")))
|
||||||
|
|
||||||
(define (make-u-boot-package board triplet)
|
(define (make-u-boot-package board triplet)
|
||||||
"Returns a u-boot package for BOARD cross-compiled for TRIPLET."
|
"Returns a u-boot package for BOARD cross-compiled for TRIPLET."
|
||||||
(let ((same-arch? (if (string-prefix? (%current-system)
|
(let ((same-arch? (if (string-prefix? (%current-system)
|
||||||
|
@ -392,25 +472,29 @@ also initializes the boards (RAM etc).")
|
||||||
(if (file-exists? (string-append "configs/" config-name))
|
(if (file-exists? (string-append "configs/" config-name))
|
||||||
(zero? (apply system* "make" `(,@make-flags ,config-name)))
|
(zero? (apply system* "make" `(,@make-flags ,config-name)))
|
||||||
(begin
|
(begin
|
||||||
(display "Invalid board name. Valid board names are:")
|
(display "Invalid board name. Valid board names are:"
|
||||||
(let ((suffix-len (string-length "_defconfig")))
|
(current-error-port))
|
||||||
(scandir "configs"
|
(let ((suffix-len (string-length "_defconfig"))
|
||||||
(lambda (file-name)
|
(entries (scandir "configs")))
|
||||||
(when (string-suffix? "_defconfig" file-name)
|
(for-each (lambda (file-name)
|
||||||
(format #t
|
(when (string-suffix? "_defconfig" file-name)
|
||||||
"- ~A\n"
|
(format (current-error-port)
|
||||||
(string-drop-right file-name
|
"- ~A\n"
|
||||||
suffix-len))))))
|
(string-drop-right file-name
|
||||||
|
suffix-len))))
|
||||||
|
(sort entries string-ci<)))
|
||||||
#f)))))
|
#f)))))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(libexec (string-append out "/libexec"))
|
(libexec (string-append out "/libexec"))
|
||||||
(uboot-files (append
|
(uboot-files (append
|
||||||
(find-files "." ".*\\.(bin|efi|img|spl|itb|dtb)$")
|
(find-files "." ".*\\.(bin|efi|img|spl|itb|dtb|rksd)$")
|
||||||
(find-files "." "^(MLO|SPL)$"))))
|
(find-files "." "^(MLO|SPL)$"))))
|
||||||
(mkdir-p libexec)
|
(mkdir-p libexec)
|
||||||
(install-file ".config" libexec)
|
(install-file ".config" libexec)
|
||||||
|
;; Useful for "qemu -kernel".
|
||||||
|
(install-file "u-boot" libexec)
|
||||||
(for-each
|
(for-each
|
||||||
(lambda (file)
|
(lambda (file)
|
||||||
(let ((target-file (string-append libexec "/" file)))
|
(let ((target-file (string-append libexec "/" file)))
|
||||||
|
@ -440,9 +524,10 @@ also initializes the boards (RAM etc).")
|
||||||
(let ((bl31 (string-append (assoc-ref inputs "firmware")
|
(let ((bl31 (string-append (assoc-ref inputs "firmware")
|
||||||
"/bl31.bin")))
|
"/bl31.bin")))
|
||||||
(setenv "BL31" bl31)
|
(setenv "BL31" bl31)
|
||||||
;; This is necessary while we're using the bundled dtc.
|
;; This is necessary when we're using the bundled dtc.
|
||||||
(setenv "PATH" (string-append (getenv "PATH") ":"
|
;(setenv "PATH" (string-append (getenv "PATH") ":"
|
||||||
"scripts/dtc")))
|
; "scripts/dtc"))
|
||||||
|
)
|
||||||
#t))))))
|
#t))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("firmware" ,arm-trusted-firmware-pine64-plus)
|
`(("firmware" ,arm-trusted-firmware-pine64-plus)
|
||||||
|
@ -469,6 +554,43 @@ also initializes the boards (RAM etc).")
|
||||||
(define-public u-boot-mx6cuboxi
|
(define-public u-boot-mx6cuboxi
|
||||||
(make-u-boot-package "mx6cuboxi" "arm-linux-gnueabihf"))
|
(make-u-boot-package "mx6cuboxi" "arm-linux-gnueabihf"))
|
||||||
|
|
||||||
|
(define-public u-boot-novena
|
||||||
|
(make-u-boot-package "novena" "arm-linux-gnueabihf"))
|
||||||
|
|
||||||
|
(define-public u-boot-cubieboard
|
||||||
|
(make-u-boot-package "Cubieboard" "arm-linux-gnueabihf"))
|
||||||
|
|
||||||
|
(define-public u-boot-puma-rk3399
|
||||||
|
(let ((base (make-u-boot-package "puma-rk3399" "aarch64-linux-gnu")))
|
||||||
|
(package
|
||||||
|
(inherit base)
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments base)
|
||||||
|
((#:phases phases)
|
||||||
|
`(modify-phases ,phases
|
||||||
|
(add-after 'unpack 'set-environment
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
;; Need to copy the firmware into u-boot build
|
||||||
|
;; directory.
|
||||||
|
(copy-file (string-append (assoc-ref inputs "firmware")
|
||||||
|
"/bl31.bin") "bl31-rk3399.bin")
|
||||||
|
(copy-file (string-append (assoc-ref inputs "firmware-m0")
|
||||||
|
"/rk3399m0.bin") "rk3399m0.bin")
|
||||||
|
#t))
|
||||||
|
(add-after 'build 'build-itb
|
||||||
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
|
;; The u-boot.itb is not built by default.
|
||||||
|
(apply invoke "make" `(,@make-flags ,"u-boot.itb"))))
|
||||||
|
(add-after 'build-itb 'build-rksd
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
;; Build Rockchip SD card images.
|
||||||
|
(invoke "./tools/mkimage" "-T" "rksd" "-n" "rk3399" "-d"
|
||||||
|
"spl/u-boot-spl.bin" "u-boot-spl.rksd")))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("firmware" ,arm-trusted-firmware-puma-rk3399)
|
||||||
|
("firmware-m0" ,rk3399-cortex-m0)
|
||||||
|
,@(package-native-inputs base))))))
|
||||||
|
|
||||||
(define-public vboot-utils
|
(define-public vboot-utils
|
||||||
(package
|
(package
|
||||||
(name "vboot-utils")
|
(name "vboot-utils")
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -97,10 +97,10 @@
|
||||||
(define* (package-from-tarball name source program-to-test description
|
(define* (package-from-tarball name source program-to-test description
|
||||||
#:key snippet)
|
#:key snippet)
|
||||||
"Return a package that correspond to the extraction of SOURCE.
|
"Return a package that correspond to the extraction of SOURCE.
|
||||||
PROGRAM-TO-TEST is a program to run after extraction of SOURCE, to
|
PROGRAM-TO-TEST is a program to run after extraction of SOURCE, to check
|
||||||
check whether everything is alright. If SNIPPET is provided, it is
|
whether everything is alright. If SNIPPET is provided, it is evaluated after
|
||||||
evaluated after extracting SOURCE. SNIPPET should return true if
|
extracting SOURCE. SNIPPET should raise an exception to signal an error; its
|
||||||
successful, or false to signal an error."
|
return value is ignored."
|
||||||
(package
|
(package
|
||||||
(name name)
|
(name name)
|
||||||
(version "0")
|
(version "0")
|
||||||
|
@ -117,14 +117,14 @@ successful, or false to signal an error."
|
||||||
|
|
||||||
(mkdir out)
|
(mkdir out)
|
||||||
(copy-file tarball "binaries.tar.xz")
|
(copy-file tarball "binaries.tar.xz")
|
||||||
(system* xz "-d" "binaries.tar.xz")
|
(invoke xz "-d" "binaries.tar.xz")
|
||||||
(let ((builddir (getcwd)))
|
(let ((builddir (getcwd)))
|
||||||
(with-directory-excursion out
|
(with-directory-excursion out
|
||||||
(and (zero? (system* tar "xvf"
|
(invoke tar "xvf"
|
||||||
(string-append builddir "/binaries.tar")))
|
(string-append builddir "/binaries.tar"))
|
||||||
,@(if snippet (list snippet) '())
|
,@(if snippet (list snippet) '())
|
||||||
(zero? (system* (string-append "bin/" ,program-to-test)
|
(invoke (string-append "bin/" ,program-to-test)
|
||||||
"--version"))))))))
|
"--version"))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("tar" ,(search-bootstrap-binary "tar" (%current-system)))
|
`(("tar" ,(search-bootstrap-binary "tar" (%current-system)))
|
||||||
("xz" ,(search-bootstrap-binary "xz" (%current-system)))
|
("xz" ,(search-bootstrap-binary "xz" (%current-system)))
|
||||||
|
@ -389,8 +389,7 @@ $out/bin/guile --version~%"
|
||||||
(if (not (elf-file? "bin/egrep"))
|
(if (not (elf-file? "bin/egrep"))
|
||||||
(substitute* '("bin/egrep" "bin/fgrep")
|
(substitute* '("bin/egrep" "bin/fgrep")
|
||||||
(("^exec grep") (string-append (getcwd) "/bin/grep"))))
|
(("^exec grep") (string-append (getcwd) "/bin/grep"))))
|
||||||
(chmod "bin" #o555)
|
(chmod "bin" #o555))))
|
||||||
#t)))
|
|
||||||
|
|
||||||
(define %bootstrap-binutils
|
(define %bootstrap-binutils
|
||||||
(package-from-tarball "binutils-bootstrap"
|
(package-from-tarball "binutils-bootstrap"
|
||||||
|
@ -445,18 +444,20 @@ $out/bin/guile --version~%"
|
||||||
|
|
||||||
(mkdir out)
|
(mkdir out)
|
||||||
(copy-file tarball "binaries.tar.xz")
|
(copy-file tarball "binaries.tar.xz")
|
||||||
(system* xz "-d" "binaries.tar.xz")
|
(invoke xz "-d" "binaries.tar.xz")
|
||||||
(let ((builddir (getcwd)))
|
(let ((builddir (getcwd)))
|
||||||
(with-directory-excursion out
|
(with-directory-excursion out
|
||||||
(system* tar "xvf"
|
(invoke tar "xvf"
|
||||||
(string-append builddir
|
(string-append builddir
|
||||||
"/binaries.tar"))
|
"/binaries.tar"))
|
||||||
(chmod "lib" #o755)
|
(chmod "lib" #o755)
|
||||||
|
|
||||||
;; Patch libc.so so it refers to the right path.
|
;; Patch libc.so so it refers to the right path.
|
||||||
(substitute* "lib/libc.so"
|
(substitute* "lib/libc.so"
|
||||||
(("/[^ ]+/lib/(libc|ld)" _ prefix)
|
(("/[^ ]+/lib/(libc|ld)" _ prefix)
|
||||||
(string-append out "/lib/" prefix))))))))
|
(string-append out "/lib/" prefix)))
|
||||||
|
|
||||||
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("tar" ,(search-bootstrap-binary "tar" (%current-system)))
|
`(("tar" ,(search-bootstrap-binary "tar" (%current-system)))
|
||||||
("xz" ,(search-bootstrap-binary "xz" (%current-system)))
|
("xz" ,(search-bootstrap-binary "xz" (%current-system)))
|
||||||
|
@ -517,12 +518,12 @@ $out/bin/guile --version~%"
|
||||||
|
|
||||||
(mkdir out)
|
(mkdir out)
|
||||||
(copy-file tarball "binaries.tar.xz")
|
(copy-file tarball "binaries.tar.xz")
|
||||||
(system* xz "-d" "binaries.tar.xz")
|
(invoke xz "-d" "binaries.tar.xz")
|
||||||
(let ((builddir (getcwd))
|
(let ((builddir (getcwd))
|
||||||
(bindir (string-append out "/bin")))
|
(bindir (string-append out "/bin")))
|
||||||
(with-directory-excursion out
|
(with-directory-excursion out
|
||||||
(system* tar "xvf"
|
(invoke tar "xvf"
|
||||||
(string-append builddir "/binaries.tar")))
|
(string-append builddir "/binaries.tar")))
|
||||||
|
|
||||||
(with-directory-excursion bindir
|
(with-directory-excursion bindir
|
||||||
(chmod "." #o755)
|
(chmod "." #o755)
|
||||||
|
@ -537,7 +538,8 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
|
||||||
out libc libc libc
|
out libc libc libc
|
||||||
,(glibc-dynamic-linker))))
|
,(glibc-dynamic-linker))))
|
||||||
|
|
||||||
(chmod "gcc" #o555))))))
|
(chmod "gcc" #o555)
|
||||||
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("tar" ,(search-bootstrap-binary "tar" (%current-system)))
|
`(("tar" ,(search-bootstrap-binary "tar" (%current-system)))
|
||||||
("xz" ,(search-bootstrap-binary "xz" (%current-system)))
|
("xz" ,(search-bootstrap-binary "xz" (%current-system)))
|
||||||
|
|
|
@ -87,6 +87,8 @@ makes a few sacrifices to acquire fast full and incremental build times.")
|
||||||
(base32
|
(base32
|
||||||
"1m0w0wqnz983l7fpp5p9pdsqr7n3ybrzp8ywjcvn0rihsrzj65j6"))))
|
"1m0w0wqnz983l7fpp5p9pdsqr7n3ybrzp8ywjcvn0rihsrzj65j6"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("python" ,python-wrapper)))
|
||||||
(home-page "https://github.com/rizsotto/Bear")
|
(home-page "https://github.com/rizsotto/Bear")
|
||||||
(synopsis "Tool for generating a compilation database")
|
(synopsis "Tool for generating a compilation database")
|
||||||
(description "A JSON compilation database is used in the Clang project to
|
(description "A JSON compilation database is used in the Clang project to
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
|
@ -83,7 +83,7 @@ standard.")
|
||||||
(build-system trivial-build-system)
|
(build-system trivial-build-system)
|
||||||
(native-inputs '())
|
(native-inputs '())
|
||||||
(inputs `(("tcc" ,tcc)
|
(inputs `(("tcc" ,tcc)
|
||||||
("guile" ,guile-2.0)))
|
("guile" ,guile-2.2)))
|
||||||
|
|
||||||
;; By default TCC does not honor any search path environment variable.
|
;; By default TCC does not honor any search path environment variable.
|
||||||
;; This wrapper adds them.
|
;; This wrapper adds them.
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
|
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
|
||||||
;;; Copyright © 2016 Stefan Reichoer <stefan@xsteve.at>
|
;;; Copyright © 2016 Stefan Reichoer <stefan@xsteve.at>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -95,13 +96,13 @@ data units.")
|
||||||
(define-public khal
|
(define-public khal
|
||||||
(package
|
(package
|
||||||
(name "khal")
|
(name "khal")
|
||||||
(version "0.9.8")
|
(version "0.9.9")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "khal" version))
|
(uri (pypi-uri "khal" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1blx3gxnv7sj302biqphfw7i6ilzl2xlmvzp130n3113scg9w17y"))))
|
"0dq9aqb9pqjfqrnfg43mhpb7m0szmychxy1ydb3lwzf3500c9rsh"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases (modify-phases %standard-phases
|
`(#:phases (modify-phases %standard-phases
|
||||||
|
@ -110,24 +111,24 @@ data units.")
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
;; Make installed package available for running the tests
|
;; Make installed package available for running the tests
|
||||||
(add-installed-pythonpath inputs outputs)
|
(add-installed-pythonpath inputs outputs)
|
||||||
(and
|
(invoke "make" "--directory=doc/" "man")
|
||||||
(zero? (system* "make" "--directory=doc/" "man"))
|
(install-file
|
||||||
(install-file
|
"doc/build/man/khal.1"
|
||||||
"doc/build/man/khal.1"
|
(string-append (assoc-ref outputs "out") "/share/man/man1"))
|
||||||
(string-append (assoc-ref outputs "out") "/share/man/man1")))))
|
#t))
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
;; The tests require us to choose a timezone.
|
;; The tests require us to choose a timezone.
|
||||||
(setenv "TZ"
|
(setenv "TZ"
|
||||||
(string-append (assoc-ref inputs "tzdata")
|
(string-append (assoc-ref inputs "tzdata")
|
||||||
"/share/zoneinfo/Zulu"))
|
"/share/zoneinfo/Zulu"))
|
||||||
(zero? (system* "py.test" "tests" "-k"
|
(invoke "py.test" "tests" "-k"
|
||||||
(string-append
|
(string-append
|
||||||
;; These tests are known to fail in when not
|
;; These tests are known to fail in when not
|
||||||
;; running in a TTY:
|
;; running in a TTY:
|
||||||
;; https://github.com/pimutils/khal/issues/683
|
;; https://github.com/pimutils/khal/issues/683
|
||||||
"not test_printics_read_from_stdin "
|
"not test_printics_read_from_stdin "
|
||||||
"and not test_import_from_stdin"))))))))
|
"and not test_import_from_stdin")))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("python-pytest" ,python-pytest)
|
`(("python-pytest" ,python-pytest)
|
||||||
("python-pytest-cov" ,python-pytest-cov)
|
("python-pytest-cov" ,python-pytest-cov)
|
||||||
|
|
|
@ -188,9 +188,11 @@ files.")
|
||||||
(patches (search-patches "cdparanoia-fpic.patch"))
|
(patches (search-patches "cdparanoia-fpic.patch"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Make libraries respect LDFLAGS.
|
'(begin
|
||||||
'(substitute* '("paranoia/Makefile.in" "interface/Makefile.in")
|
;; Make libraries respect LDFLAGS.
|
||||||
(("-Wl,-soname") "$(LDFLAGS) -Wl,-soname")))))
|
(substitute* '("paranoia/Makefile.in" "interface/Makefile.in")
|
||||||
|
(("-Wl,-soname") "$(LDFLAGS) -Wl,-soname"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; there is no check target
|
`(#:tests? #f ; there is no check target
|
||||||
|
@ -449,9 +451,11 @@ the data.")
|
||||||
"0qrcvn7227qaayjcd5rm7z0k5q89qfy5qkdgwr5pd7ih0va8rmpz"))
|
"0qrcvn7227qaayjcd5rm7z0k5q89qfy5qkdgwr5pd7ih0va8rmpz"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(substitute* "Makefile"
|
'(begin
|
||||||
(("/usr/bin/install")
|
(substitute* "Makefile"
|
||||||
"install")))))
|
(("/usr/bin/install")
|
||||||
|
"install"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f
|
'(#:tests? #f
|
||||||
|
@ -479,11 +483,13 @@ from an audio CD.")
|
||||||
"1msm5snyckynbspz54p9krarn7v9izsi7qyyi2z5y4cinw36xv3h"))
|
"1msm5snyckynbspz54p9krarn7v9izsi7qyyi2z5y4cinw36xv3h"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(substitute* "Makefile"
|
'(begin
|
||||||
(("/usr/bin/install")
|
(substitute* "Makefile"
|
||||||
"install")
|
(("/usr/bin/install")
|
||||||
(("^etcdir = .*$")
|
"install")
|
||||||
(string-append "etcdir = $(prefix)/etc\n"))))))
|
(("^etcdir = .*$")
|
||||||
|
(string-append "etcdir = $(prefix)/etc\n")))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(#:phases
|
||||||
|
|
|
@ -63,7 +63,8 @@
|
||||||
(("crt") "pem"))
|
(("crt") "pem"))
|
||||||
(mkdir-p bin)
|
(mkdir-p bin)
|
||||||
(copy-file "certdata2pem.py"
|
(copy-file "certdata2pem.py"
|
||||||
(string-append bin "/certdata2pem.py"))))))
|
(string-append bin "/certdata2pem.py"))
|
||||||
|
#t))))
|
||||||
(synopsis "Python script to extract .pem data from certificate collection")
|
(synopsis "Python script to extract .pem data from certificate collection")
|
||||||
(description
|
(description
|
||||||
"certdata2pem.py is a Python script to transform X.509 certificate
|
"certdata2pem.py is a Python script to transform X.509 certificate
|
||||||
|
@ -121,7 +122,7 @@
|
||||||
(mkdir-p certsdir)
|
(mkdir-p certsdir)
|
||||||
(with-directory-excursion "nss/lib/ckfw/builtins/"
|
(with-directory-excursion "nss/lib/ckfw/builtins/"
|
||||||
;; extract single certificates from blob
|
;; extract single certificates from blob
|
||||||
(system* "certdata2pem.py" "certdata.txt")
|
(invoke "certdata2pem.py" "certdata.txt")
|
||||||
;; copy selected .pem files into the output
|
;; copy selected .pem files into the output
|
||||||
(for-each maybe-install-cert
|
(for-each maybe-install-cert
|
||||||
(find-files "." ".*\\.pem")))
|
(find-files "." ".*\\.pem")))
|
||||||
|
@ -170,10 +171,9 @@ taken from the NSS package and thus ultimately from the Mozilla project.")
|
||||||
;; Create hash symlinks suitable for OpenSSL ('SSL_CERT_DIR' and
|
;; Create hash symlinks suitable for OpenSSL ('SSL_CERT_DIR' and
|
||||||
;; similar.)
|
;; similar.)
|
||||||
(chdir (string-append %output "/etc/ssl/certs"))
|
(chdir (string-append %output "/etc/ssl/certs"))
|
||||||
(unless (zero? (system* (string-append perl "/bin/perl")
|
(invoke (string-append perl "/bin/perl")
|
||||||
(string-append openssl "/bin/c_rehash")
|
(string-append openssl "/bin/c_rehash")
|
||||||
"."))
|
".")))))
|
||||||
(error "'c_rehash' failed" openssl))))))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("openssl" ,openssl)
|
`(("openssl" ,openssl)
|
||||||
("perl" ,perl))) ;for 'c_rehash'
|
("perl" ,perl))) ;for 'c_rehash'
|
||||||
|
|
|
@ -19,12 +19,12 @@
|
||||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
||||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||||
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
|
;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
|
;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
|
||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
|
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
|
||||||
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
||||||
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
|
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
|
||||||
|
@ -104,9 +104,11 @@ source code editors and IDEs.")
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments '(#:phases
|
(arguments '(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-before 'configure 'autoconf
|
;; XXX: The "bootstrap" phase detects the "bootstrap"
|
||||||
(lambda _
|
;; script, but fails to execute it, so we bootstrap
|
||||||
(zero? (system* "autoreconf" "-vfi")))))))
|
;; manually.
|
||||||
|
(replace 'bootstrap
|
||||||
|
(lambda _ (invoke "autoreconf" "-vfi"))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("automake" ,automake)
|
`(("automake" ,automake)
|
||||||
("autoconf" ,autoconf)
|
("autoconf" ,autoconf)
|
||||||
|
@ -161,6 +163,8 @@ supervised tests.")
|
||||||
(base32
|
(base32
|
||||||
"1027cyfx5gsjkdkaf6c2wnjh68882grw8n672018cj3vs9lrhmix"))))))
|
"1027cyfx5gsjkdkaf6c2wnjh68882grw8n672018cj3vs9lrhmix"))))))
|
||||||
|
|
||||||
|
;; When dependent packages upgraded to use newer version of catch, this one should
|
||||||
|
;; be removed.
|
||||||
(define-public catch-framework
|
(define-public catch-framework
|
||||||
(package
|
(package
|
||||||
(name "catch")
|
(name "catch")
|
||||||
|
@ -185,13 +189,13 @@ supervised tests.")
|
||||||
(incdir (string-append output "/include"))
|
(incdir (string-append output "/include"))
|
||||||
(docdir (string-append output "/share/doc/catch-"
|
(docdir (string-append output "/share/doc/catch-"
|
||||||
,version)))
|
,version)))
|
||||||
(begin
|
(for-each mkdir-p (list incdir docdir))
|
||||||
(for-each mkdir-p (list incdir docdir))
|
(install-file (string-append source
|
||||||
(install-file (string-append source
|
"/single_include/catch.hpp")
|
||||||
"/single_include/catch.hpp")
|
incdir)
|
||||||
incdir)
|
(copy-recursively (string-append source "/docs")
|
||||||
(copy-recursively (string-append source "/docs")
|
docdir)
|
||||||
docdir))))))
|
#t))))
|
||||||
(home-page "http://catch-lib.net/")
|
(home-page "http://catch-lib.net/")
|
||||||
(synopsis "Automated test framework for C++ and Objective-C")
|
(synopsis "Automated test framework for C++ and Objective-C")
|
||||||
(description
|
(description
|
||||||
|
@ -199,6 +203,24 @@ supervised tests.")
|
||||||
multi-paradigm automated test framework for C++ and Objective-C.")
|
multi-paradigm automated test framework for C++ and Objective-C.")
|
||||||
(license license:boost1.0)))
|
(license license:boost1.0)))
|
||||||
|
|
||||||
|
(define-public catch-framework2
|
||||||
|
(package
|
||||||
|
(name "catch2")
|
||||||
|
(version "1.12.2")
|
||||||
|
(home-page "https://github.com/catchorg/Catch2")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append home-page "/archive/v" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0g2ysxc6adqca5wh7nsicnxb9wkxg75cd5izjsl39rcj0v903gr7"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(synopsis "Automated test framework for C++ and Objective-C")
|
||||||
|
(description "Catch2 stands for C++ Automated Test Cases in Headers and is
|
||||||
|
a multi-paradigm automated test framework for C++ and Objective-C.")
|
||||||
|
(license license:boost1.0)))
|
||||||
|
|
||||||
(define-public cmdtest
|
(define-public cmdtest
|
||||||
(package
|
(package
|
||||||
(name "cmdtest")
|
(name "cmdtest")
|
||||||
|
@ -394,6 +416,8 @@ test coverage and has a web user interface that will refresh automatically.")
|
||||||
(home-page "https://github.com/smartystreets/goconvey")
|
(home-page "https://github.com/smartystreets/goconvey")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
;; XXX When updating, check whether ZNC's GOOGLETEST-SOURCES can be
|
||||||
|
;; switched back to simply using (PACKAGE-SOURCE ...).
|
||||||
(define-public googletest
|
(define-public googletest
|
||||||
(package
|
(package
|
||||||
(name "googletest")
|
(name "googletest")
|
||||||
|
@ -595,14 +619,14 @@ standard library.")
|
||||||
(define-public python-pytest
|
(define-public python-pytest
|
||||||
(package
|
(package
|
||||||
(name "python-pytest")
|
(name "python-pytest")
|
||||||
(version "3.2.3")
|
(version "3.5.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "pytest" version))
|
(uri (pypi-uri "pytest" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0g6w86ks73fnrnsyib9ii2rbyx830vn7aglsjqz9v1n2xwbndyi7"))))
|
"1q832zd07zak2lyxbycxjydh0jp7y3hvawjqzlvra6aghz8r3r7s"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -620,7 +644,11 @@ standard library.")
|
||||||
line)))
|
line)))
|
||||||
#t)))))
|
#t)))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("python-py" ,python-py)))
|
`(("python-attrs" ,python-attrs-bootstrap)
|
||||||
|
("python-more-itertools" ,python-more-itertools)
|
||||||
|
("python-pluggy" ,python-pluggy)
|
||||||
|
("python-py" ,python-py)
|
||||||
|
("python-six" ,python-six-bootstrap)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(;; Tests need the "regular" bash since 'bash-final' lacks `compgen`.
|
`(;; Tests need the "regular" bash since 'bash-final' lacks `compgen`.
|
||||||
("bash" ,bash)
|
("bash" ,bash)
|
||||||
|
@ -634,20 +662,33 @@ standard library.")
|
||||||
"Pytest is a testing tool that provides auto-discovery of test modules
|
"Pytest is a testing tool that provides auto-discovery of test modules
|
||||||
and functions, detailed info on failing assert statements, modular fixtures,
|
and functions, detailed info on failing assert statements, modular fixtures,
|
||||||
and many external plugins.")
|
and many external plugins.")
|
||||||
(license license:expat)))
|
(license license:expat)
|
||||||
|
(properties `((python2-variant . ,(delay python2-pytest))))))
|
||||||
|
|
||||||
(define-public python2-pytest
|
(define-public python2-pytest
|
||||||
(package-with-python2 python-pytest))
|
(let ((pytest (package-with-python2
|
||||||
|
(strip-python2-variant python-pytest))))
|
||||||
|
(package
|
||||||
|
(inherit pytest)
|
||||||
|
(propagated-inputs
|
||||||
|
`(("python2-funcsigs" ,python2-funcsigs)
|
||||||
|
,@(package-propagated-inputs pytest))))))
|
||||||
|
|
||||||
(define-public python-pytest-bootstrap
|
(define-public python-pytest-bootstrap
|
||||||
(package
|
(package
|
||||||
(inherit python-pytest)
|
(inherit (strip-python2-variant python-pytest))
|
||||||
(name "python-pytest-bootstrap")
|
(name "python-pytest-bootstrap")
|
||||||
(native-inputs `(("python-setuptools-scm" ,python-setuptools-scm)))
|
(native-inputs `(("python-setuptools-scm" ,python-setuptools-scm)))
|
||||||
(arguments `(#:tests? #f))))
|
(arguments `(#:tests? #f))
|
||||||
|
(properties `((python2-variant . ,(delay python2-pytest-bootstrap))))))
|
||||||
|
|
||||||
(define-public python2-pytest-bootstrap
|
(define-public python2-pytest-bootstrap
|
||||||
(package-with-python2 python-pytest-bootstrap))
|
(let ((pytest (package-with-python2
|
||||||
|
(strip-python2-variant python-pytest-bootstrap))))
|
||||||
|
(package (inherit pytest)
|
||||||
|
(propagated-inputs
|
||||||
|
`(("python2-funcsigs" ,python2-funcsigs-bootstrap)
|
||||||
|
,@(package-propagated-inputs pytest))))))
|
||||||
|
|
||||||
(define-public python-pytest-cov
|
(define-public python-pytest-cov
|
||||||
(package
|
(package
|
||||||
|
@ -1356,23 +1397,26 @@ normally the case.")
|
||||||
(define-public python-hypothesis
|
(define-public python-hypothesis
|
||||||
(package
|
(package
|
||||||
(name "python-hypothesis")
|
(name "python-hypothesis")
|
||||||
(version "3.1.0")
|
(version "3.52.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "hypothesis" version))
|
(uri (pypi-uri "hypothesis" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0qyqq9akm4vshhn8cngjc1qykcvsn7cz6dlm6njfsgpbraqrmbbw"))))
|
"0g54cypfi5qj6cgxfr7l1nb41r1cqhhngx4qxn4ga9h720rcsbr8"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("python-flake8" ,python-flake8)
|
`(("python-flake8" ,python-flake8)
|
||||||
("python-pytest" ,python-pytest-bootstrap)))
|
("python-pytest" ,python-pytest-bootstrap)))
|
||||||
|
(propagated-inputs
|
||||||
|
`(("python-attrs" ,python-attrs-bootstrap)
|
||||||
|
("python-coverage" ,python-coverage)))
|
||||||
(synopsis "Library for property based testing")
|
(synopsis "Library for property based testing")
|
||||||
(description "Hypothesis is a library for testing your Python code against a
|
(description "Hypothesis is a library for testing your Python code against a
|
||||||
much larger range of examples than you would ever want to write by hand. It’s
|
much larger range of examples than you would ever want to write by hand. It’s
|
||||||
based on the Haskell library, Quickcheck, and is designed to integrate
|
based on the Haskell library, Quickcheck, and is designed to integrate
|
||||||
seamlessly into your existing Python unit testing work flow.")
|
seamlessly into your existing Python unit testing work flow.")
|
||||||
(home-page "https://github.com/DRMacIver/hypothesis")
|
(home-page "https://github.com/HypothesisWorks/hypothesis-python")
|
||||||
(license license:mpl2.0)
|
(license license:mpl2.0)
|
||||||
(properties `((python2-variant . ,(delay python2-hypothesis))))))
|
(properties `((python2-variant . ,(delay python2-hypothesis))))))
|
||||||
|
|
||||||
|
|
|
@ -74,8 +74,10 @@
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Fix compilation with glibc >= 2.26, which removed xlocale.h.
|
;; Fix compilation with glibc >= 2.26, which removed xlocale.h.
|
||||||
'(substitute* "c/expeditor.c"
|
'(begin
|
||||||
(("xlocale\\.h") "locale.h")))))
|
(substitute* "c/expeditor.c"
|
||||||
|
(("xlocale\\.h") "locale.h"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("ncurses" ,ncurses)
|
`(("ncurses" ,ncurses)
|
||||||
|
|
|
@ -147,9 +147,6 @@
|
||||||
(string-append "--docdir=" %output
|
(string-append "--docdir=" %output
|
||||||
"/doc/hydra-" ,version)))
|
"/doc/hydra-" ,version)))
|
||||||
#:phases (modify-phases %standard-phases
|
#:phases (modify-phases %standard-phases
|
||||||
(add-after
|
|
||||||
'unpack 'bootstrap
|
|
||||||
(lambda _ (zero? (system* "autoreconf" "-vfi"))))
|
|
||||||
(add-before
|
(add-before
|
||||||
'check 'check-setup
|
'check 'check-setup
|
||||||
(lambda _ (setenv "LOGNAME" "test.log")))
|
(lambda _ (setenv "LOGNAME" "test.log")))
|
||||||
|
@ -221,8 +218,6 @@ their dependencies.")
|
||||||
(substitute* "build-aux/git-version-gen"
|
(substitute* "build-aux/git-version-gen"
|
||||||
(("#!/bin/sh") (string-append "#!" (which "sh"))))
|
(("#!/bin/sh") (string-append "#!" (which "sh"))))
|
||||||
#t))
|
#t))
|
||||||
(add-after 'patch-/bin/sh 'bootstrap
|
|
||||||
(lambda _ (zero? (system* "sh" "bootstrap"))))
|
|
||||||
(add-after 'install 'wrap-program
|
(add-after 'install 'wrap-program
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
;; Wrap the 'cuirass' command to refer to the right modules.
|
;; Wrap the 'cuirass' command to refer to the right modules.
|
||||||
|
|
|
@ -0,0 +1,87 @@
|
||||||
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
|
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
|
||||||
|
;;;
|
||||||
|
;;; This file is part of GNU Guix.
|
||||||
|
;;;
|
||||||
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||||
|
;;; under the terms of the GNU General Public License as published by
|
||||||
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||||
|
;;; your option) any later version.
|
||||||
|
;;;
|
||||||
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||||
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
;;; GNU General Public License for more details.
|
||||||
|
;;;
|
||||||
|
;;; You should have received a copy of the GNU General Public License
|
||||||
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
(define-module (gnu packages cluster)
|
||||||
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (gnu packages linux)
|
||||||
|
#:use-module (gnu packages pkg-config)
|
||||||
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages texinfo)
|
||||||
|
#:use-module (gnu packages tls))
|
||||||
|
|
||||||
|
(define-public keepalived
|
||||||
|
(package
|
||||||
|
(name "keepalived")
|
||||||
|
(version "2.0.1")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"http://www.keepalived.org/software/keepalived-"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0hp8i56zkf0398bmpi32a85f05cv2fy9wizkdfbxk7gav4z6yx18"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
'(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-before 'configure 'patch-configure
|
||||||
|
(lambda _
|
||||||
|
;; XXX: The 'configure' script doesn't handle '-L' flags in the
|
||||||
|
;; output of 'pkg-config'.
|
||||||
|
(substitute* "configure"
|
||||||
|
(("PKG_CONFIG --libs") "PKG_CONFIG --libs-only-l"))
|
||||||
|
#t))
|
||||||
|
(add-after 'build 'build-info
|
||||||
|
(lambda _
|
||||||
|
(invoke "make" "-C" "doc" "texinfo")
|
||||||
|
;; Put images in a subdirectory as recommended by 'texinfo'.
|
||||||
|
(install-file "doc/build/texinfo/software_design.png"
|
||||||
|
"doc/build/texinfo/keepalived-figures")
|
||||||
|
(substitute* "doc/build/texinfo/keepalived.texi"
|
||||||
|
(("@image\\{software_design,")
|
||||||
|
"@image{keepalived-figures/software_design,"))
|
||||||
|
(invoke "make" "-C" "doc/build/texinfo")))
|
||||||
|
(add-after 'install 'install-info
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(infodir (string-append out "/share/info")))
|
||||||
|
(install-file "doc/build/texinfo/keepalived.info" infodir)
|
||||||
|
(install-file "doc/build/texinfo/software_design.png"
|
||||||
|
(string-append infodir "/keepalived-figures"))
|
||||||
|
#t))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)
|
||||||
|
("python-sphinx" ,python-sphinx)
|
||||||
|
("texinfo" ,texinfo)))
|
||||||
|
(inputs
|
||||||
|
`(("openssl" ,openssl)
|
||||||
|
("libnfnetlink" ,libnfnetlink)
|
||||||
|
("libnl" ,libnl)))
|
||||||
|
(home-page "http://www.keepalived.org/")
|
||||||
|
(synopsis "Loadbalancing and high-availability frameworks")
|
||||||
|
(description
|
||||||
|
"Keepalived provides frameworks for both load balancing and high
|
||||||
|
availability. The load balancing framework relies on the Linux Virtual
|
||||||
|
Server (IPVS) kernel module. High availability is achieved by the Virtual
|
||||||
|
Redundancy Routing Protocol (VRRP). Each Keepalived framework can be used
|
||||||
|
independently or together to provide resilient infrastructures.")
|
||||||
|
(license license:gpl2+)))
|
|
@ -6,6 +6,7 @@
|
||||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||||
|
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -28,6 +29,7 @@
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system emacs)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages backup)
|
#:use-module (gnu packages backup)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
|
@ -41,57 +43,66 @@
|
||||||
(define-public cmake
|
(define-public cmake
|
||||||
(package
|
(package
|
||||||
(name "cmake")
|
(name "cmake")
|
||||||
(version "3.7.2")
|
(version "3.11.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://www.cmake.org/files/v"
|
(uri (string-append "https://www.cmake.org/files/v"
|
||||||
(version-major+minor version)
|
(version-major+minor version)
|
||||||
"/cmake-" version ".tar.gz"))
|
"/cmake-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1q6a60695prpzzsmczm2xrgxdb61fyjznb04dr6yls6iwv24c4nw"))
|
"0sv5k9q6braa8hhw0y3w19avqn0xn5czv5jf5fz5blnlf7ivw4y3"))
|
||||||
(patches (search-patches "cmake-fix-tests.patch"))
|
(modules '((guix build utils)))
|
||||||
(modules '((guix build utils)))
|
(snippet
|
||||||
(snippet
|
'(begin
|
||||||
'(begin
|
;; Drop bundled software.
|
||||||
;; Drop bundled software.
|
(with-directory-excursion "Utilities"
|
||||||
(with-directory-excursion "Utilities"
|
(for-each delete-file-recursively
|
||||||
(for-each delete-file-recursively
|
'("cmbzip2"
|
||||||
'("cmbzip2"
|
;; "cmcompress"
|
||||||
;"cmcompress"
|
"cmcurl"
|
||||||
"cmcurl"
|
"cmexpat"
|
||||||
"cmexpat"
|
;; "cmjsoncpp"
|
||||||
;"cmjsoncpp"
|
;; "cmlibarchive"
|
||||||
;"cmlibarchive"
|
"cmliblzma"
|
||||||
"cmliblzma"
|
;; "cmlibuv"
|
||||||
"cmlibuv"
|
"cmzlib"))
|
||||||
"cmzlib"))
|
#t)))))
|
||||||
#t)))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:test-target "test"
|
`(#:test-target "test"
|
||||||
|
#:make-flags
|
||||||
|
(let ((skipped-tests
|
||||||
|
(list "BundleUtilities" ; This test fails on Guix.
|
||||||
|
"CTestTestSubdir" ; This test fails to build 2 of the 3 tests.
|
||||||
|
;; These tests requires network access.
|
||||||
|
"CTestCoverageCollectGCOV"
|
||||||
|
"CTestTestUpload")))
|
||||||
|
(list
|
||||||
|
(string-append
|
||||||
|
;; These arguments apply for the tests only.
|
||||||
|
"ARGS=-j " (number->string (parallel-job-count))
|
||||||
|
" --output-on-failure"
|
||||||
|
" --exclude-regex ^\\(" (string-join skipped-tests "\\|") "\\)$")))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-before 'configure 'patch-bin-sh
|
(add-before 'configure 'patch-bin-sh
|
||||||
(lambda _
|
(lambda _
|
||||||
;; Replace "/bin/sh" by the right path in... a lot of
|
;; Replace "/bin/sh" by the right path in... a lot of
|
||||||
;; files.
|
;; files.
|
||||||
(substitute*
|
(substitute*
|
||||||
'("Modules/CompilerId/Xcode-3.pbxproj.in"
|
'("Modules/CompilerId/Xcode-3.pbxproj.in"
|
||||||
"Modules/CompilerId/Xcode-1.pbxproj.in"
|
"Modules/CPack.RuntimeScript.in"
|
||||||
"Modules/CompilerId/Xcode-2.pbxproj.in"
|
"Source/cmakexbuild.cxx"
|
||||||
"Modules/CPack.RuntimeScript.in"
|
"Source/cmGlobalXCodeGenerator.cxx"
|
||||||
"Source/cmakexbuild.cxx"
|
"Source/cmLocalUnixMakefileGenerator3.cxx"
|
||||||
"Source/cmGlobalXCodeGenerator.cxx"
|
"Source/cmExecProgramCommand.cxx"
|
||||||
"Source/CTest/cmCTestBatchTestHandler.cxx"
|
"Utilities/Release/release_cmake.cmake"
|
||||||
"Source/cmLocalUnixMakefileGenerator3.cxx"
|
"Utilities/cmlibarchive/libarchive/archive_write_set_format_shar.c"
|
||||||
"Source/cmExecProgramCommand.cxx"
|
"Tests/CMakeLists.txt"
|
||||||
"Utilities/Release/release_cmake.cmake"
|
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
|
||||||
"Utilities/cmlibarchive/libarchive/archive_write_set_format_shar.c"
|
|
||||||
"Tests/CMakeLists.txt"
|
|
||||||
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
|
|
||||||
(("/bin/sh") (which "sh")))
|
(("/bin/sh") (which "sh")))
|
||||||
#t))
|
#t))
|
||||||
(add-before 'configure 'set-paths
|
(add-before 'configure 'set-paths
|
||||||
(lambda _
|
(lambda _
|
||||||
;; Help cmake's bootstrap process to find system libraries
|
;; Help cmake's bootstrap process to find system libraries
|
||||||
|
@ -102,43 +113,37 @@
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(zero? (system*
|
(invoke
|
||||||
"./configure"
|
"./configure" "--verbose"
|
||||||
(string-append "--prefix=" out)
|
(string-append "--parallel=" (number->string (parallel-job-count)))
|
||||||
"--system-libs"
|
(string-append "--prefix=" out)
|
||||||
"--no-system-jsoncpp" ; FIXME: Circular dependency.
|
"--system-libs"
|
||||||
;; By default, the man pages and other docs land
|
"--no-system-jsoncpp" ; FIXME: Circular dependency.
|
||||||
;; in PREFIX/man and PREFIX/doc, but we want them
|
;; By default, the man pages and other docs land
|
||||||
;; in share/{man,doc}. Note that unlike
|
;; in PREFIX/man and PREFIX/doc, but we want them
|
||||||
;; autoconf-generated configure scripts, cmake's
|
;; in share/{man,doc}. Note that unlike
|
||||||
;; configure prepends "PREFIX/" to what we pass
|
;; autoconf-generated configure scripts, cmake's
|
||||||
;; to --mandir and --docdir.
|
;; configure prepends "PREFIX/" to what we pass
|
||||||
"--mandir=share/man"
|
;; to --mandir and --docdir.
|
||||||
,(string-append
|
"--mandir=share/man"
|
||||||
"--docdir=share/doc/cmake-"
|
,(string-append
|
||||||
(version-major+minor version)))))))
|
"--docdir=share/doc/cmake-"
|
||||||
(add-before 'check 'set-test-environment
|
(version-major+minor version)))))))))
|
||||||
(lambda _
|
|
||||||
;; Get verbose output from failed tests.
|
|
||||||
(setenv "CTEST_OUTPUT_ON_FAILURE" "TRUE")
|
|
||||||
;; Run tests in parallel.
|
|
||||||
(setenv "CTEST_PARALLEL_LEVEL"
|
|
||||||
(number->string (parallel-job-count)))
|
|
||||||
#t)))))
|
|
||||||
(inputs
|
(inputs
|
||||||
`(("file" ,file)
|
`(("bzip2" ,bzip2)
|
||||||
("curl" ,curl)
|
("curl" ,curl)
|
||||||
("zlib" ,zlib)
|
("expat" ,expat)
|
||||||
("expat" ,expat)
|
("file" ,file)
|
||||||
("bzip2" ,bzip2)
|
("libarchive" ,libarchive)
|
||||||
("ncurses" ,ncurses) ; required for ccmake
|
("libuv" ,libuv)
|
||||||
("libuv" ,libuv)
|
("ncurses" ,ncurses) ; required for ccmake
|
||||||
("libarchive" ,libarchive)))
|
("rhash" ,rhash)
|
||||||
|
("zlib" ,zlib)))
|
||||||
(native-search-paths
|
(native-search-paths
|
||||||
(list (search-path-specification
|
(list (search-path-specification
|
||||||
(variable "CMAKE_PREFIX_PATH")
|
(variable "CMAKE_PREFIX_PATH")
|
||||||
(files '("")))))
|
(files '("")))))
|
||||||
(home-page "https://www.cmake.org/")
|
(home-page "https://cmake.org/")
|
||||||
(synopsis "Cross-platform build system")
|
(synopsis "Cross-platform build system")
|
||||||
(description
|
(description
|
||||||
"CMake is a family of tools designed to build, test and package software.
|
"CMake is a family of tools designed to build, test and package software.
|
||||||
|
@ -151,58 +156,19 @@ and workspaces that can be used in the compiler environment of your choice.")
|
||||||
license:expat ; cmjsoncpp is dual MIT/public domain
|
license:expat ; cmjsoncpp is dual MIT/public domain
|
||||||
license:public-domain)))) ; cmlibarchive/archive_getdate.c
|
license:public-domain)))) ; cmlibarchive/archive_getdate.c
|
||||||
|
|
||||||
;; Recent Ceph requires Boost 1.66, which in turn requires CMake 3.11 for
|
(define-public emacs-cmake-mode
|
||||||
;; its updated "FindBoost.cmake" facility.
|
|
||||||
(define-public cmake-3.11
|
|
||||||
(package
|
(package
|
||||||
(inherit cmake)
|
(inherit cmake)
|
||||||
(version "3.11.0-rc2")
|
(name "emacs-cmake-mode")
|
||||||
(source (origin
|
(build-system emacs-build-system)
|
||||||
(inherit (package-source cmake))
|
|
||||||
(uri (string-append "https://www.cmake.org/files/v"
|
|
||||||
(version-major+minor version)
|
|
||||||
"/cmake-" version ".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"14p6ais19nfcwl914n4n5rbzaqwafv3qkg6nd8jw54ykn6lz6mf3"))
|
|
||||||
(snippet
|
|
||||||
'(begin
|
|
||||||
;; Drop bundled software.
|
|
||||||
(with-directory-excursion "Utilities"
|
|
||||||
(for-each delete-file-recursively
|
|
||||||
'("cmbzip2"
|
|
||||||
"cmcurl"
|
|
||||||
"cmexpat"
|
|
||||||
"cmliblzma"
|
|
||||||
"cmzlib"))
|
|
||||||
#t)))))
|
|
||||||
(build-system gnu-build-system)
|
|
||||||
(arguments
|
(arguments
|
||||||
(substitute-keyword-arguments (package-arguments cmake)
|
`(#:phases
|
||||||
((#:make-flags flags ''()) `(cons (string-append
|
(modify-phases %standard-phases
|
||||||
"ARGS=-j "
|
(add-after 'unpack 'chdir-elisp
|
||||||
(number->string (parallel-job-count))
|
;; Elisp directory is not in root of the source.
|
||||||
" --output-on-failure")
|
(lambda _
|
||||||
,flags))
|
(chdir "Auxiliary"))))))
|
||||||
((#:phases phases)
|
(synopsis "Emacs major mode for editing Cmake expressions")
|
||||||
`(modify-phases ,phases
|
(description "@code{cmakeos-mode} provides an Emacs major mode for editing
|
||||||
(replace 'patch-bin-sh
|
Cmake files. It supports syntax highlighting, indenting and refilling of
|
||||||
(lambda _
|
comments.")))
|
||||||
(substitute*
|
|
||||||
'("Modules/CompilerId/Xcode-3.pbxproj.in"
|
|
||||||
"Modules/CPack.RuntimeScript.in"
|
|
||||||
"Source/cmakexbuild.cxx"
|
|
||||||
"Source/cmGlobalXCodeGenerator.cxx"
|
|
||||||
"Source/cmLocalUnixMakefileGenerator3.cxx"
|
|
||||||
"Source/cmExecProgramCommand.cxx"
|
|
||||||
"Utilities/Release/release_cmake.cmake"
|
|
||||||
"Utilities/cmlibarchive/libarchive/archive_write_set_format_shar.c"
|
|
||||||
"Tests/CMakeLists.txt"
|
|
||||||
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
|
|
||||||
(("/bin/sh") (which "sh")))
|
|
||||||
#t))
|
|
||||||
;; This is now passed through #:make-flags.
|
|
||||||
(delete 'set-test-environment)))))
|
|
||||||
(inputs
|
|
||||||
`(("rhash" ,rhash)
|
|
||||||
,@(package-inputs cmake)))))
|
|
||||||
|
|
|
@ -7,6 +7,10 @@
|
||||||
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
||||||
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
|
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
|
||||||
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
|
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
|
||||||
|
;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com>
|
||||||
|
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||||
|
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||||
|
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -26,12 +30,16 @@
|
||||||
(define-module (gnu packages code)
|
(define-module (gnu packages code)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix git-download)
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system trivial)
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
|
#:use-module (gnu packages autogen)
|
||||||
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages cpp)
|
#:use-module (gnu packages cpp)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
|
@ -39,15 +47,13 @@
|
||||||
#:use-module (gnu packages gcc)
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages graphviz)
|
#:use-module (gnu packages graphviz)
|
||||||
#:use-module (gnu packages pcre)
|
#:use-module (gnu packages pcre)
|
||||||
#:use-module (gnu packages pkg-config)
|
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
|
#:use-module (gnu packages pkg-config)
|
||||||
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages texinfo)
|
#:use-module (gnu packages texinfo)
|
||||||
#:use-module (gnu packages autogen)
|
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
#:use-module (gnu packages autotools)
|
|
||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages lua)
|
#:use-module (gnu packages lua))
|
||||||
#:use-module (gnu packages bash))
|
|
||||||
|
|
||||||
;;; Tools to deal with source code: metrics, cross-references, etc.
|
;;; Tools to deal with source code: metrics, cross-references, etc.
|
||||||
|
|
||||||
|
@ -414,7 +420,8 @@ functionality such as HTML output.")
|
||||||
(let ((files (find-files "." ".*\\.cpp|.*\\.h")))
|
(let ((files (find-files "." ".*\\.cpp|.*\\.h")))
|
||||||
(substitute* files
|
(substitute* files
|
||||||
(("#include ?\"rct/(.*.h)\"" all header)
|
(("#include ?\"rct/(.*.h)\"" all header)
|
||||||
(string-append "#include <rct/" header ">"))))))
|
(string-append "#include <rct/" header ">")))
|
||||||
|
#t)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0scjbp1z201q8njvrxqz7lk2m9b6k2rxd5q1shrng6532r7ndif2"))))
|
"0scjbp1z201q8njvrxqz7lk2m9b6k2rxd5q1shrng6532r7ndif2"))))
|
||||||
|
@ -492,7 +499,8 @@ importantly we give you proper follow-symbol and find-references support.")
|
||||||
(install-files '("AUTHORS" "BUGS" "ChangeLog" "README") doc)
|
(install-files '("AUTHORS" "BUGS" "ChangeLog" "README") doc)
|
||||||
(install-files '("colormake" "colormake-short" "clmake"
|
(install-files '("colormake" "colormake-short" "clmake"
|
||||||
"clmake-short" "colormake.pl")
|
"clmake-short" "colormake.pl")
|
||||||
bin)))))
|
bin)
|
||||||
|
#t))))
|
||||||
(home-page "http://bre.klaki.net/programs/colormake/")
|
(home-page "http://bre.klaki.net/programs/colormake/")
|
||||||
(synopsis "Wrapper around @command{make} to produce colored output")
|
(synopsis "Wrapper around @command{make} to produce colored output")
|
||||||
(description "This package provides a wrapper around @command{make} to
|
(description "This package provides a wrapper around @command{make} to
|
||||||
|
@ -527,3 +535,164 @@ produce colored output.")
|
||||||
output is a graphviz-dot file, a Gexf-XML file or a list of the deepest
|
output is a graphviz-dot file, a Gexf-XML file or a list of the deepest
|
||||||
independent targets.")
|
independent targets.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public uncrustify
|
||||||
|
(package
|
||||||
|
(name "uncrustify")
|
||||||
|
(version "0.67")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/uncrustify/uncrustify/archive/"
|
||||||
|
"uncrustify-" version ".zip"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0n13kq0nsm35fxhdp0f275n4x0w88hdv3bdjy0hgvv42x0dx5zyp"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("unzip" ,unzip)))
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'unpack-etc
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
;; Configuration samples are not installed by default.
|
||||||
|
(let* ((output (assoc-ref outputs "out"))
|
||||||
|
(etcdir (string-append output "/etc")))
|
||||||
|
(for-each (lambda (l)
|
||||||
|
(install-file l etcdir))
|
||||||
|
(find-files "etc" "\\.cfg$")))
|
||||||
|
#t)))))
|
||||||
|
(home-page "http://uncrustify.sourceforge.net/")
|
||||||
|
(synopsis "Code formatter for C and other related languages")
|
||||||
|
(description
|
||||||
|
"Beautify source code in many languages of the C family (C, C++, C#,
|
||||||
|
Objective@tie{}C, D, Java, Pawn, and Vala). Features:
|
||||||
|
@itemize
|
||||||
|
@item Indent and align code.
|
||||||
|
@item Reformat comments (a little bit).
|
||||||
|
@item Fix inter-character spacing.
|
||||||
|
@item Add or remove parens / braces.
|
||||||
|
@item Supports embedded SQL @code{EXEC SQL} stuff.
|
||||||
|
@item Highly configurable - More than 600 configurable options.
|
||||||
|
@end itemize\n")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public astyle
|
||||||
|
(package
|
||||||
|
(name "astyle")
|
||||||
|
(version "2.05")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://sourceforge/astyle/astyle/astyle%20"
|
||||||
|
version "/astyle_" version "_linux.tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0f9sh9kq5ajp1yz133h00fr9235p1m698x7n3h7zbrhjiwgynd6s"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:tests? #f ;no tests
|
||||||
|
#:make-flags (list (string-append "prefix=" %output)
|
||||||
|
"INSTALL=install"
|
||||||
|
"all")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(replace 'configure
|
||||||
|
(lambda _ (chdir "build/gcc") #t))
|
||||||
|
(add-after 'install 'install-libs
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
;; Libraries are not installed by default
|
||||||
|
(let* ((output (assoc-ref outputs "out"))
|
||||||
|
(libdir (string-append output "/lib")))
|
||||||
|
(begin
|
||||||
|
(mkdir-p libdir)
|
||||||
|
(for-each (lambda (l)
|
||||||
|
(copy-file
|
||||||
|
l (string-append libdir "/" (basename l))))
|
||||||
|
(find-files "bin" "lib*"))))
|
||||||
|
#t)))))
|
||||||
|
(home-page "http://astyle.sourceforge.net/")
|
||||||
|
(synopsis "Source code indenter, formatter, and beautifier")
|
||||||
|
(description
|
||||||
|
"Artistic Style is a source code indenter, formatter, and beautifier for
|
||||||
|
the C, C++, C++/CLI, Objective‑C, C#, and Java programming languages.")
|
||||||
|
(license license:lgpl3+)))
|
||||||
|
|
||||||
|
(define-public indent
|
||||||
|
(package
|
||||||
|
(name "indent")
|
||||||
|
(version "2.2.10")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnu/indent/indent-" version
|
||||||
|
".tar.gz"))
|
||||||
|
(sha256 (base32
|
||||||
|
"0f9655vqdvfwbxvs1gpa7py8k1z71aqh8hp73f65vazwbfz436wa"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'fix-docdir
|
||||||
|
(lambda _
|
||||||
|
;; Although indent uses a modern autoconf in which docdir
|
||||||
|
;; defaults to PREFIX/share/doc, the doc/Makefile.am
|
||||||
|
;; overrides this to be in PREFIX/doc. Fix this.
|
||||||
|
(substitute* "doc/Makefile.in"
|
||||||
|
(("^docdir = .*$") "docdir = @docdir@\n"))
|
||||||
|
#t)))))
|
||||||
|
(synopsis "Code reformatter")
|
||||||
|
(description
|
||||||
|
"Indent is a program that makes source code easier to read by
|
||||||
|
reformatting it in a consistent style. It can change the style to one of
|
||||||
|
several different styles such as GNU, BSD or K&R. It has some flexibility to
|
||||||
|
deal with incomplete or malformed syntax. GNU indent offers several
|
||||||
|
extensions over the standard utility.")
|
||||||
|
(license license:gpl3+)
|
||||||
|
(home-page "https://www.gnu.org/software/indent/")))
|
||||||
|
|
||||||
|
(define-public amalgamate
|
||||||
|
(let* ((commit "c91f07eea1133aa184f652b8f1398eaf03586208")
|
||||||
|
(revision "0")
|
||||||
|
(version (git-version "1.1.1" revision commit)))
|
||||||
|
(package
|
||||||
|
(name "amalgamate")
|
||||||
|
(version version)
|
||||||
|
(home-page "https://github.com/edlund/amalgamate")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url home-page)
|
||||||
|
(commit commit)))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0cllaraw8mxs8q2nr28nhgzkb417gj2wcklqg59w84f4lc78k3yb"))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
'(substitute* "test.sh"
|
||||||
|
(("test_command \"cc -Wall -Wextra -o source.out source.c\"" all)
|
||||||
|
"test_command \"gcc -Wall -Wextra -o source.out source.c\"")))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("python" ,python-wrapper)))
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(delete 'configure)
|
||||||
|
(delete 'build)
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bin (string-append out "/bin")))
|
||||||
|
(install-file "amalgamate.py" bin))))
|
||||||
|
(replace 'check
|
||||||
|
(lambda _
|
||||||
|
(invoke "./test.sh"))))))
|
||||||
|
(synopsis "Tool for amalgamating C source and header files")
|
||||||
|
;; The package is indeed a script file, and the term "amalgamate.py" is
|
||||||
|
;; used by upstream.
|
||||||
|
(description "amalgamate.py aims to make it easy to use SQLite-style C
|
||||||
|
source and header amalgamation in projects.")
|
||||||
|
(license license:bsd-3))))
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||||
;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -29,7 +30,7 @@
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages gcc)
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages m4)
|
#:use-module (gnu packages m4)
|
||||||
#:use-module (gnu packages indent)
|
#:use-module (gnu packages code)
|
||||||
#:use-module (gnu packages file)
|
#:use-module (gnu packages file)
|
||||||
#:use-module (gnu packages gawk)
|
#:use-module (gnu packages gawk)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
|
@ -90,12 +91,14 @@
|
||||||
`(modify-phases ,phases
|
`(modify-phases ,phases
|
||||||
(replace 'build
|
(replace 'build
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "./build.sh"))))
|
(invoke "./build.sh")
|
||||||
|
#t))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(bin (string-append out "/bin")))
|
(bin (string-append out "/bin")))
|
||||||
(install-file "make" bin)))))))))
|
(install-file "make" bin)
|
||||||
|
#t))))))))
|
||||||
(native-inputs '()) ; no need for 'pkg-config'
|
(native-inputs '()) ; no need for 'pkg-config'
|
||||||
(inputs %bootstrap-inputs))))
|
(inputs %bootstrap-inputs))))
|
||||||
|
|
||||||
|
@ -183,28 +186,12 @@
|
||||||
,cf)))))
|
,cf)))))
|
||||||
(inputs %boot0-inputs))))
|
(inputs %boot0-inputs))))
|
||||||
|
|
||||||
;; gcc-4.9 was fixed late in the core-update cycle and so this GCC is only
|
|
||||||
;; needed to prevent a full world rebuild, and can be replaced with gcc-4.9.
|
|
||||||
(define gcc-for-libstdc++
|
|
||||||
(package (inherit gcc-4.9)
|
|
||||||
(version "4.9.4")
|
|
||||||
(source (origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (string-append "mirror://gnu/gcc/gcc-"
|
|
||||||
version "/gcc-" version ".tar.bz2"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc"))
|
|
||||||
(patches (search-patches "gcc-arm-bug-71399.patch"
|
|
||||||
"gcc-libvtv-runpath.patch"
|
|
||||||
"gcc-fix-texi2pod.patch"))))))
|
|
||||||
|
|
||||||
(define libstdc++-boot0
|
(define libstdc++-boot0
|
||||||
;; GCC's libcc1 is always built as a shared library (the top-level
|
;; GCC's libcc1 is always built as a shared library (the top-level
|
||||||
;; 'Makefile.def' forcefully adds --enable-shared) and thus needs to refer
|
;; 'Makefile.def' forcefully adds --enable-shared) and thus needs to refer
|
||||||
;; to libstdc++.so. We cannot build libstdc++-5.3 because it relies on
|
;; to libstdc++.so. We cannot build libstdc++-5.3 because it relies on
|
||||||
;; C++14 features missing in some of our bootstrap compilers.
|
;; C++14 features missing in some of our bootstrap compilers.
|
||||||
(let ((lib (package-with-bootstrap-guile (make-libstdc++ gcc-for-libstdc++))))
|
(let ((lib (package-with-bootstrap-guile (make-libstdc++ gcc-4.9))))
|
||||||
(package
|
(package
|
||||||
(inherit lib)
|
(inherit lib)
|
||||||
(name "libstdc++-boot0")
|
(name "libstdc++-boot0")
|
||||||
|
@ -262,42 +249,40 @@
|
||||||
"--(with-system-zlib|enable-languages.*)" <>)
|
"--(with-system-zlib|enable-languages.*)" <>)
|
||||||
,flags)))
|
,flags)))
|
||||||
((#:phases phases)
|
((#:phases phases)
|
||||||
`(alist-cons-after
|
`(modify-phases ,phases
|
||||||
'unpack 'unpack-gmp&co
|
(add-after 'unpack 'unpack-gmp&co
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let ((gmp (assoc-ref %build-inputs "gmp-source"))
|
(let ((gmp (assoc-ref %build-inputs "gmp-source"))
|
||||||
(mpfr (assoc-ref %build-inputs "mpfr-source"))
|
(mpfr (assoc-ref %build-inputs "mpfr-source"))
|
||||||
(mpc (assoc-ref %build-inputs "mpc-source")))
|
(mpc (assoc-ref %build-inputs "mpc-source")))
|
||||||
|
|
||||||
;; To reduce the set of pre-built bootstrap inputs, build
|
;; To reduce the set of pre-built bootstrap inputs, build
|
||||||
;; GMP & co. from GCC.
|
;; GMP & co. from GCC.
|
||||||
(for-each (lambda (source)
|
(for-each (lambda (source)
|
||||||
(or (zero? (system* "tar" "xvf" source))
|
(invoke "tar" "xvf" source))
|
||||||
(error "failed to unpack tarball"
|
(list gmp mpfr mpc))
|
||||||
source)))
|
|
||||||
(list gmp mpfr mpc))
|
|
||||||
|
|
||||||
;; Create symlinks like `gmp' -> `gmp-x.y.z'.
|
;; Create symlinks like `gmp' -> `gmp-x.y.z'.
|
||||||
,@(map (lambda (lib)
|
,@(map (lambda (lib)
|
||||||
;; Drop trailing letters, as gmp-6.0.0a unpacks
|
;; Drop trailing letters, as gmp-6.0.0a unpacks
|
||||||
;; into gmp-6.0.0.
|
;; into gmp-6.0.0.
|
||||||
`(symlink ,(string-trim-right
|
`(symlink ,(string-trim-right
|
||||||
(package-full-name lib)
|
(package-full-name lib "-")
|
||||||
char-set:letter)
|
char-set:letter)
|
||||||
,(package-name lib)))
|
,(package-name lib)))
|
||||||
(list gmp-6.0 mpfr mpc))))
|
(list gmp-6.0 mpfr mpc))
|
||||||
(alist-cons-after
|
#t)))
|
||||||
'install 'symlink-libgcc_eh
|
(add-after 'install 'symlink-libgcc_eh
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "lib")))
|
(let ((out (assoc-ref outputs "lib")))
|
||||||
;; Glibc wants to link against libgcc_eh, so provide
|
;; Glibc wants to link against libgcc_eh, so provide
|
||||||
;; it.
|
;; it.
|
||||||
(with-directory-excursion
|
(with-directory-excursion
|
||||||
(string-append out "/lib/gcc/"
|
(string-append out "/lib/gcc/"
|
||||||
,(boot-triplet)
|
,(boot-triplet)
|
||||||
"/" ,(package-version gcc))
|
"/" ,(package-version gcc))
|
||||||
(symlink "libgcc.a" "libgcc_eh.a"))))
|
(symlink "libgcc.a" "libgcc_eh.a"))
|
||||||
,phases))))))
|
#t))))))))
|
||||||
|
|
||||||
(inputs `(("gmp-source" ,(package-source gmp-6.0))
|
(inputs `(("gmp-source" ,(package-source gmp-6.0))
|
||||||
("mpfr-source" ,(package-source mpfr))
|
("mpfr-source" ,(package-source mpfr))
|
||||||
|
@ -332,7 +317,8 @@
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "Configure"
|
(substitute* "Configure"
|
||||||
(("^libswanted=(.*)pthread" _ before)
|
(("^libswanted=(.*)pthread" _ before)
|
||||||
(string-append "libswanted=" before)))))))
|
(string-append "libswanted=" before)))
|
||||||
|
#t))))
|
||||||
;; Do not configure with '-Dusethreads' since pthread
|
;; Do not configure with '-Dusethreads' since pthread
|
||||||
;; support is missing.
|
;; support is missing.
|
||||||
((#:configure-flags configure-flags)
|
((#:configure-flags configure-flags)
|
||||||
|
@ -512,32 +498,33 @@ the bootstrap environment."
|
||||||
"--enable-obsolete-rpc")
|
"--enable-obsolete-rpc")
|
||||||
,flags))
|
,flags))
|
||||||
((#:phases phases)
|
((#:phases phases)
|
||||||
`(alist-cons-before
|
`(modify-phases ,phases
|
||||||
'configure 'pre-configure
|
(add-before 'configure 'pre-configure
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
;; Don't clobber CPATH with the bootstrap libc.
|
;; Don't clobber CPATH with the bootstrap libc.
|
||||||
(setenv "NATIVE_CPATH" (getenv "CPATH"))
|
(setenv "NATIVE_CPATH" (getenv "CPATH"))
|
||||||
(unsetenv "CPATH")
|
(unsetenv "CPATH")
|
||||||
|
|
||||||
;; Tell 'libpthread' where to find 'libihash' on Hurd systems.
|
;; Tell 'libpthread' where to find 'libihash' on Hurd systems.
|
||||||
,@(if (hurd-triplet? (%current-system))
|
,@(if (hurd-triplet? (%current-system))
|
||||||
`((substitute* "libpthread/Makefile"
|
`((substitute* "libpthread/Makefile"
|
||||||
(("LDLIBS-pthread.so =.*")
|
(("LDLIBS-pthread.so =.*")
|
||||||
(string-append "LDLIBS-pthread.so = "
|
(string-append "LDLIBS-pthread.so = "
|
||||||
(assoc-ref %build-inputs "kernel-headers")
|
(assoc-ref %build-inputs "kernel-headers")
|
||||||
"/lib/libihash.a\n"))))
|
"/lib/libihash.a\n"))))
|
||||||
'())
|
'())
|
||||||
|
|
||||||
;; 'rpcgen' needs native libc headers to be built.
|
;; 'rpcgen' needs native libc headers to be built.
|
||||||
(substitute* "sunrpc/Makefile"
|
(substitute* "sunrpc/Makefile"
|
||||||
(("sunrpc-CPPFLAGS =.*" all)
|
(("sunrpc-CPPFLAGS =.*" all)
|
||||||
(string-append "CPATH = $(NATIVE_CPATH)\n"
|
(string-append "CPATH = $(NATIVE_CPATH)\n"
|
||||||
"export CPATH\n"
|
"export CPATH\n"
|
||||||
all "\n"))))
|
all "\n")))
|
||||||
,phases)))))
|
#t)))))))
|
||||||
(propagated-inputs `(("kernel-headers" ,(kernel-headers-boot0))))
|
(propagated-inputs `(("kernel-headers" ,(kernel-headers-boot0))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("texinfo" ,texinfo-boot0)
|
`(("bison" ,bison-boot0)
|
||||||
|
("texinfo" ,texinfo-boot0)
|
||||||
("perl" ,perl-boot0)))
|
("perl" ,perl-boot0)))
|
||||||
(inputs
|
(inputs
|
||||||
`(;; The boot inputs. That includes the bootstrap libc. We don't want
|
`(;; The boot inputs. That includes the bootstrap libc. We don't want
|
||||||
|
@ -599,7 +586,9 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
triplet "-" tool)
|
triplet "-" tool)
|
||||||
tool))
|
tool))
|
||||||
'("ar" "ranlib"))
|
'("ar" "ranlib"))
|
||||||
(for-each wrap-program '("gcc" "g++")))))))
|
(for-each wrap-program '("gcc" "g++")))
|
||||||
|
|
||||||
|
#t))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("binutils" ,binutils)
|
`(("binutils" ,binutils)
|
||||||
("gcc" ,gcc)
|
("gcc" ,gcc)
|
||||||
|
@ -652,7 +641,8 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
;; Build only the tools.
|
;; Build only the tools.
|
||||||
(add-after 'unpack 'chdir
|
(add-after 'unpack 'chdir
|
||||||
(lambda _
|
(lambda _
|
||||||
(chdir "gettext-tools")))
|
(chdir "gettext-tools")
|
||||||
|
#t))
|
||||||
|
|
||||||
;; Some test programs require pthreads, which we don't have.
|
;; Some test programs require pthreads, which we don't have.
|
||||||
(add-before 'configure 'no-test-programs
|
(add-before 'configure 'no-test-programs
|
||||||
|
@ -923,14 +913,13 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
(define grep-final
|
(define grep-final
|
||||||
;; The final grep. Gzip holds a reference to it (via zgrep), so it must be
|
;; The final grep. Gzip holds a reference to it (via zgrep), so it must be
|
||||||
;; built before gzip.
|
;; built before gzip.
|
||||||
(package-with-bootstrap-guile
|
(let ((grep (package-with-bootstrap-guile
|
||||||
(package-with-explicit-inputs (package
|
(package-with-explicit-inputs grep %boot5-inputs
|
||||||
(inherit grep)
|
(current-source-location)
|
||||||
(inputs '()) ;no PCRE support
|
#:guile guile-final))))
|
||||||
(native-inputs `(("perl" ,perl-boot0))))
|
(package/inherit grep
|
||||||
%boot5-inputs
|
(inputs (alist-delete "pcre" (package-inputs grep)))
|
||||||
(current-source-location)
|
(native-inputs `(("perl" ,perl-boot0))))))
|
||||||
#:guile guile-final)))
|
|
||||||
|
|
||||||
(define %boot6-inputs
|
(define %boot6-inputs
|
||||||
;; Now use the final Coreutils.
|
;; Now use the final Coreutils.
|
||||||
|
@ -938,6 +927,14 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
("grep" ,grep-final)
|
("grep" ,grep-final)
|
||||||
,@%boot5-inputs))
|
,@%boot5-inputs))
|
||||||
|
|
||||||
|
(define sed-final
|
||||||
|
;; The final sed.
|
||||||
|
(let ((sed (package-with-bootstrap-guile
|
||||||
|
(package-with-explicit-inputs sed %boot6-inputs
|
||||||
|
(current-source-location)
|
||||||
|
#:guile guile-final))))
|
||||||
|
(package/inherit sed (native-inputs `(("perl" ,perl-boot0))))))
|
||||||
|
|
||||||
(define-public %final-inputs
|
(define-public %final-inputs
|
||||||
;; Final derivations used as implicit inputs by 'gnu-build-system'. We
|
;; Final derivations used as implicit inputs by 'gnu-build-system'. We
|
||||||
;; still use 'package-with-bootstrap-guile' so that the bootstrap tools are
|
;; still use 'package-with-bootstrap-guile' so that the bootstrap tools are
|
||||||
|
@ -956,9 +953,9 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||||
("file" ,file)
|
("file" ,file)
|
||||||
("diffutils" ,diffutils)
|
("diffutils" ,diffutils)
|
||||||
("patch" ,patch)
|
("patch" ,patch)
|
||||||
("sed" ,sed)
|
|
||||||
("findutils" ,findutils)
|
("findutils" ,findutils)
|
||||||
("gawk" ,gawk)))
|
("gawk" ,gawk)))
|
||||||
|
("sed" ,sed-final)
|
||||||
("grep" ,grep-final)
|
("grep" ,grep-final)
|
||||||
("coreutils" ,coreutils-final)
|
("coreutils" ,coreutils-final)
|
||||||
("make" ,gnu-make-final)
|
("make" ,gnu-make-final)
|
||||||
|
@ -1029,7 +1026,8 @@ COREUTILS-FINAL vs. COREUTILS, etc."
|
||||||
"libc-debug")))
|
"libc-debug")))
|
||||||
(union-build (assoc-ref %outputs "static")
|
(union-build (assoc-ref %outputs "static")
|
||||||
(list (assoc-ref %build-inputs
|
(list (assoc-ref %build-inputs
|
||||||
"libc-static")))))))
|
"libc-static")))
|
||||||
|
#t))))
|
||||||
|
|
||||||
(native-search-paths (package-native-search-paths gcc))
|
(native-search-paths (package-native-search-paths gcc))
|
||||||
(search-paths (package-search-paths gcc))
|
(search-paths (package-search-paths gcc))
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||||
;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
|
||||||
;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2015, 2017, 2018 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2015, 2017, 2018 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
|
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
|
||||||
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
|
@ -13,7 +13,7 @@
|
||||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2016 David Craven <david@craven.ch>
|
;;; Copyright © 2016 David Craven <david@craven.ch>
|
||||||
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
|
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
|
||||||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
||||||
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||||
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
|
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
|
||||||
|
@ -22,6 +22,7 @@
|
||||||
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
||||||
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
|
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
|
||||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||||
|
;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -97,9 +98,8 @@
|
||||||
,@(if (%current-target-system)
|
,@(if (%current-target-system)
|
||||||
`((setenv "CHOST" ,(%current-target-system)))
|
`((setenv "CHOST" ,(%current-target-system)))
|
||||||
'())
|
'())
|
||||||
(zero?
|
(invoke "./configure"
|
||||||
(system* "./configure"
|
(string-append "--prefix=" out))))))))
|
||||||
(string-append "--prefix=" out)))))))))
|
|
||||||
(home-page "https://zlib.net/")
|
(home-page "https://zlib.net/")
|
||||||
(synopsis "Compression library")
|
(synopsis "Compression library")
|
||||||
(description
|
(description
|
||||||
|
@ -127,7 +127,7 @@ in compression.")
|
||||||
(lambda _ (chdir "contrib/minizip") #t))
|
(lambda _ (chdir "contrib/minizip") #t))
|
||||||
(add-after 'enter-source 'autoreconf
|
(add-after 'enter-source 'autoreconf
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "autoreconf" "-vif")))))))
|
(invoke "autoreconf" "-vif"))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("autoconf" ,autoconf)
|
||||||
("automake" ,automake)
|
("automake" ,automake)
|
||||||
|
@ -184,7 +184,7 @@ utility. Instead of being written in Java, FastJar is written in C.")
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'autoconf
|
(add-after 'unpack 'autoconf
|
||||||
(lambda _ (zero? (system* "sh" "autoreconf" "-vfi")))))))
|
(lambda _ (invoke "sh" "autoreconf" "-vfi"))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("autoconf" ,autoconf)
|
||||||
("automake" ,automake)
|
("automake" ,automake)
|
||||||
|
@ -201,14 +201,14 @@ adding and extracting files to/from a tar archive.")
|
||||||
(define-public gzip
|
(define-public gzip
|
||||||
(package
|
(package
|
||||||
(name "gzip")
|
(name "gzip")
|
||||||
(version "1.8")
|
(version "1.9")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/gzip/gzip-"
|
(uri (string-append "mirror://gnu/gzip/gzip-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1lxv3p4iyx7833mlihkn5wfwmz4cys5nybwpz3dfawag8kn6f5zz"))))
|
"16h8g4acy7fgfxcjacr3wijjsnixwsfd2jhz3zwdi2qrzi262l5f"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(synopsis "General file (de)compression (using lzw)")
|
(synopsis "General file (de)compression (using lzw)")
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -251,35 +251,48 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
(lambda* (#:key target #:allow-other-keys)
|
(lambda* (#:key target #:allow-other-keys)
|
||||||
(if ,(%current-target-system)
|
(when ,(%current-target-system)
|
||||||
;; Cross-compilation: use the cross tools.
|
;; Cross-compilation: use the cross tools.
|
||||||
(substitute* (find-files "." "Makefile")
|
(substitute* (find-files "." "Makefile")
|
||||||
(("CC=.*$")
|
(("CC=.*$")
|
||||||
(string-append "CC = " target "-gcc\n"))
|
(string-append "CC = " target "-gcc\n"))
|
||||||
(("AR=.*$")
|
(("AR=.*$")
|
||||||
(string-append "AR = " target "-ar\n"))
|
(string-append "AR = " target "-ar\n"))
|
||||||
(("RANLIB=.*$")
|
(("RANLIB=.*$")
|
||||||
(string-append "RANLIB = " target "-ranlib\n"))
|
(string-append "RANLIB = " target "-ranlib\n"))
|
||||||
(("^all:(.*)test" _ prerequisites)
|
(("^all:(.*)test" _ prerequisites)
|
||||||
;; Remove 'all' -> 'test' dependency.
|
;; Remove 'all' -> 'test' dependency.
|
||||||
(string-append "all:" prerequisites "\n")))
|
(string-append "all:" prerequisites "\n"))))
|
||||||
#t)))
|
#t))
|
||||||
(add-before 'build 'build-shared-lib
|
(add-before 'build 'build-shared-lib
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(patch-makefile-SHELL "Makefile-libbz2_so")
|
(patch-makefile-SHELL "Makefile-libbz2_so")
|
||||||
(zero? (system* "make" "-f" "Makefile-libbz2_so"))))
|
(invoke "make" "-f" "Makefile-libbz2_so")))
|
||||||
(add-after 'install 'install-shared-lib
|
(add-after 'install 'install-shared-lib
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
;; The Makefile above does not have an 'install' target, nor does
|
||||||
|
;; it create all the (un)versioned symlinks, so we handle it here.
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(libdir (string-append out "/lib")))
|
(libdir (string-append out "/lib"))
|
||||||
(for-each (lambda (file)
|
;; Find the actual library (e.g. "libbz2.so.1.0.6").
|
||||||
(let ((base (basename file)))
|
(lib (string-drop
|
||||||
(format #t "installing `~a' to `~a'~%"
|
(car (find-files
|
||||||
base libdir)
|
"."
|
||||||
(copy-file file
|
(lambda (file stat)
|
||||||
(string-append libdir "/" base))))
|
(and (string-prefix? "./libbz2.so" file)
|
||||||
(find-files "." "^libbz2\\.so")))
|
(eq? 'regular (stat:type stat))))))
|
||||||
#t))
|
2))
|
||||||
|
(soversion (string-drop lib (string-length "libbz2.so."))))
|
||||||
|
(install-file lib libdir)
|
||||||
|
(with-directory-excursion libdir
|
||||||
|
;; Create symlinks libbz2.so.1 -> libbz2.so.1.0, etc.
|
||||||
|
(let loop ((base "libbz2.so")
|
||||||
|
(numbers (string-split soversion #\.)))
|
||||||
|
(unless (null? numbers)
|
||||||
|
(let ((so-file (string-append base "." (car numbers))))
|
||||||
|
(symlink so-file base)
|
||||||
|
(loop so-file (cdr numbers))))))
|
||||||
|
#t)))
|
||||||
(add-after 'install-shared-lib 'patch-scripts
|
(add-after 'install-shared-lib 'patch-scripts
|
||||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out")))
|
(let* ((out (assoc-ref outputs "out")))
|
||||||
|
@ -476,14 +489,14 @@ some compression ratio).")
|
||||||
(define-public lzip
|
(define-public lzip
|
||||||
(package
|
(package
|
||||||
(name "lzip")
|
(name "lzip")
|
||||||
(version "1.19")
|
(version "1.20")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://savannah/lzip/lzip-"
|
(uri (string-append "mirror://savannah/lzip/lzip-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1abbch762gv8rjr579q3qyyk6c80plklbv2mw4x0vg71dgsw9bgz"))))
|
"0319q59kb8g324wnj7xzbr7vvlx5bcs13lr34j0zb3kqlyjq2fy9"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "https://www.nongnu.org/lzip/lzip.html")
|
(home-page "https://www.nongnu.org/lzip/lzip.html")
|
||||||
(synopsis "Lossless data compressor based on the LZMA algorithm")
|
(synopsis "Lossless data compressor based on the LZMA algorithm")
|
||||||
|
@ -647,7 +660,7 @@ decompression of some loosely related file formats used by Microsoft.")
|
||||||
(define-public perl-compress-raw-bzip2
|
(define-public perl-compress-raw-bzip2
|
||||||
(package
|
(package
|
||||||
(name "perl-compress-raw-bzip2")
|
(name "perl-compress-raw-bzip2")
|
||||||
(version "2.074")
|
(version "2.081")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -655,7 +668,7 @@ decompression of some loosely related file formats used by Microsoft.")
|
||||||
"Compress-Raw-Bzip2-" version ".tar.gz"))
|
"Compress-Raw-Bzip2-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0b5jwqf15zr787acnx8sfyy2zavdd7gfkd98n1dgy8fs6r8yb8a4"))))
|
"081mpkjy688lg48997fqh3d7ja12vazmz02fw84495civg4vb4l6"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
;; TODO: Use our bzip2 package.
|
;; TODO: Use our bzip2 package.
|
||||||
(home-page "http://search.cpan.org/dist/Compress-Raw-Bzip2")
|
(home-page "http://search.cpan.org/dist/Compress-Raw-Bzip2")
|
||||||
|
@ -667,7 +680,7 @@ compression library.")
|
||||||
(define-public perl-compress-raw-zlib
|
(define-public perl-compress-raw-zlib
|
||||||
(package
|
(package
|
||||||
(name "perl-compress-raw-zlib")
|
(name "perl-compress-raw-zlib")
|
||||||
(version "2.076")
|
(version "2.081")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -675,7 +688,7 @@ compression library.")
|
||||||
"Compress-Raw-Zlib-" version ".tar.gz"))
|
"Compress-Raw-Zlib-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1al2h0i6mspldmlf5c09fy5a4j8swsxd31v6zi8zx9iyqk1lw7in"))))
|
"06rsm9ahp20xfyvd3jc69sd0k8vqysryxc6apzdbn96jbcsdwmp1"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("zlib" ,zlib)))
|
`(("zlib" ,zlib)))
|
||||||
|
@ -702,7 +715,7 @@ compression library.")
|
||||||
(define-public perl-io-compress
|
(define-public perl-io-compress
|
||||||
(package
|
(package
|
||||||
(name "perl-io-compress")
|
(name "perl-io-compress")
|
||||||
(version "2.074")
|
(version "2.081")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -710,11 +723,11 @@ compression library.")
|
||||||
"IO-Compress-" version ".tar.gz"))
|
"IO-Compress-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1wlpy2026djfmq0bjync531yq6s695jf7bcnpvjphrasi776igdl"))))
|
"1na66ns1g3nni0m9q5494ym4swr21hfgpv88mw8wbj2daiswf4aj"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("perl-compress-raw-zlib" ,perl-compress-raw-zlib) ; >=2.074
|
`(("perl-compress-raw-zlib" ,perl-compress-raw-zlib) ; >=2.081
|
||||||
("perl-compress-raw-bzip2" ,perl-compress-raw-bzip2))) ; >=2.074
|
("perl-compress-raw-bzip2" ,perl-compress-raw-bzip2))) ; >=2.081
|
||||||
(home-page "http://search.cpan.org/dist/IO-Compress")
|
(home-page "http://search.cpan.org/dist/IO-Compress")
|
||||||
(synopsis "IO Interface to compressed files/buffers")
|
(synopsis "IO Interface to compressed files/buffers")
|
||||||
(description "IO-Compress provides a Perl interface to allow reading and
|
(description "IO-Compress provides a Perl interface to allow reading and
|
||||||
|
@ -742,7 +755,7 @@ writing of compressed data created with the zlib and bzip2 libraries.")
|
||||||
(string-append "prefix=" (assoc-ref %outputs "out")))
|
(string-append "prefix=" (assoc-ref %outputs "out")))
|
||||||
#:phases (modify-phases %standard-phases
|
#:phases (modify-phases %standard-phases
|
||||||
(delete 'configure)))) ; no configure script
|
(delete 'configure)))) ; no configure script
|
||||||
(home-page "http://www.lz4.org")
|
(home-page "https://www.lz4.org")
|
||||||
(synopsis "Compression algorithm focused on speed")
|
(synopsis "Compression algorithm focused on speed")
|
||||||
(description "LZ4 is a lossless compression algorithm, providing
|
(description "LZ4 is a lossless compression algorithm, providing
|
||||||
compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an
|
compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an
|
||||||
|
@ -843,6 +856,23 @@ systems where low overhead is needed. This package allows you to create and
|
||||||
extract such file systems.")
|
extract such file systems.")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
;; We need this for building squashfs images with symlinks.
|
||||||
|
(define-public squashfs-tools-next
|
||||||
|
(let ((commit "fb33dfc32b131a1162dcf0e35bd88254ae10e265")
|
||||||
|
(revision "1"))
|
||||||
|
(package (inherit squashfs-tools)
|
||||||
|
(name "squashfs-tools-next")
|
||||||
|
(version (string-append "4.3-" revision (string-take commit 7)))
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/plougher/squashfs-tools.git")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1x2skf8hxzfch978nzx5mh46d4hhi6gl22270hiarjszsjk3bnsx")))))))
|
||||||
|
|
||||||
(define-public pigz
|
(define-public pigz
|
||||||
(package
|
(package
|
||||||
(name "pigz")
|
(name "pigz")
|
||||||
|
@ -925,10 +955,11 @@ tarballs.")
|
||||||
(base32
|
(base32
|
||||||
"1qxxsasvwbbbh6dl3138y9h3fg0q2v7xdk5jjc690bdg7g1wrj6n"))
|
"1qxxsasvwbbbh6dl3138y9h3fg0q2v7xdk5jjc690bdg7g1wrj6n"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet '(begin
|
||||||
;; This is a recursive submodule that is unnecessary for this
|
;; This is a recursive submodule that is
|
||||||
;; package, so delete it.
|
;; unnecessary for this package, so delete it.
|
||||||
'(delete-file-recursively "brotli/terryfy"))))
|
(delete-file-recursively "brotli/terryfy")
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("autoconf" ,autoconf)
|
||||||
|
@ -939,7 +970,7 @@ tarballs.")
|
||||||
(add-after 'unpack 'autogen
|
(add-after 'unpack 'autogen
|
||||||
(lambda _
|
(lambda _
|
||||||
(mkdir "m4")
|
(mkdir "m4")
|
||||||
(zero? (system* "autoreconf" "-vfi")))))))
|
(invoke "autoreconf" "-vfi"))))))
|
||||||
(home-page "https://github.com/bagder/libbrotli/")
|
(home-page "https://github.com/bagder/libbrotli/")
|
||||||
(synopsis "Implementation of the Brotli compression algorithm")
|
(synopsis "Implementation of the Brotli compression algorithm")
|
||||||
(description
|
(description
|
||||||
|
@ -987,7 +1018,9 @@ respectively, based on the reference implementation from Google.")
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(snippet
|
(snippet
|
||||||
;; This file isn't freely distributable and has no effect on building.
|
;; This file isn't freely distributable and has no effect on building.
|
||||||
'(delete-file "xdelta3/draft-korn-vcdiff.txt"))))
|
'(begin
|
||||||
|
(delete-file "xdelta3/draft-korn-vcdiff.txt")
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("autoconf" ,autoconf)
|
||||||
|
@ -996,9 +1029,9 @@ respectively, based on the reference implementation from Google.")
|
||||||
`(#:phases
|
`(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'enter-build-directory
|
(add-after 'unpack 'enter-build-directory
|
||||||
(lambda _ (chdir "xdelta3")))
|
(lambda _ (chdir "xdelta3") #t))
|
||||||
(add-after 'enter-build-directory 'autoconf
|
(add-after 'enter-build-directory 'autoconf
|
||||||
(lambda _ (zero? (system* "autoreconf" "-vfi")))))))
|
(lambda _ (invoke "autoreconf" "-vfi"))))))
|
||||||
(home-page "http://xdelta.org")
|
(home-page "http://xdelta.org")
|
||||||
(synopsis "Delta encoder for binary files")
|
(synopsis "Delta encoder for binary files")
|
||||||
(description "xdelta encodes only the differences between two binary files
|
(description "xdelta encodes only the differences between two binary files
|
||||||
|
@ -1159,7 +1192,7 @@ install: libbitshuffle.so
|
||||||
(add-before 'build 'build-jni
|
(add-before 'build 'build-jni
|
||||||
(lambda _
|
(lambda _
|
||||||
;; Rebuild one of the binaries we removed earlier
|
;; Rebuild one of the binaries we removed earlier
|
||||||
(system* "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
|
(invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
|
||||||
"-d" "lib")
|
"-d" "lib")
|
||||||
;; Link to the dynamic bitshuffle and snappy, not the static ones
|
;; Link to the dynamic bitshuffle and snappy, not the static ones
|
||||||
(substitute* "Makefile.common"
|
(substitute* "Makefile.common"
|
||||||
|
@ -1246,7 +1279,7 @@ compresser/decompresser.")
|
||||||
(add-before 'build 'build-jni
|
(add-before 'build 'build-jni
|
||||||
(lambda _
|
(lambda _
|
||||||
;; Rebuild one of the binaries we removed earlier
|
;; Rebuild one of the binaries we removed earlier
|
||||||
(system* "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
|
(invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
|
||||||
"-d" "lib")
|
"-d" "lib")
|
||||||
;; Link to the dynamic snappy, not the static ones
|
;; Link to the dynamic snappy, not the static ones
|
||||||
(substitute* "Makefile.common"
|
(substitute* "Makefile.common"
|
||||||
|
@ -1263,7 +1296,7 @@ compresser/decompresser.")
|
||||||
(("NAME\\): \\$\\(SNAPPY_OBJ\\)")
|
(("NAME\\): \\$\\(SNAPPY_OBJ\\)")
|
||||||
"NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
|
"NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
|
||||||
;; Finally we can run the Makefile to build the dynamic library.
|
;; Finally we can run the Makefile to build the dynamic library.
|
||||||
(zero? (system* "make" "native"))))
|
(invoke "make" "native")))
|
||||||
;; Once we have built the shared library, we need to place it in the
|
;; Once we have built the shared library, we need to place it in the
|
||||||
;; "build" directory so it can be added to the jar file.
|
;; "build" directory so it can be added to the jar file.
|
||||||
(add-after 'build-jni 'copy-jni
|
(add-after 'build-jni 'copy-jni
|
||||||
|
@ -1302,16 +1335,15 @@ compresser/decompresser.")
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda _
|
(lambda _
|
||||||
(define (test class)
|
(define (test class)
|
||||||
(zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH")
|
(invoke "java" "-cp" (string-append (getenv "CLASSPATH")
|
||||||
":build/classes"
|
":build/classes"
|
||||||
":build/test-classes")
|
":build/test-classes")
|
||||||
"-Dtest.resources.dir=src/test/resources"
|
"-Dtest.resources.dir=src/test/resources"
|
||||||
"org.testng.TestNG" "-testclass"
|
"org.testng.TestNG" "-testclass"
|
||||||
class)))
|
class))
|
||||||
(system* "ant" "compile-tests")
|
(invoke "ant" "compile-tests")
|
||||||
(and
|
(test "org.iq80.snappy.SnappyFramedStreamTest")
|
||||||
(test "org.iq80.snappy.SnappyFramedStreamTest")
|
(test "org.iq80.snappy.SnappyStreamTest")))
|
||||||
(test "org.iq80.snappy.SnappyStreamTest"))))
|
|
||||||
(add-before 'build 'remove-hadoop-dependency
|
(add-before 'build 'remove-hadoop-dependency
|
||||||
(lambda _
|
(lambda _
|
||||||
;; We don't have hadoop
|
;; We don't have hadoop
|
||||||
|
@ -1407,22 +1439,22 @@ It can be used as a replacement for the Apache @code{CBZip2InputStream} /
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
(lambda* (#:key system outputs #:allow-other-keys)
|
(lambda* (#:key system outputs #:allow-other-keys)
|
||||||
(zero? (system* "cp"
|
(invoke "cp"
|
||||||
(let ((system ,(or (%current-target-system)
|
(let ((system ,(or (%current-target-system)
|
||||||
(%current-system))))
|
(%current-system))))
|
||||||
(cond
|
(cond
|
||||||
((string-prefix? "x86_64" system)
|
((string-prefix? "x86_64" system)
|
||||||
"makefile.linux_amd64_asm")
|
"makefile.linux_amd64_asm")
|
||||||
((string-prefix? "i686" system)
|
((string-prefix? "i686" system)
|
||||||
"makefile.linux_x86_asm_gcc_4.X")
|
"makefile.linux_x86_asm_gcc_4.X")
|
||||||
(else
|
(else
|
||||||
"makefile.linux_any_cpu_gcc_4.X")))
|
"makefile.linux_any_cpu_gcc_4.X")))
|
||||||
"makefile.machine"))))
|
"makefile.machine")))
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda _
|
(lambda _
|
||||||
(and (zero? (system* "make" "test"))
|
(invoke "make" "test")
|
||||||
(zero? (system* "make" "test_7z"))
|
(invoke "make" "test_7z")
|
||||||
(zero? (system* "make" "test_7zr"))))))))
|
(invoke "make" "test_7zr"))))))
|
||||||
(inputs
|
(inputs
|
||||||
(let ((system (or (%current-target-system)
|
(let ((system (or (%current-target-system)
|
||||||
(%current-system))))
|
(%current-system))))
|
||||||
|
@ -1455,7 +1487,9 @@ handles the 7z format which features very high compression ratios.")
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Remove pre-compiled object.
|
;; Remove pre-compiled object.
|
||||||
'(delete-file "gzstream.o"))))
|
'(begin
|
||||||
|
(delete-file "gzstream.o")
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:test-target "test"
|
`(#:test-target "test"
|
||||||
|
@ -1492,7 +1526,9 @@ functionality in a C++ iostream.")
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Delete irrelevant pre-compiled binaries.
|
;; Delete irrelevant pre-compiled binaries.
|
||||||
'(for-each delete-file (find-files "." "\\.exe$")))))
|
'(begin
|
||||||
|
(for-each delete-file (find-files "." "\\.exe$"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -1601,7 +1637,7 @@ or junctions, and always follows hard links.")
|
||||||
#t))
|
#t))
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "./run-tests.sh")))))))
|
(invoke "./run-tests.sh"))))))
|
||||||
(home-page "https://github.com/twogood/unshield")
|
(home-page "https://github.com/twogood/unshield")
|
||||||
(synopsis "Extract CAB files from InstallShield installers")
|
(synopsis "Extract CAB files from InstallShield installers")
|
||||||
(description
|
(description
|
||||||
|
@ -1667,7 +1703,7 @@ speed.")
|
||||||
(delete 'configure) ; no configure script
|
(delete 'configure) ; no configure script
|
||||||
(add-before 'check 'compile-tests
|
(add-before 'check 'compile-tests
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
(zero? (apply system* "make" "tests" make-flags))))
|
(apply invoke "make" "tests" make-flags)))
|
||||||
(add-after 'install 'install-documentation
|
(add-after 'install 'install-documentation
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
@ -1711,14 +1747,11 @@ the actual decompression, the other input and output.")
|
||||||
(list "-f" "unix/Makefile"
|
(list "-f" "unix/Makefile"
|
||||||
(string-append "prefix=" out)
|
(string-append "prefix=" out)
|
||||||
(string-append "MANDIR=" out "/share/man/man1")))
|
(string-append "MANDIR=" out "/share/man/man1")))
|
||||||
#:modules ((guix build gnu-build-system)
|
|
||||||
(guix build utils)
|
|
||||||
(srfi srfi-1))
|
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace 'build
|
(replace 'build
|
||||||
(lambda* (#:key (make-flags '()) #:allow-other-keys)
|
(lambda* (#:key (make-flags '()) #:allow-other-keys)
|
||||||
(zero? (apply system* "make" "generic_gcc" make-flags))))
|
(apply invoke "make" "generic_gcc" make-flags)))
|
||||||
(delete 'configure))))
|
(delete 'configure))))
|
||||||
(home-page "http://www.info-zip.org/Zip.html")
|
(home-page "http://www.info-zip.org/Zip.html")
|
||||||
(synopsis "Compression and file packing utility")
|
(synopsis "Compression and file packing utility")
|
||||||
|
@ -1740,7 +1773,6 @@ Compression ratios of 2:1 to 3:1 are common for text files.")
|
||||||
(define-public unzip
|
(define-public unzip
|
||||||
(package (inherit zip)
|
(package (inherit zip)
|
||||||
(name "unzip")
|
(name "unzip")
|
||||||
(replacement unzip/fixed)
|
|
||||||
(version "6.0")
|
(version "6.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
|
@ -1768,13 +1800,20 @@ Compression ratios of 2:1 to 3:1 are common for text files.")
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases (modify-phases %standard-phases
|
`(#:phases (modify-phases %standard-phases
|
||||||
(delete 'configure)
|
(delete 'configure)
|
||||||
|
(add-after 'unpack 'fortify
|
||||||
|
(lambda _
|
||||||
|
;; Mitigate CVE-2018-1000035, an exploitable buffer overflow.
|
||||||
|
;; This environment variable is recommended in 'unix/Makefile'
|
||||||
|
;; for passing flags to the C compiler.
|
||||||
|
(setenv "LOCAL_UNZIP" "-D_FORTIFY_SOURCE=1")
|
||||||
|
#t))
|
||||||
(replace 'build
|
(replace 'build
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
(zero? (apply system* "make"
|
(apply invoke "make"
|
||||||
`("-j" ,(number->string
|
`("-j" ,(number->string
|
||||||
(parallel-job-count))
|
(parallel-job-count))
|
||||||
,@make-flags
|
,@make-flags
|
||||||
"generic_gcc"))))))
|
"generic_gcc")))))
|
||||||
#:make-flags (list "-f" "unix/Makefile"
|
#:make-flags (list "-f" "unix/Makefile"
|
||||||
(string-append "prefix=" %output)
|
(string-append "prefix=" %output)
|
||||||
(string-append "MANDIR=" %output "/share/man/man1"))))
|
(string-append "MANDIR=" %output "/share/man/man1"))))
|
||||||
|
@ -1791,20 +1830,6 @@ recreates the stored directory structure by default.")
|
||||||
(license (license:non-copyleft "file://LICENSE"
|
(license (license:non-copyleft "file://LICENSE"
|
||||||
"See LICENSE in the distribution."))))
|
"See LICENSE in the distribution."))))
|
||||||
|
|
||||||
(define unzip/fixed
|
|
||||||
(package/inherit unzip
|
|
||||||
(arguments
|
|
||||||
(substitute-keyword-arguments (package-arguments unzip)
|
|
||||||
((#:phases phases)
|
|
||||||
`(modify-phases ,phases
|
|
||||||
(add-after 'unpack 'fortify
|
|
||||||
(lambda _
|
|
||||||
;; Mitigate CVE-2018-1000035, an exploitable buffer overflow.
|
|
||||||
;; This environment variable is recommended in 'unix/Makefile'
|
|
||||||
;; for passing flags to the C compiler.
|
|
||||||
(setenv "LOCAL_UNZIP" "-D_FORTIFY_SOURCE=1")
|
|
||||||
#t))))))))
|
|
||||||
|
|
||||||
(define-public zziplib
|
(define-public zziplib
|
||||||
(package
|
(package
|
||||||
(name "zziplib")
|
(name "zziplib")
|
||||||
|
@ -2151,3 +2176,75 @@ with @code{deflate} but offers more dense compression.
|
||||||
|
|
||||||
The specification of the Brotli Compressed Data Format is defined in RFC 7932.")
|
The specification of the Brotli Compressed Data Format is defined in RFC 7932.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public ucl
|
||||||
|
(package
|
||||||
|
(name "ucl")
|
||||||
|
(version "1.03")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "http://www.oberhumer.com/opensource/"
|
||||||
|
name "/download/" name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0j036lkwsxvm15gr29n8wn07cqq79dswjs9k54939ms5zngjjrdq"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(home-page "http://www.oberhumer.com/opensource/ucl/")
|
||||||
|
(synopsis "Portable lossless data compression library")
|
||||||
|
(description "UCL implements a number of compression algorithms that
|
||||||
|
achieve an excellent compression ratio while allowing fast decompression.
|
||||||
|
Decompression requires no additional memory.
|
||||||
|
|
||||||
|
Compared to LZO, the UCL algorithms achieve a better compression ratio but
|
||||||
|
decompression is a little bit slower.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public upx
|
||||||
|
(package
|
||||||
|
(name "upx")
|
||||||
|
(version "3.94")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://github.com/upx/upx/releases/download/v"
|
||||||
|
version "/" name "-" version "-src.tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"08anybdliqsbsl6x835iwzljahnm9i7v26icdjkcv33xmk6p5vw1"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(native-inputs `(("perl" ,perl)
|
||||||
|
("ucl" ,ucl)))
|
||||||
|
(inputs `(("zlib" ,zlib)))
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags
|
||||||
|
(list "all"
|
||||||
|
;; CHECK_WHITESPACE does not seem to work.
|
||||||
|
;; See https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/upx.
|
||||||
|
"CHECK_WHITESPACE=true")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(delete 'configure)
|
||||||
|
(delete 'check)
|
||||||
|
(delete 'install)
|
||||||
|
(add-before 'build 'patch-exec-bin-sh
|
||||||
|
(lambda _
|
||||||
|
(substitute* (find-files "Makefile")
|
||||||
|
(("/bin/sh") (which "sh")))
|
||||||
|
(substitute* "src/Makefile"
|
||||||
|
(("/bin/sh") (which "sh")))
|
||||||
|
#t))
|
||||||
|
(add-after 'build 'install-upx
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bin (string-append out "/bin")))
|
||||||
|
(mkdir-p bin)
|
||||||
|
(copy-file "src/upx.out" (string-append bin "/upx")))
|
||||||
|
#t))
|
||||||
|
)))
|
||||||
|
(home-page "https://upx.github.io/")
|
||||||
|
(synopsis "Compression tool for executables")
|
||||||
|
(description
|
||||||
|
"The Ultimate Packer for eXecutables (UPX) is an executable file
|
||||||
|
compressor. UPX typically reduces the file size of programs and shared
|
||||||
|
libraries by around 50%--70%, thus reducing disk space, network load times,
|
||||||
|
download times, and other distribution and storage costs.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
|
@ -67,7 +67,7 @@
|
||||||
("libdrm" ,libdrm)
|
("libdrm" ,libdrm)
|
||||||
("pkg-config" ,pkg-config)
|
("pkg-config" ,pkg-config)
|
||||||
("python" ,python)
|
("python" ,python)
|
||||||
("xproto" ,xproto)))
|
("xorgproto" ,xorgproto)))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags (list
|
`(#:make-flags (list
|
||||||
"CC=gcc"
|
"CC=gcc"
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -43,7 +43,7 @@
|
||||||
(define-public connman
|
(define-public connman
|
||||||
(package
|
(package
|
||||||
(name "connman")
|
(name "connman")
|
||||||
(version "1.35")
|
(version "1.36")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -51,7 +51,7 @@
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1apj5j25kj7v1bsfv3nh54aiq873nfrsjfbj85p5qm3ihfwxxmv6"))))
|
"0x00dq5c2frz06md3g5y0jh5kbcj2hrfl5qjcqga8gs4ri0xp2f7"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
|
|
|
@ -29,7 +29,9 @@
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
|
#:use-module (gnu packages code)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages tls))
|
#:use-module (gnu packages tls))
|
||||||
|
|
||||||
|
@ -124,3 +126,148 @@ unified access to TCP/UDP sockets, serial ports, console, and files streams.
|
||||||
It also allows a server application to wait for any activity on any
|
It also allows a server application to wait for any activity on any
|
||||||
combination of these streams.")
|
combination of these streams.")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public xsimd
|
||||||
|
(package
|
||||||
|
(name "xsimd")
|
||||||
|
(version "4.1.2")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/QuantStack/xsimd/archive/"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0x05l4xpqr9b66sm6lkf48n6x7999ks921x6k2hzkkg6mh3gqd46"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))))
|
||||||
|
(home-page "https://github.com/QuantStack/xsimd")
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:test-target "xtest"))
|
||||||
|
(native-inputs
|
||||||
|
`(("googletest" ,googletest)))
|
||||||
|
(synopsis "C++ wrappers for SIMD intrinsics and math implementations")
|
||||||
|
(description "xsimd provides a unified means for using SIMD features for
|
||||||
|
library authors. Namely, it enables manipulation of batches of numbers with
|
||||||
|
the same arithmetic operators as for single values. It also provides
|
||||||
|
accelerated implementation of common mathematical functions operating on
|
||||||
|
batches.")
|
||||||
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public fifo-map
|
||||||
|
(let* ((commit "0dfbf5dacbb15a32c43f912a7e66a54aae39d0f9")
|
||||||
|
(revision "0")
|
||||||
|
(version (git-version "1.1.1" revision commit)))
|
||||||
|
(package
|
||||||
|
(name "fifo-map")
|
||||||
|
(version version)
|
||||||
|
(home-page "https://github.com/nlohmann/fifo_map")
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url home-page)
|
||||||
|
(commit commit)))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0pi77b75kp0l7z454ihcd14nzpi3nc5m4nyjbsgy5f9bw3676196"))
|
||||||
|
(patches (search-patches "fifo-map-remove-catch.hpp.patch"
|
||||||
|
"fifo-map-fix-flags-for-gcc.patch"))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet '(delete-file-recursively "./test/thirdparty"))))
|
||||||
|
(native-inputs
|
||||||
|
`(("catch2" ,catch-framework2)))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(replace 'check
|
||||||
|
(lambda _
|
||||||
|
(invoke "./unit")))
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(inc (string-append out "/include/fifo_map")))
|
||||||
|
(with-directory-excursion
|
||||||
|
(string-append "../" ,name "-" ,version "-checkout")
|
||||||
|
(install-file "src/fifo_map.hpp" inc)
|
||||||
|
#t)))))))
|
||||||
|
(synopsis "FIFO-ordered associative container for C++")
|
||||||
|
(description "Fifo_map is a C++ header only library for associative
|
||||||
|
container which uses the order in which keys were inserted to the container
|
||||||
|
as ordering relation.")
|
||||||
|
(license license:expat))))
|
||||||
|
|
||||||
|
(define-public json-modern-cxx
|
||||||
|
(package
|
||||||
|
(name "json-modern-cxx")
|
||||||
|
(version "3.1.2")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/nlohmann/json/archive/v" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0m5fhdpx2qll933db2nsi30nns3cifavzvijzz6mxhdkpmngmzz8"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
'(begin
|
||||||
|
(delete-file-recursively "./third_party")
|
||||||
|
(delete-file-recursively "./test/thirdparty")
|
||||||
|
(delete-file-recursively "./benchmarks/thirdparty")
|
||||||
|
;; Splits catch and fifo_map
|
||||||
|
(with-directory-excursion "test/src"
|
||||||
|
(let ((files (find-files "." ".*\\.cpp")))
|
||||||
|
(substitute* files
|
||||||
|
(("#include ?\"(catch.hpp)\"" all catch-hpp)
|
||||||
|
(string-append "#include <catch/" catch-hpp ">")))
|
||||||
|
(substitute* files
|
||||||
|
(("#include ?\"(fifo_map.hpp)\"" all fifo-map-hpp)
|
||||||
|
(string-append
|
||||||
|
"#include <fifo_map/" fifo-map-hpp ">")))))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("amalgamate" ,amalgamate)))
|
||||||
|
(inputs
|
||||||
|
`(("catch2" ,catch-framework2)
|
||||||
|
("fifo-map" ,fifo-map)))
|
||||||
|
(home-page "https://github.com/nlohmann/json")
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(synopsis "JSON parser and printer library for C++")
|
||||||
|
(description "JSON for Modern C++ is a C++ JSON library that provides
|
||||||
|
intutive syntax and trivial integration.")
|
||||||
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public xtl
|
||||||
|
(package
|
||||||
|
(name "xtl")
|
||||||
|
(version "0.4.8")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/QuantStack/xtl/archive/"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"05bcz9y590b77bxcip0k31rgsapmkwqi1smvsvc84zz7m87d4jvy"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))))
|
||||||
|
(native-inputs
|
||||||
|
`(("googletest" ,googletest)
|
||||||
|
("json-modern-cxx" ,json-modern-cxx)))
|
||||||
|
(arguments
|
||||||
|
`(#:configure-flags
|
||||||
|
'("-DBUILD_TESTS=ON")
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(replace 'check
|
||||||
|
(lambda* _
|
||||||
|
(with-directory-excursion "test"
|
||||||
|
(invoke "./test_xtl")
|
||||||
|
#t))))))
|
||||||
|
(home-page "https://github.com/QuantStack/xtl")
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(synopsis "C++ template library providing some basic tools")
|
||||||
|
(description "xtl is a C++ header-only template library providing basic
|
||||||
|
tools (containers, algorithms) used by other QuantStack packages.")
|
||||||
|
(license license:bsd-3)))
|
||||||
|
|
|
@ -36,7 +36,9 @@
|
||||||
#:use-module (gnu packages mpi)
|
#:use-module (gnu packages mpi)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages statistics)
|
#:use-module (gnu packages statistics)
|
||||||
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages web))
|
#:use-module (gnu packages web))
|
||||||
|
|
||||||
(define-public r-tidyverse
|
(define-public r-tidyverse
|
||||||
|
@ -167,21 +169,18 @@ such as copy/paste from an R session.")
|
||||||
(define-public r-callr
|
(define-public r-callr
|
||||||
(package
|
(package
|
||||||
(name "r-callr")
|
(name "r-callr")
|
||||||
(version "2.0.3")
|
(version "2.0.4")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "callr" version))
|
(uri (cran-uri "callr" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1k3mflgn10hcvy74y4pbigpv74zb66fz1phfd3c8isqmn88xbxzi"))))
|
"1053qqq632z94pqq2v5dynjpgyv1b1c8zvidmcllw7zn8zha8gqf"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-assertthat" ,r-assertthat)
|
`(("r-r6" ,r-r6)
|
||||||
("r-crayon" ,r-crayon)
|
("r-processx" ,r-processx)))
|
||||||
("r-debugme" ,r-debugme)
|
|
||||||
("r-r6" ,r-r6)
|
|
||||||
("r-testthat" ,r-testthat)))
|
|
||||||
(home-page "https://github.com/r-lib/callr#readme")
|
(home-page "https://github.com/r-lib/callr#readme")
|
||||||
(synopsis "Call R from R")
|
(synopsis "Call R from R")
|
||||||
(description
|
(description
|
||||||
|
@ -219,14 +218,14 @@ the embedded @code{RapidXML} C++ library.")
|
||||||
(define-public r-modelr
|
(define-public r-modelr
|
||||||
(package
|
(package
|
||||||
(name "r-modelr")
|
(name "r-modelr")
|
||||||
(version "0.1.1")
|
(version "0.1.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "modelr" version))
|
(uri (cran-uri "modelr" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1rqw0b583vp107zqp4h3wj51dvv4hb3wszfr1f5f48xassc53f95"))))
|
"09whg3q5xq6csbqwgwfwav09vda8vgady5j70sk52xcn232k363a"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-broom" ,r-broom)
|
`(("r-broom" ,r-broom)
|
||||||
|
@ -271,13 +270,13 @@ embedded @url{https://github.com/WizardMac/ReadStat,ReadStat} C library.")
|
||||||
(define-public r-amap
|
(define-public r-amap
|
||||||
(package
|
(package
|
||||||
(name "r-amap")
|
(name "r-amap")
|
||||||
(version "0.8-14")
|
(version "0.8-16")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "amap" version))
|
(uri (cran-uri "amap" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1dz37z9v4zvyvqrs4xvpfv468jwvpxav60qn2w0049bw8llj6xdl"))))
|
"1qnl2x98x64iaipkx5126rsddq2sx5ml43h75xyiyn30yvbmlxyk"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("gfortran" ,gfortran)))
|
`(("gfortran" ,gfortran)))
|
||||||
|
@ -316,14 +315,14 @@ and several other tools.")
|
||||||
(define-public r-abbyyr
|
(define-public r-abbyyr
|
||||||
(package
|
(package
|
||||||
(name "r-abbyyr")
|
(name "r-abbyyr")
|
||||||
(version "0.5.1")
|
(version "0.5.4")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "abbyyR" version))
|
(uri (cran-uri "abbyyR" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1s8zf18sh0s89vk3dl09fzrq50csmmfvmsanf5vfkv9n5lx6pklg"))))
|
"1jh1c1ad6mgw7brdh2isnza1qpjlfxnqr7jl76yd93axyfl76xjx"))))
|
||||||
(properties `((upstream-name . "abbyyR")))
|
(properties `((upstream-name . "abbyyR")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -427,13 +426,13 @@ error stream.")
|
||||||
(define-public r-rcpp
|
(define-public r-rcpp
|
||||||
(package
|
(package
|
||||||
(name "r-rcpp")
|
(name "r-rcpp")
|
||||||
(version "0.12.16")
|
(version "0.12.17")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "Rcpp" version))
|
(uri (cran-uri "Rcpp" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1rm8hcy72p1jvxikvmkwg20pjqmvmfvqb45lfghmddp2adp67qfl"))))
|
(base32 "08xg8h3w25sdb3xr18g9pa0x8cirkdgljqapxmw56ss1j9fc89s2"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "http://www.rcpp.org")
|
(home-page "http://www.rcpp.org")
|
||||||
(synopsis "Seamless R and C++ integration")
|
(synopsis "Seamless R and C++ integration")
|
||||||
|
@ -653,14 +652,14 @@ rows, dropping names) to see if the modified versions are identical.")
|
||||||
(define-public r-dendextend
|
(define-public r-dendextend
|
||||||
(package
|
(package
|
||||||
(name "r-dendextend")
|
(name "r-dendextend")
|
||||||
(version "1.7.0")
|
(version "1.8.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "dendextend" version))
|
(uri (cran-uri "dendextend" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1krvqadnnh53xx5ql7bwzxaif6a317jzbs1m00gnc6jnj03rfl5d"))))
|
"1virn3c232xwcq3d0hhkgjh5gpzl01s39iwii5gxcm9mnsxjzdrh"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-fpc" ,r-fpc)
|
`(("r-fpc" ,r-fpc)
|
||||||
|
@ -729,14 +728,14 @@ any subsequent lookup as it keeps the hash table in memory.")
|
||||||
(define-public r-ff
|
(define-public r-ff
|
||||||
(package
|
(package
|
||||||
(name "r-ff")
|
(name "r-ff")
|
||||||
(version "2.2-13")
|
(version "2.2-14")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "ff" version))
|
(uri (cran-uri "ff" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1nvd6kx46xzyc99a44mgynd94pvd2h495m5a7b1g67k5w2phiywb"))))
|
"1w724q4jpzbvzpilb2ifviaxkjgk9lzwxz9gksnvicbmfa20fqqw"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs `(("r-bit" ,r-bit)))
|
(propagated-inputs `(("r-bit" ,r-bit)))
|
||||||
(home-page "http://ff.r-forge.r-project.org/")
|
(home-page "http://ff.r-forge.r-project.org/")
|
||||||
|
@ -843,23 +842,26 @@ package also provides a C++ API, that works with or without Rcpp.")
|
||||||
(define-public r-ggally
|
(define-public r-ggally
|
||||||
(package
|
(package
|
||||||
(name "r-ggally")
|
(name "r-ggally")
|
||||||
(version "1.3.2")
|
(version "1.4.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "GGally" version))
|
(uri (cran-uri "GGally" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"02px7j28wzbhcgcwm2m0pxb6g7s5zvphl64ix55pkvag4m2ky57l"))))
|
"1zjmcc5bzagvy7c5cmdcl39xmx07fwi98yrj4i05w7y40kqcsiws"))))
|
||||||
(properties `((upstream-name . "GGally")))
|
(properties `((upstream-name . "GGally")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("libressl" ,libressl)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-ggplot2" ,r-ggplot2)
|
`(("r-ggplot2" ,r-ggplot2)
|
||||||
("r-gtable" ,r-gtable)
|
("r-gtable" ,r-gtable)
|
||||||
("r-plyr" ,r-plyr)
|
("r-plyr" ,r-plyr)
|
||||||
("r-progress" ,r-progress)
|
("r-progress" ,r-progress)
|
||||||
("r-rcolorbrewer" ,r-rcolorbrewer)
|
("r-rcolorbrewer" ,r-rcolorbrewer)
|
||||||
("r-reshape" ,r-reshape)))
|
("r-reshape" ,r-reshape)
|
||||||
|
("r-rlang" ,r-rlang)))
|
||||||
(home-page "https://ggobi.github.io/ggally")
|
(home-page "https://ggobi.github.io/ggally")
|
||||||
(synopsis "Extension to ggplot2")
|
(synopsis "Extension to ggplot2")
|
||||||
(description
|
(description
|
||||||
|
@ -1077,13 +1079,13 @@ by Li, Brown, Huang, and Bickel")
|
||||||
(define-public r-inline
|
(define-public r-inline
|
||||||
(package
|
(package
|
||||||
(name "r-inline")
|
(name "r-inline")
|
||||||
(version "0.3.14")
|
(version "0.3.15")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "inline" version))
|
(uri (cran-uri "inline" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0cf9vya9h4znwgp6s1nayqqmh6mwyw7jl0isk1nx4j2ijszxcd7x"))))
|
"0s4wssvpan189fijahknxq5s22ww9bzmdlmyhnra748r7khky17z"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://cran.r-project.org/web/packages/inline")
|
(home-page "https://cran.r-project.org/web/packages/inline")
|
||||||
(synopsis "Functions to inline C, C++, Fortran function calls from R")
|
(synopsis "Functions to inline C, C++, Fortran function calls from R")
|
||||||
|
@ -1122,14 +1124,14 @@ classes in the @code{stats4} package.")
|
||||||
(define-public r-emdbook
|
(define-public r-emdbook
|
||||||
(package
|
(package
|
||||||
(name "r-emdbook")
|
(name "r-emdbook")
|
||||||
(version "1.3.9")
|
(version "1.3.10")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "emdbook" version))
|
(uri (cran-uri "emdbook" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"09xbdyw8a4pvrsg3ryr8drby0njy4avc5wsjj4ffibdaicpchy69"))))
|
"0880cx6rqm9vgd2zxnd2k0igfl80gy7ak15w36clwlzavab59hmv"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-bbmle" ,r-bbmle)
|
`(("r-bbmle" ,r-bbmle)
|
||||||
|
@ -1234,14 +1236,14 @@ data). Weighted versions of MLE, MME and QME are available.")
|
||||||
(define-public r-energy
|
(define-public r-energy
|
||||||
(package
|
(package
|
||||||
(name "r-energy")
|
(name "r-energy")
|
||||||
(version "1.7-2")
|
(version "1.7-4")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "energy" version))
|
(uri (cran-uri "energy" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"19c7bgjnm4ggf7w5mk64c5shkma3sa9wc8x117iqv7pk1bvvyy3p"))))
|
"12skvlridfq4jd5mh0yxl79ps0zi2xnlh4hsdgxad0gm7qky8awd"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-boot" ,r-boot)
|
`(("r-boot" ,r-boot)
|
||||||
|
@ -1287,14 +1289,14 @@ George Marsaglia are included.")
|
||||||
(define-public r-ksamples
|
(define-public r-ksamples
|
||||||
(package
|
(package
|
||||||
(name "r-ksamples")
|
(name "r-ksamples")
|
||||||
(version "1.2-7")
|
(version "1.2-8")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "kSamples" version))
|
(uri (cran-uri "kSamples" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0f19rjngk0lg6s8c6h5l55qpxp8sl4vxj3kpi05cizzncny9b9bj"))))
|
"15d5q5vpp4wx5rk5kjxjdxpwc8mkq5sbdz8gi07iscrvhzb5rzfr"))))
|
||||||
(properties `((upstream-name . "kSamples")))
|
(properties `((upstream-name . "kSamples")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -1315,14 +1317,14 @@ samples.")
|
||||||
(define-public r-cvst
|
(define-public r-cvst
|
||||||
(package
|
(package
|
||||||
(name "r-cvst")
|
(name "r-cvst")
|
||||||
(version "0.2-1")
|
(version "0.2-2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "CVST" version))
|
(uri (cran-uri "CVST" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"17xacyi8cf37rr2xswx96qy7pwkaqq394awdlswykz3qlyzx4zx2"))))
|
"05l3yzkfrbds09ah9cdwn2sn4ryhq78lz33ryzrgkv176jc8qjw5"))))
|
||||||
(properties `((upstream-name . "CVST")))
|
(properties `((upstream-name . "CVST")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -1537,14 +1539,14 @@ Delaunay triangulation and convex hull computation.")
|
||||||
(define-public r-ddalpha
|
(define-public r-ddalpha
|
||||||
(package
|
(package
|
||||||
(name "r-ddalpha")
|
(name "r-ddalpha")
|
||||||
(version "1.3.2")
|
(version "1.3.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "ddalpha" version))
|
(uri (cran-uri "ddalpha" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1i2zcz20zy9xd42kdz09njbkq07mj2pp6f07z6dnwi5hrmvhbh9r"))))
|
"0g4iqhrz2gym05q40ih6srilyajw2l2mv46pchn65bc7hw4vkgrk"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-bh" ,r-bh)
|
`(("r-bh" ,r-bh)
|
||||||
|
@ -1774,14 +1776,14 @@ for certain use cases.")
|
||||||
(define-public r-ggrepel
|
(define-public r-ggrepel
|
||||||
(package
|
(package
|
||||||
(name "r-ggrepel")
|
(name "r-ggrepel")
|
||||||
(version "0.7.0")
|
(version "0.8.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "ggrepel" version))
|
(uri (cran-uri "ggrepel" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0g0qfm6g71rv27423c1x846ipilnj213knyzrcr09vrpxc87l618"))))
|
"1m3p84d6nh9mzzvxb82vgig3ngcvkz86rjwzl9a66ckdf5p611k3"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-ggplot2" ,r-ggplot2)
|
`(("r-ggplot2" ,r-ggplot2)
|
||||||
|
@ -1841,23 +1843,98 @@ can be computed between character vectors while taking proper care of encoding
|
||||||
or between integer vectors representing generic sequences.")
|
or between integer vectors representing generic sequences.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public r-jomo
|
||||||
|
(package
|
||||||
|
(name "r-jomo")
|
||||||
|
(version "2.6-2")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "jomo" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0zyqwa2y08asj9xqwnngh6da1b9cqcx8pzc9cxwrmgnxd5nnsjb7"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(propagated-inputs
|
||||||
|
`(("r-lme4" ,r-lme4)
|
||||||
|
("r-survival" ,r-survival)))
|
||||||
|
(home-page "https://cran.r-project.org/web/packages/jomo/")
|
||||||
|
(synopsis "Multilevel Joint Modelling Multiple Imputation")
|
||||||
|
(description
|
||||||
|
"Similarly to Schafer's package pan, jomo is a package for multilevel
|
||||||
|
joint modelling multiple imputation @url{Carpenter and Kenward (2013),
|
||||||
|
http://doi.org/10.1002/9781119942283}. Novel aspects of jomo are the
|
||||||
|
possibility of handling binary and categorical data through latent normal
|
||||||
|
variables, the option to use cluster-specific covariance matrices and to
|
||||||
|
impute compatibly with the substantive model.")
|
||||||
|
(license license:gpl2)))
|
||||||
|
|
||||||
|
(define-public r-pan
|
||||||
|
(package
|
||||||
|
(name "r-pan")
|
||||||
|
(version "1.4")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "pan" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1p3nigmhrnlch86g89hn7l0wvkifx3k9n59g0psi95yck43kza76"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(native-inputs `(("gfortran" ,gfortran)))
|
||||||
|
(home-page "https://cran.r-project.org/web/packages/pan/")
|
||||||
|
(synopsis "Multiple imputation for multivariate panel or clustered data")
|
||||||
|
(description
|
||||||
|
"This package implements multiple imputation for multivariate panel or
|
||||||
|
clustered data.")
|
||||||
|
(license license:gpl3)))
|
||||||
|
|
||||||
|
(define-public r-mitml
|
||||||
|
(package
|
||||||
|
(name "r-mitml")
|
||||||
|
(version "0.3-5")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "mitml" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1s888r9y2ri39b48h1iypps6lddqkqv3g31l2sjmi2pvyccfpkwb"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(propagated-inputs
|
||||||
|
`(("r-haven" ,r-haven)
|
||||||
|
("r-jomo" ,r-jomo)
|
||||||
|
("r-pan" ,r-pan)))
|
||||||
|
(home-page "https://cran.r-project.org/web/packages/mitml/")
|
||||||
|
(synopsis "Tools for multiple imputation in multilevel modeling")
|
||||||
|
(description
|
||||||
|
"This package provides tools for multiple imputation of missing data in
|
||||||
|
multilevel modeling. It includes a user-friendly interface to the packages
|
||||||
|
pan and jomo, and several functions for visualization, data management and the
|
||||||
|
analysis of multiply imputed data sets.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
(define-public r-mice
|
(define-public r-mice
|
||||||
(package
|
(package
|
||||||
(name "r-mice")
|
(name "r-mice")
|
||||||
(version "2.46.0")
|
(version "3.0.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "mice" version))
|
(uri (cran-uri "mice" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1gjvlk67zvgipfczsca8zqk97vg3sivv82hblsdwp14s7smhjcax"))))
|
"1p8a5ham90iaak4w17114pdnw535r2l9sxr402yrkc4gbwfbpdlq"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-lattice" ,r-lattice)
|
`(("r-broom" ,r-broom)
|
||||||
|
("r-dplyr" ,r-dplyr)
|
||||||
|
("r-lattice" ,r-lattice)
|
||||||
("r-mass" ,r-mass)
|
("r-mass" ,r-mass)
|
||||||
|
("r-mitml" ,r-mitml)
|
||||||
("r-nnet" ,r-nnet)
|
("r-nnet" ,r-nnet)
|
||||||
("r-rcpp" ,r-rcpp)
|
("r-rcpp" ,r-rcpp)
|
||||||
|
("r-rlang" ,r-rlang)
|
||||||
("r-rpart" ,r-rpart)
|
("r-rpart" ,r-rpart)
|
||||||
("r-survival" ,r-survival)))
|
("r-survival" ,r-survival)))
|
||||||
(home-page "https://cran.r-project.org/web/packages/mice/")
|
(home-page "https://cran.r-project.org/web/packages/mice/")
|
||||||
|
@ -1923,14 +2000,14 @@ programming} (SQP) based solver).")
|
||||||
(define-public r-hardyweinberg
|
(define-public r-hardyweinberg
|
||||||
(package
|
(package
|
||||||
(name "r-hardyweinberg")
|
(name "r-hardyweinberg")
|
||||||
(version "1.5.9")
|
(version "1.6.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "HardyWeinberg" version))
|
(uri (cran-uri "HardyWeinberg" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0qk3lly5qczn61rj0q9xzscppspvk238yjgr4p71pkzkjhiv40jz"))))
|
"16n8qanxx0p5ny5zqxafn8hwb1xv94y1wig1iql8as5a5qh8lwcz"))))
|
||||||
(properties `((upstream-name . "HardyWeinberg")))
|
(properties `((upstream-name . "HardyWeinberg")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
|
@ -1955,14 +2032,14 @@ acceptance regions, log-ratio plots and Q-Q plots.")
|
||||||
(define-public r-sm
|
(define-public r-sm
|
||||||
(package
|
(package
|
||||||
(name "r-sm")
|
(name "r-sm")
|
||||||
(version "2.2-5.4")
|
(version "2.2-5.5")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "sm" version))
|
(uri (cran-uri "sm" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0hnq5s2fv94gaj0nyqc1vjdjd64vsp9z23nqa8hxvjcaf996rwj9"))))
|
"1rw2mxygxsmk8mn4wag1ppjgzk0rlvh6zd8q02qrhjrn9jhi5qj3"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(native-inputs `(("gfortran" ,gfortran)))
|
(native-inputs `(("gfortran" ,gfortran)))
|
||||||
(home-page "http://www.stats.gla.ac.uk/~adrian/sm/")
|
(home-page "http://www.stats.gla.ac.uk/~adrian/sm/")
|
||||||
|
@ -2146,14 +2223,14 @@ Analysis with R\" by Michael Friendly and David Meyer (2015).")
|
||||||
(define-public r-ica
|
(define-public r-ica
|
||||||
(package
|
(package
|
||||||
(name "r-ica")
|
(name "r-ica")
|
||||||
(version "1.0-1")
|
(version "1.0-2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "ica" version))
|
(uri (cran-uri "ica" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1bkl4a72l0k6gm82l3jxnib898z20cw17zg81jj39l9dn65rlmcq"))))
|
"0ya1nph1zwhad0bfz4yxs27kl45yk1dhnphdlrq34p8pqrpmj8g7"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://cran.r-project.org/web/packages/ica/")
|
(home-page "https://cran.r-project.org/web/packages/ica/")
|
||||||
(synopsis "Independent component analysis")
|
(synopsis "Independent component analysis")
|
||||||
|
@ -2166,14 +2243,14 @@ of Eigenmatrices} (JADE).")
|
||||||
(define-public r-dtw
|
(define-public r-dtw
|
||||||
(package
|
(package
|
||||||
(name "r-dtw")
|
(name "r-dtw")
|
||||||
(version "1.18-1")
|
(version "1.20-1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "dtw" version))
|
(uri (cran-uri "dtw" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1b91vahba09cqlb8b1ry4dlv4rbldb4s2p6w52gmyw31vxdv5nnr"))))
|
"1w301xwizncy5r8v9rwwdxfshydgp3l1pnjla1fjn6n8lx3imjj3"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs `(("r-proxy" ,r-proxy)))
|
(propagated-inputs `(("r-proxy" ,r-proxy)))
|
||||||
(home-page "http://dtw.r-forge.r-project.org/")
|
(home-page "http://dtw.r-forge.r-project.org/")
|
||||||
|
@ -2256,14 +2333,14 @@ plots in @code{ggplot2}.")
|
||||||
(define-public r-ggjoy
|
(define-public r-ggjoy
|
||||||
(package
|
(package
|
||||||
(name "r-ggjoy")
|
(name "r-ggjoy")
|
||||||
(version "0.4.0")
|
(version "0.4.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "ggjoy" version))
|
(uri (cran-uri "ggjoy" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1s24zn7gmk52bvjjhanxby7rxbnc2yfl0nx5nv7x7z0zja8gg7nb"))))
|
"012md2m0jqfcccb933j423m3ck31v3p0pd41gjxpyg9082y7ixyj"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-ggplot2" ,r-ggplot2)
|
`(("r-ggplot2" ,r-ggplot2)
|
||||||
|
@ -2341,20 +2418,20 @@ constants, and control debugging of packages via environment variables.")
|
||||||
(define-public r-processx
|
(define-public r-processx
|
||||||
(package
|
(package
|
||||||
(name "r-processx")
|
(name "r-processx")
|
||||||
(version "2.0.0.1")
|
(version "3.1.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "processx" version))
|
(uri (cran-uri "processx" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0yw23lp9xjvbpswzghkmjiayw7p19hbvmgv58k3i6b8g5nav4qcg"))))
|
"0wjr3cqwvnjxbvln25szffmkns5w0xysivdjr6chxap4nh515b0i"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-assertthat" ,r-assertthat)
|
`(("r-assertthat" ,r-assertthat)
|
||||||
("r-crayon" ,r-crayon)
|
("r-crayon" ,r-crayon)
|
||||||
("r-debugme" ,r-debugme)
|
("r-r6" ,r-r6)
|
||||||
("r-r6" ,r-r6)))
|
("r-testthat" ,r-testthat)))
|
||||||
(home-page "https://github.com/r-lib/processx3")
|
(home-page "https://github.com/r-lib/processx3")
|
||||||
(synopsis "Execute and control system processes")
|
(synopsis "Execute and control system processes")
|
||||||
(description
|
(description
|
||||||
|
@ -2370,14 +2447,14 @@ timeout. It can also poll several processes at once.")
|
||||||
(define-public r-tsp
|
(define-public r-tsp
|
||||||
(package
|
(package
|
||||||
(name "r-tsp")
|
(name "r-tsp")
|
||||||
(version "1.1-5")
|
(version "1.1-6")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "TSP" version))
|
(uri (cran-uri "TSP" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"03xxfr5kk4zhzpb1q1pwncdp0dhchm9b48wzhvvxn2dxf3mnby2w"))))
|
"1ym97xl2icjpfkrici0wig29w06bb704hp51v7h5liygjlwpkhlc"))))
|
||||||
(properties `((upstream-name . "TSP")))
|
(properties `((upstream-name . "TSP")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs `(("r-foreach" ,r-foreach)))
|
(propagated-inputs `(("r-foreach" ,r-foreach)))
|
||||||
|
@ -2489,46 +2566,6 @@ dissimilarity plots, and visual assessment of cluster tendency plots (VAT and
|
||||||
iVAT).")
|
iVAT).")
|
||||||
(license license:gpl3)))
|
(license license:gpl3)))
|
||||||
|
|
||||||
(define-public r-heatmaply
|
|
||||||
(package
|
|
||||||
(name "r-heatmaply")
|
|
||||||
(version "0.14.1")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (cran-uri "heatmaply" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"03p2caclhfgqgpx3wwck5h06jy3mxgs05gjmwkb7hmwghkjh41jc"))))
|
|
||||||
(build-system r-build-system)
|
|
||||||
(propagated-inputs
|
|
||||||
`(("r-assertthat" ,r-assertthat)
|
|
||||||
("r-colorspace" ,r-colorspace)
|
|
||||||
("r-dendextend" ,r-dendextend)
|
|
||||||
("r-ggplot2" ,r-ggplot2)
|
|
||||||
("r-gplots" ,r-gplots)
|
|
||||||
("r-htmlwidgets" ,r-htmlwidgets)
|
|
||||||
("r-magrittr" ,r-magrittr)
|
|
||||||
("r-plotly" ,r-plotly)
|
|
||||||
("r-rcolorbrewer" ,r-rcolorbrewer)
|
|
||||||
("r-reshape2" ,r-reshape2)
|
|
||||||
("r-scales" ,r-scales)
|
|
||||||
("r-seriation" ,r-seriation)
|
|
||||||
("r-viridis" ,r-viridis)
|
|
||||||
("r-webshot" ,r-webshot)))
|
|
||||||
(home-page "https://cran.r-project.org/package=heatmaply")
|
|
||||||
(synopsis "Interactive cluster heat maps using plotly")
|
|
||||||
(description "Heatmaps are used in many fields for visualizing
|
|
||||||
observations, correlations, missing values patterns, and more. Interactive
|
|
||||||
heatmaps allow the inspection of specific value by hovering the mouse over a
|
|
||||||
cell, as well as zooming into a region of the heatmap by dragging a rectangle
|
|
||||||
around the relevant area. This work is based on the @code{ggplot2} and
|
|
||||||
@code{plotly.js} engine. It produces similar heatmaps as @code{heatmap.2} or
|
|
||||||
@code{d3heatmap}, with the advantage of speed, the ability to zoom from the
|
|
||||||
dendrogram panes, and the placing of factor variables in the sides of the
|
|
||||||
heatmap.")
|
|
||||||
(license (list license:gpl2 license:gpl3))))
|
|
||||||
|
|
||||||
(define-public r-xfun
|
(define-public r-xfun
|
||||||
(package
|
(package
|
||||||
(name "r-xfun")
|
(name "r-xfun")
|
||||||
|
@ -2551,14 +2588,14 @@ packages maintained by Yihui Xie.")
|
||||||
(define-public r-utf8
|
(define-public r-utf8
|
||||||
(package
|
(package
|
||||||
(name "r-utf8")
|
(name "r-utf8")
|
||||||
(version "1.1.3")
|
(version "1.1.4")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "utf8" version))
|
(uri (cran-uri "utf8" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"03s4j6059q0nly68vpk6wy3p3f5ypakw93fj35kzd82b4z1r9cs3"))))
|
"0m0ywg8k3blfiahxvh1i4zn9dksrlc937d2lbza5fc38zjnrrnpn"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://github.com/patperry/r-utf8")
|
(home-page "https://github.com/patperry/r-utf8")
|
||||||
(synopsis "Unicode text processing")
|
(synopsis "Unicode text processing")
|
||||||
|
@ -2571,14 +2608,14 @@ display.")
|
||||||
(define-public r-pillar
|
(define-public r-pillar
|
||||||
(package
|
(package
|
||||||
(name "r-pillar")
|
(name "r-pillar")
|
||||||
(version "1.2.2")
|
(version "1.2.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "pillar" version))
|
(uri (cran-uri "pillar" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1kmqvny3rw4p5kgxz6mhqfpp7j3nnpp22dfai4kjrr2cfmj6wvb7"))))
|
"1rzhssprqgam1nq3s0f5rzxhxsq02azcghvxf6k8kmsmddf1n7f8"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-cli" ,r-cli)
|
`(("r-cli" ,r-cli)
|
||||||
|
@ -2859,14 +2896,14 @@ financial trading strategies.")
|
||||||
(define-public r-tseries
|
(define-public r-tseries
|
||||||
(package
|
(package
|
||||||
(name "r-tseries")
|
(name "r-tseries")
|
||||||
(version "0.10-44")
|
(version "0.10-45")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "tseries" version))
|
(uri (cran-uri "tseries" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0nz6v76hsxcprpgf84al5r0p08sr9qacqal4adndz9wmg604l4ag"))))
|
"14s1glh5zzdvdl05a2z7ymhgf962svxf8xircghg5sc649lb33n0"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-quadprog" ,r-quadprog)
|
`(("r-quadprog" ,r-quadprog)
|
||||||
|
@ -3125,18 +3162,19 @@ creation and manipulation of WAVE audio files.")
|
||||||
(define-public r-np
|
(define-public r-np
|
||||||
(package
|
(package
|
||||||
(name "r-np")
|
(name "r-np")
|
||||||
(version "0.60-6")
|
(version "0.60-8")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "np" version))
|
(uri (cran-uri "np" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1y72x5j9j9mcgcy2xizk31gl843hfkngxdn8s4qw7yhw2qj79hsr"))))
|
"17h67a510wh83800ri6g02wvznrlhigxni8shyijz1iaxcpk8k4j"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-boot" ,r-boot)
|
`(("r-boot" ,r-boot)
|
||||||
("r-cubature" ,r-cubature)
|
("r-cubature" ,r-cubature)
|
||||||
|
("r-quadprog" ,r-quadprog)
|
||||||
("r-quantreg" ,r-quantreg)))
|
("r-quantreg" ,r-quantreg)))
|
||||||
(home-page "https://github.com/JeffreyRacine/R-Package-np")
|
(home-page "https://github.com/JeffreyRacine/R-Package-np")
|
||||||
(synopsis "Non-parametric kernel smoothing methods for mixed data types")
|
(synopsis "Non-parametric kernel smoothing methods for mixed data types")
|
||||||
|
@ -3190,6 +3228,7 @@ exponentiation.")
|
||||||
("r-ggplot2" ,r-ggplot2)
|
("r-ggplot2" ,r-ggplot2)
|
||||||
("r-gplots" ,r-gplots)
|
("r-gplots" ,r-gplots)
|
||||||
("r-htmlwidgets" ,r-htmlwidgets)
|
("r-htmlwidgets" ,r-htmlwidgets)
|
||||||
|
("r-knitr" ,r-knitr) ; needed for vignettes
|
||||||
("r-magrittr" ,r-magrittr)
|
("r-magrittr" ,r-magrittr)
|
||||||
("r-plotly" ,r-plotly)
|
("r-plotly" ,r-plotly)
|
||||||
("r-rcolorbrewer" ,r-rcolorbrewer)
|
("r-rcolorbrewer" ,r-rcolorbrewer)
|
||||||
|
@ -3262,18 +3301,19 @@ files.")
|
||||||
(define-public r-shinyace
|
(define-public r-shinyace
|
||||||
(package
|
(package
|
||||||
(name "r-shinyace")
|
(name "r-shinyace")
|
||||||
(version "0.2.1")
|
(version "0.3.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "shinyAce" version))
|
(uri (cran-uri "shinyAce" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ycka8rsw0178q9klfid97vdn5cbyx3r778nis5s3dqipdyazdm9"))))
|
"1hqgszbiv99dibhwr21v21ll4s2hjn3ccqdicsm0z3gk77bh8iyb"))))
|
||||||
(properties `((upstream-name . "shinyAce")))
|
(properties `((upstream-name . "shinyAce")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-shiny" ,r-shiny)))
|
`(("r-shiny" ,r-shiny)
|
||||||
|
("r-jsonlite" ,r-jsonlite)))
|
||||||
(home-page "http://cran.r-project.org/web/packages/shinyAce")
|
(home-page "http://cran.r-project.org/web/packages/shinyAce")
|
||||||
(synopsis "Ace editor bindings for Shiny")
|
(synopsis "Ace editor bindings for Shiny")
|
||||||
(description
|
(description
|
||||||
|
@ -3383,14 +3423,14 @@ It also includes interpolation functions.")
|
||||||
(define-public r-psych
|
(define-public r-psych
|
||||||
(package
|
(package
|
||||||
(name "r-psych")
|
(name "r-psych")
|
||||||
(version "1.8.3.3")
|
(version "1.8.4")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "psych" version))
|
(uri (cran-uri "psych" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1zhp8j81nkzd65168zdw9ylypb9n07ajan21x0wqcn8jdbg970sg"))))
|
"1kzv9nc7rwn1sj1zxd8xrbs6c7qlka7j2c8lsr4f20znkd3qx8gf"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-foreign" ,r-foreign)
|
`(("r-foreign" ,r-foreign)
|
||||||
|
@ -3765,19 +3805,41 @@ measuring the accuracy of ABC estimates, and to calculate the
|
||||||
misclassification probabilities of different models.")
|
misclassification probabilities of different models.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public r-zip
|
||||||
|
(package
|
||||||
|
(name "r-zip")
|
||||||
|
(version "1.0.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "zip" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0rgr9pcdhdq3k8n29h2ircp3ri1ibhrx81gja1y7331v15xyrabg"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(home-page "https://github.com/gaborcsardi/zip")
|
||||||
|
(synopsis "Cross-platform Zip compression")
|
||||||
|
(description
|
||||||
|
"This package provides a cross-platform Zip compression library for R.
|
||||||
|
It is a replacement for the @code{zip} function, that does not require any
|
||||||
|
additional external tools on any platform.")
|
||||||
|
(license license:cc0)))
|
||||||
|
|
||||||
(define-public r-openxlsx
|
(define-public r-openxlsx
|
||||||
(package
|
(package
|
||||||
(name "r-openxlsx")
|
(name "r-openxlsx")
|
||||||
(version "4.0.17")
|
(version "4.1.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "openxlsx" version))
|
(uri (cran-uri "openxlsx" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1mq4lasp12kc30sxcsmz9gskd114l8s7z7wd6svv2nm8qllrhsqi"))))
|
"1n7z22pm78xa77fvn77kdn68az6xzxk36y11sqf0w6h6adri4yxb"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs `(("r-rcpp" ,r-rcpp)))
|
(propagated-inputs
|
||||||
|
`(("r-rcpp" ,r-rcpp)
|
||||||
|
("r-zip" ,r-zip)))
|
||||||
(home-page "https://github.com/awalker89/openxlsx")
|
(home-page "https://github.com/awalker89/openxlsx")
|
||||||
(synopsis "Read, write and edit XLSX files")
|
(synopsis "Read, write and edit XLSX files")
|
||||||
(description
|
(description
|
||||||
|
@ -3853,14 +3915,14 @@ exchanging spatial objects with other R packages.")
|
||||||
(define-public r-later
|
(define-public r-later
|
||||||
(package
|
(package
|
||||||
(name "r-later")
|
(name "r-later")
|
||||||
(version "0.7.1")
|
(version "0.7.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "later" version))
|
(uri (cran-uri "later" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0z9jymmclkq9zcg1fd8p6gsnm5z1sn3n9pfz3bs03qjrkbizgrvz"))))
|
"0l5ln7sjyi2rj7bx8iamxykqlfarv05zb9882ikizppb1cr1hgyw"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-bh" ,r-bh)
|
`(("r-bh" ,r-bh)
|
||||||
|
@ -3973,3 +4035,158 @@ including the ability to summarize or get a high-level view of code,
|
||||||
determining dependencies between variables, code improvement suggestions.")
|
determining dependencies between variables, code improvement suggestions.")
|
||||||
;; Any version of the GPL
|
;; Any version of the GPL
|
||||||
(license (list license:gpl2+ license:gpl3+))))
|
(license (list license:gpl2+ license:gpl3+))))
|
||||||
|
|
||||||
|
(define-public r-rappdirs
|
||||||
|
(package
|
||||||
|
(name "r-rappdirs")
|
||||||
|
(version "0.3.1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "rappdirs" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0ji6sg3bdn5gazkq14xmmcq7jnbsyxw4lzmmbgv6526j2vn93n1g"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(home-page "https://cran.r-project.org/web/packages/rappdirs/")
|
||||||
|
(synopsis "Determine where to save data, caches, and logs")
|
||||||
|
(description
|
||||||
|
"This package provides an easy way to determine which directories on the
|
||||||
|
user's computer should be used to save data, caches and logs. It is a port of
|
||||||
|
Python's @url{https://github.com/ActiveState/appdirs,Appdirs} to R.")
|
||||||
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public r-learnr
|
||||||
|
(package
|
||||||
|
(name "r-learnr")
|
||||||
|
(version "0.9.2")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "learnr" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1z04c1djg7ghsl7p9ypc6k5m7snahnmjy10xmrzqfayx1wkfkn9n"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(propagated-inputs
|
||||||
|
`(("r-evaluate" ,r-evaluate)
|
||||||
|
("r-htmltools" ,r-htmltools)
|
||||||
|
("r-htmlwidgets" ,r-htmlwidgets)
|
||||||
|
("r-jsonlite" ,r-jsonlite)
|
||||||
|
("r-knitr" ,r-knitr)
|
||||||
|
("r-markdown" ,r-markdown)
|
||||||
|
("r-rappdirs" ,r-rappdirs)
|
||||||
|
("r-rmarkdown" ,r-rmarkdown)
|
||||||
|
("r-rprojroot" ,r-rprojroot)
|
||||||
|
("r-shiny" ,r-shiny)
|
||||||
|
("r-withr" ,r-withr)))
|
||||||
|
(home-page "https://rstudio.github.io/learnr/")
|
||||||
|
(synopsis "Interactive tutorials for R")
|
||||||
|
(description
|
||||||
|
"This package provides tools to create interactive tutorials using R
|
||||||
|
Markdown. Use a combination of narrative, figures, videos, exercises, and
|
||||||
|
quizzes to create self-paced tutorials for learning about R and R packages.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public r-analytics
|
||||||
|
(package
|
||||||
|
(name "r-analytics")
|
||||||
|
(version "2.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "analytics" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1jkdjqc3fnvvsgi6x9ncf36rxzq0a55cmgkcv92mfmpcramg2lk6"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(propagated-inputs
|
||||||
|
`(("r-car" ,r-car)
|
||||||
|
("r-cluster" ,r-cluster)
|
||||||
|
("r-fractal" ,r-fractal)
|
||||||
|
("r-lmtest" ,r-lmtest)
|
||||||
|
("r-mass" ,r-mass)
|
||||||
|
("r-np" ,r-np)
|
||||||
|
("r-powerplus" ,r-powerplus)
|
||||||
|
("r-robust" ,r-robust)
|
||||||
|
("r-trend" ,r-trend)
|
||||||
|
("r-tsa" ,r-tsa)
|
||||||
|
("r-urca" ,r-urca)))
|
||||||
|
(home-page "https://cran.r-project.org/web/packages/analytics/")
|
||||||
|
(synopsis "Collection of data analysis tools")
|
||||||
|
(description
|
||||||
|
"This package is a collection of data analysis tools. It includes tools
|
||||||
|
for regression outlier detection in a fitted linear model, stationary
|
||||||
|
bootstrap using a truncated geometric distribution, a comprehensive test for
|
||||||
|
weak stationarity, column means by group, weighted biplots, and a heuristic to
|
||||||
|
obtain a better initial configuration in non-metric MDS.")
|
||||||
|
(license license:gpl2)))
|
||||||
|
|
||||||
|
(define-public r-reticulate
|
||||||
|
(package
|
||||||
|
(name "r-reticulate")
|
||||||
|
(version "1.7")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "reticulate" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1ghhc4hbmwpp79ilbdbshynhs61i8sv8z6p1al04jy7ij0lcglxy"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(inputs `(("python" ,python)))
|
||||||
|
(propagated-inputs
|
||||||
|
`(("r-jsonlite" ,r-jsonlite)
|
||||||
|
("r-matrix" ,r-matrix)
|
||||||
|
("r-rcpp" ,r-rcpp)))
|
||||||
|
(home-page "https://github.com/rstudio/reticulate")
|
||||||
|
(synopsis "R interface to Python")
|
||||||
|
(description
|
||||||
|
"This package provides an interface from R to Python modules, classes,
|
||||||
|
and functions. When calling into Python, R data types are automatically
|
||||||
|
converted to their equivalent Python types. When values are returned from
|
||||||
|
Python to R they are converted back to R types.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
(define-public r-bibtex
|
||||||
|
(package
|
||||||
|
(name "r-bibtex")
|
||||||
|
(version "0.4.2")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "bibtex" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0wl3925ryd54g1nv3ncwllc493d39dpgy5md61940h69c0van1hz"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(propagated-inputs `(("r-stringr" ,r-stringr)))
|
||||||
|
(home-page "https://github.com/romainfrancois/bibtex")
|
||||||
|
(synopsis "Bibtex parser")
|
||||||
|
(description "This package provides a utility for R to parse a bibtex
|
||||||
|
file.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public r-ggseqlogo
|
||||||
|
(package
|
||||||
|
(name "r-ggseqlogo")
|
||||||
|
(version "0.1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (cran-uri "ggseqlogo" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"13q6kcpxrqxqbji889fx63p0nsi08lk5yymkchig75r5k1d18ky1"))))
|
||||||
|
(build-system r-build-system)
|
||||||
|
(propagated-inputs `(("r-ggplot2" ,r-ggplot2)))
|
||||||
|
(home-page "https://github.com/omarwagih/ggseqlogo")
|
||||||
|
(synopsis "ggplot2 extension for drawing genetic sequence logos")
|
||||||
|
(description
|
||||||
|
"The range of functions provided by this package makes it possible to
|
||||||
|
draw highly versatile genomic sequence logos. Features include, but are not
|
||||||
|
limited to, modifying colour schemes and fonts used to draw the logo,
|
||||||
|
generating multiple logo plots, and aiding the visualisation with annotations.
|
||||||
|
Sequence logos can easily be combined with other ggplot2 plots.")
|
||||||
|
;; Unspecified version of the LGPL.
|
||||||
|
(license license:lgpl3+)))
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -181,8 +182,10 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
|
||||||
(define (cross-gcc-snippet target)
|
(define (cross-gcc-snippet target)
|
||||||
"Return GCC snippet needed for TARGET."
|
"Return GCC snippet needed for TARGET."
|
||||||
(cond ((target-mingw? target)
|
(cond ((target-mingw? target)
|
||||||
'(copy-recursively "libstdc++-v3/config/os/mingw32-w64"
|
'(begin
|
||||||
"libstdc++-v3/config/os/newlib"))
|
(copy-recursively "libstdc++-v3/config/os/mingw32-w64"
|
||||||
|
"libstdc++-v3/config/os/newlib")
|
||||||
|
#t))
|
||||||
(else #f)))
|
(else #f)))
|
||||||
|
|
||||||
(define* (cross-gcc target
|
(define* (cross-gcc target
|
||||||
|
@ -291,8 +294,8 @@ target that libc."
|
||||||
(setenv "ARCH" ,(system->linux-architecture target))
|
(setenv "ARCH" ,(system->linux-architecture target))
|
||||||
(format #t "`ARCH' set to `~a' (cross compiling)~%" (getenv "ARCH"))
|
(format #t "`ARCH' set to `~a' (cross compiling)~%" (getenv "ARCH"))
|
||||||
|
|
||||||
(and (zero? (system* "make" ,(system->defconfig target)))
|
(invoke "make" ,(system->defconfig target))
|
||||||
(zero? (system* "make" "mrproper" "headers_check"))))
|
(invoke "make" "mrproper" "headers_check"))
|
||||||
,phases))))
|
,phases))))
|
||||||
(native-inputs `(("cross-gcc" ,xgcc)
|
(native-inputs `(("cross-gcc" ,xgcc)
|
||||||
("cross-binutils" ,xbinutils)
|
("cross-binutils" ,xbinutils)
|
||||||
|
@ -314,14 +317,14 @@ target that libc."
|
||||||
`(#:modules ((guix build gnu-build-system)
|
`(#:modules ((guix build gnu-build-system)
|
||||||
(guix build utils)
|
(guix build utils)
|
||||||
(srfi srfi-26))
|
(srfi srfi-26))
|
||||||
#:phases (alist-cons-before
|
#:phases (modify-phases %standard-phases
|
||||||
'configure 'set-cross-headers-path
|
(add-before 'configure 'set-cross-headers-path
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let* ((mach (assoc-ref inputs "cross-gnumach-headers"))
|
(let* ((mach (assoc-ref inputs "cross-gnumach-headers"))
|
||||||
(cpath (string-append mach "/include")))
|
(cpath (string-append mach "/include")))
|
||||||
(for-each (cut setenv <> cpath)
|
(for-each (cut setenv <> cpath)
|
||||||
',%gcc-cross-include-paths)))
|
',%gcc-cross-include-paths)
|
||||||
%standard-phases)
|
#t))))
|
||||||
#:configure-flags (list ,(string-append "--target=" target))
|
#:configure-flags (list ,(string-append "--target=" target))
|
||||||
,@(package-arguments mig)))
|
,@(package-arguments mig)))
|
||||||
|
|
||||||
|
@ -352,16 +355,16 @@ target that libc."
|
||||||
(srfi srfi-26))
|
(srfi srfi-26))
|
||||||
,@(package-arguments glibc/hurd-headers))
|
,@(package-arguments glibc/hurd-headers))
|
||||||
((#:phases phases)
|
((#:phases phases)
|
||||||
`(alist-cons-before
|
`(modify-phases ,phases
|
||||||
'pre-configure 'set-cross-headers-path
|
(add-before 'pre-configure 'set-cross-headers-path
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let* ((mach (assoc-ref inputs "gnumach-headers"))
|
(let* ((mach (assoc-ref inputs "gnumach-headers"))
|
||||||
(hurd (assoc-ref inputs "hurd-headers"))
|
(hurd (assoc-ref inputs "hurd-headers"))
|
||||||
(cpath (string-append mach "/include:"
|
(cpath (string-append mach "/include:"
|
||||||
hurd "/include")))
|
hurd "/include")))
|
||||||
(for-each (cut setenv <> cpath)
|
(for-each (cut setenv <> cpath)
|
||||||
',%gcc-cross-include-paths)))
|
',%gcc-cross-include-paths)
|
||||||
,phases))))
|
#t)))))))
|
||||||
|
|
||||||
(propagated-inputs `(("gnumach-headers" ,xgnumach-headers)
|
(propagated-inputs `(("gnumach-headers" ,xgnumach-headers)
|
||||||
("hurd-headers" ,xhurd-headers)))
|
("hurd-headers" ,xhurd-headers)))
|
||||||
|
@ -382,14 +385,14 @@ target that libc."
|
||||||
(srfi srfi-26))
|
(srfi srfi-26))
|
||||||
,@(package-arguments hurd-minimal))
|
,@(package-arguments hurd-minimal))
|
||||||
((#:phases phases)
|
((#:phases phases)
|
||||||
`(alist-cons-before
|
`(modify-phases ,phases
|
||||||
'configure 'set-cross-headers-path
|
(add-before 'configure 'set-cross-headers-path
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let* ((glibc-headers (assoc-ref inputs "cross-glibc-hurd-headers"))
|
(let* ((glibc-headers (assoc-ref inputs "cross-glibc-hurd-headers"))
|
||||||
(cpath (string-append glibc-headers "/include")))
|
(cpath (string-append glibc-headers "/include")))
|
||||||
(for-each (cut setenv <> cpath)
|
(for-each (cut setenv <> cpath)
|
||||||
',%gcc-cross-include-paths)))
|
',%gcc-cross-include-paths)
|
||||||
,phases))))
|
#t)))))))
|
||||||
|
|
||||||
(inputs `(("cross-glibc-hurd-headers" ,xglibc/hurd-headers)))
|
(inputs `(("cross-glibc-hurd-headers" ,xglibc/hurd-headers)))
|
||||||
|
|
||||||
|
@ -456,17 +459,16 @@ XBINUTILS and the cross tool chain."
|
||||||
`(cons ,(string-append "--host=" target)
|
`(cons ,(string-append "--host=" target)
|
||||||
,flags))
|
,flags))
|
||||||
((#:phases phases)
|
((#:phases phases)
|
||||||
`(alist-cons-before
|
`(modify-phases ,phases
|
||||||
'configure 'set-cross-kernel-headers-path
|
(add-before 'configure 'set-cross-kernel-headers-path
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(let* ((kernel (assoc-ref inputs "kernel-headers"))
|
(let* ((kernel (assoc-ref inputs "kernel-headers"))
|
||||||
(cpath (string-append kernel "/include")))
|
(cpath (string-append kernel "/include")))
|
||||||
(for-each (cut setenv <> cpath)
|
(for-each (cut setenv <> cpath)
|
||||||
',%gcc-cross-include-paths)
|
',%gcc-cross-include-paths)
|
||||||
(setenv "CROSS_LIBRARY_PATH"
|
(setenv "CROSS_LIBRARY_PATH"
|
||||||
(string-append kernel "/lib")) ;for Hurd's libihash
|
(string-append kernel "/lib")) ; for Hurd's libihash
|
||||||
#t))
|
#t)))))))
|
||||||
,phases))))
|
|
||||||
|
|
||||||
;; Shadow the native "kernel-headers" because glibc's recipe expects the
|
;; Shadow the native "kernel-headers" because glibc's recipe expects the
|
||||||
;; "kernel-headers" input to point to the right thing.
|
;; "kernel-headers" input to point to the right thing.
|
||||||
|
|
|
@ -183,7 +183,8 @@ OpenBSD tool of the same name.")
|
||||||
(substitute* "src/crypto.cpp"
|
(substitute* "src/crypto.cpp"
|
||||||
(("argon2/argon2.h") "argon2.h"))
|
(("argon2/argon2.h") "argon2.h"))
|
||||||
(substitute* "configure.ac"
|
(substitute* "configure.ac"
|
||||||
(("src/argon2/Makefile") ""))))
|
(("src/argon2/Makefile") ""))
|
||||||
|
#t))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"09yvkmbqbym3b5md4n96qc1s9sf2n8ji404hagih45rmsj49599x"))))
|
"09yvkmbqbym3b5md4n96qc1s9sf2n8ji404hagih45rmsj49599x"))))
|
||||||
|
@ -228,9 +229,11 @@ communication.")
|
||||||
"1906254dg5hwljh0h4gyrw09ms3b57dlhjfzhfzffv50yzpkl837"))
|
"1906254dg5hwljh0h4gyrw09ms3b57dlhjfzhfzffv50yzpkl837"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
;; Remove bundled dependencies in favour of proper inputs.
|
;; Remove bundled dependencies in favour of proper inputs.
|
||||||
(snippet '(for-each delete-file-recursively
|
(snippet '(begin
|
||||||
(find-files "internal" "^tinyxml2-[0-9]"
|
(for-each delete-file-recursively
|
||||||
#:directories? #t)))))
|
(find-files "internal" "^tinyxml2-[0-9]"
|
||||||
|
#:directories? #t))
|
||||||
|
#t))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("gettext" ,gettext-minimal)
|
`(("gettext" ,gettext-minimal)
|
||||||
|
@ -272,8 +275,10 @@ the wrong hands.")
|
||||||
"1dmgjcf7mnwc6h72xkvpaqpzxw8vmlnsmzz0s27pg0giwzm3sp0i"))
|
"1dmgjcf7mnwc6h72xkvpaqpzxw8vmlnsmzz0s27pg0giwzm3sp0i"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
;; Create relative symbolic links instead of absolute ones to /lib/*
|
;; Create relative symbolic links instead of absolute ones to /lib/*
|
||||||
(snippet '(substitute* "Makefile" (("\\$\\(LNS\\) \\$\\(LIBDIR\\)/")
|
(snippet '(begin
|
||||||
"$(LNS) ")))))
|
(substitute* "Makefile" (("\\$\\(LNS\\) \\$\\(LIBDIR\\)/")
|
||||||
|
"$(LNS) "))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases (modify-phases %standard-phases
|
`(#:phases (modify-phases %standard-phases
|
||||||
|
@ -358,14 +363,14 @@ no man page, refer to the home page for usage details.")
|
||||||
(define-public tomb
|
(define-public tomb
|
||||||
(package
|
(package
|
||||||
(name "tomb")
|
(name "tomb")
|
||||||
(version "2.4")
|
(version "2.5")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://files.dyne.org/tomb/"
|
(uri (string-append "https://files.dyne.org/tomb/"
|
||||||
"Tomb-" version ".tar.gz"))
|
"Tomb-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1hv1w79as7swqj0n137vz8n8mwvcgwlvd91sdyssz41jarg7f1vr"))))
|
"12c6qldngaw520gvb02inzkhnxbl4k0dwmddrgnaf7xashy6j0wc"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase
|
(native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -377,7 +382,8 @@ no man page, refer to the home page for usage details.")
|
||||||
("mlocate" ,mlocate)
|
("mlocate" ,mlocate)
|
||||||
("pinentry" ,pinentry)
|
("pinentry" ,pinentry)
|
||||||
("qrencode" ,qrencode)
|
("qrencode" ,qrencode)
|
||||||
("steghide" ,steghide)))
|
("steghide" ,steghide)
|
||||||
|
("util-linux" ,util-linux)))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
||||||
;; TODO: Build and install gtk and qt trays
|
;; TODO: Build and install gtk and qt trays
|
||||||
|
@ -400,7 +406,7 @@ no man page, refer to the home page for usage details.")
|
||||||
(error "program not found:" program)))
|
(error "program not found:" program)))
|
||||||
'("seq" "mkfs.ext4" "pinentry" "sudo"
|
'("seq" "mkfs.ext4" "pinentry" "sudo"
|
||||||
"gpg" "cryptsetup" "gettext"
|
"gpg" "cryptsetup" "gettext"
|
||||||
"qrencode" "steghide")))))
|
"qrencode" "steghide" "findmnt")))))
|
||||||
#t)))
|
#t)))
|
||||||
(delete 'check)
|
(delete 'check)
|
||||||
(add-after 'wrap 'check
|
(add-after 'wrap 'check
|
||||||
|
@ -648,12 +654,7 @@ data on your platform, so the seed itself will be as random as possible.
|
||||||
;; fat only checks for Intel optimisations
|
;; fat only checks for Intel optimisations
|
||||||
'("--enable-fat")
|
'("--enable-fat")
|
||||||
'())
|
'())
|
||||||
"--disable-native") ; don't optimise at build time.
|
"--disable-native"))) ;don't optimise at build time
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'bootstrap
|
|
||||||
(lambda _
|
|
||||||
(invoke "sh" "autogen.sh"))))))
|
|
||||||
(home-page "https://blake2.net/")
|
(home-page "https://blake2.net/")
|
||||||
(synopsis "Library implementing the BLAKE2 family of hash functions")
|
(synopsis "Library implementing the BLAKE2 family of hash functions")
|
||||||
(description
|
(description
|
||||||
|
@ -671,7 +672,7 @@ BLAKE.")
|
||||||
(define-public rhash
|
(define-public rhash
|
||||||
(package
|
(package
|
||||||
(name "rhash")
|
(name "rhash")
|
||||||
(version "1.3.5")
|
(version "1.3.6")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -680,32 +681,27 @@ BLAKE.")
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0bhz3xdl6r06k1bqigdjz42l31iqz2qdpg7zk316i7p2ra56iq4q"))))
|
"14ngzfgmd1lfp7m78sn49x8ymf2s37nrr67c6p5vas85nrrgjkcn"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags (list "CC=gcc"
|
`(#:make-flags
|
||||||
(string-append "PREFIX=" %output))
|
;; The binaries in /bin need some help finding librhash.so.0.
|
||||||
#:test-target "test"
|
(list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
|
||||||
|
#:test-target "test" ; ‘make check’ just checks the sources
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
|
;; ./configure is not GNU autotools' and doesn't gracefully handle
|
||||||
|
;; unrecognized options, so we must call it manually.
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(substitute* "Makefile"
|
(invoke "./configure"
|
||||||
(("\\$\\(DESTDIR\\)/etc")
|
(string-append "--prefix=" (assoc-ref outputs "out")))))
|
||||||
(string-append (assoc-ref outputs "out") "/etc")))
|
(add-after 'install 'install-library-extras
|
||||||
#t))
|
|
||||||
(add-after 'build 'build-library
|
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
(apply invoke "make" "lib-shared" make-flags)))
|
|
||||||
(add-after 'install 'install-library
|
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
|
||||||
(apply invoke "make" "install-lib-shared" make-flags)
|
|
||||||
(apply invoke
|
(apply invoke
|
||||||
"make" "-C" "librhash" "install-headers"
|
"make" "-C" "librhash"
|
||||||
"install-so-link" make-flags)))
|
"install-headers" "install-so-link"
|
||||||
(add-after 'check 'check-library
|
make-flags))))))
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
|
||||||
(apply invoke "make" "test-shared-lib" make-flags))))))
|
|
||||||
(home-page "https://sourceforge.net/projects/rhash/")
|
(home-page "https://sourceforge.net/projects/rhash/")
|
||||||
(synopsis "Utility for computing hash sums")
|
(synopsis "Utility for computing hash sums")
|
||||||
(description "RHash is a console utility for calculation and verification
|
(description "RHash is a console utility for calculation and verification
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
(define-public cups-filters
|
(define-public cups-filters
|
||||||
(package
|
(package
|
||||||
(name "cups-filters")
|
(name "cups-filters")
|
||||||
(version "1.17.9")
|
(version "1.20.1")
|
||||||
(source(origin
|
(source(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri
|
(uri
|
||||||
|
@ -58,7 +58,7 @@
|
||||||
"cups-filters-" version ".tar.xz"))
|
"cups-filters-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0i7mvvnq7ayhxn1ajci8h7l3cijzwr9d50p58h0rbsh9hf63zblq"))
|
"0qix1whz5n4ijnl6d44f1v8nzkpv99wqjyrby8vx6xnpskw5hsxk"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; install backends, banners and filters to cups-filters output
|
;; install backends, banners and filters to cups-filters output
|
||||||
|
@ -79,7 +79,8 @@
|
||||||
;; output directory, not CUPS's prefix.
|
;; output directory, not CUPS's prefix.
|
||||||
(substitute* "configure"
|
(substitute* "configure"
|
||||||
(("\\{CUPS_DATADIR\\}/data")
|
(("\\{CUPS_DATADIR\\}/data")
|
||||||
"{prefix}/share/cups/data"))))))
|
"{prefix}/share/cups/data"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags (list (string-append "PREFIX=" %output))
|
`(#:make-flags (list (string-append "PREFIX=" %output))
|
||||||
|
@ -197,7 +198,8 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "Makedefs.in"
|
(substitute* "Makedefs.in"
|
||||||
(("INITDIR.*=.*@INITDIR@") "INITDIR = @prefix@/@INITDIR@")
|
(("INITDIR.*=.*@INITDIR@") "INITDIR = @prefix@/@INITDIR@")
|
||||||
(("/bin/sh") (which "sh")))))
|
(("/bin/sh") (which "sh")))
|
||||||
|
#t))
|
||||||
;; Make the compressed manpages writable so that the
|
;; Make the compressed manpages writable so that the
|
||||||
;; reset-gzip-timestamps phase does not error out.
|
;; reset-gzip-timestamps phase does not error out.
|
||||||
(add-before 'reset-gzip-timestamps 'make-manpages-writable
|
(add-before 'reset-gzip-timestamps 'make-manpages-writable
|
||||||
|
@ -205,12 +207,14 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(man (string-append out "/share/man")))
|
(man (string-append out "/share/man")))
|
||||||
(for-each (lambda (file) (chmod file #o644))
|
(for-each (lambda (file) (chmod file #o644))
|
||||||
(find-files man "\\.gz")))))
|
(find-files man "\\.gz"))
|
||||||
|
#t)))
|
||||||
(add-before 'build 'patch-tests
|
(add-before 'build 'patch-tests
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "test/ippserver.c"
|
(substitute* "test/ippserver.c"
|
||||||
(("# else /\\* HAVE_AVAHI \\*/")
|
(("# else /\\* HAVE_AVAHI \\*/")
|
||||||
"#elif defined(HAVE_AVAHI)")))))))
|
"#elif defined(HAVE_AVAHI)"))
|
||||||
|
#t)))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -248,7 +252,8 @@ device-specific programs to convert and print many types of files.")
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "Makedefs.in"
|
(substitute* "Makedefs.in"
|
||||||
(("INITDIR.*=.*@INITDIR@") "INITDIR = @prefix@/@INITDIR@")
|
(("INITDIR.*=.*@INITDIR@") "INITDIR = @prefix@/@INITDIR@")
|
||||||
(("/bin/sh") (which "sh")))))
|
(("/bin/sh") (which "sh")))
|
||||||
|
#t))
|
||||||
(add-before 'check 'patch-tests
|
(add-before 'check 'patch-tests
|
||||||
(lambda _
|
(lambda _
|
||||||
(let ((filters (assoc-ref %build-inputs "cups-filters"))
|
(let ((filters (assoc-ref %build-inputs "cups-filters"))
|
||||||
|
@ -306,7 +311,8 @@ device-specific programs to convert and print many types of files.")
|
||||||
(("cupsFileFind\\(\"cat\", \"/bin\"")
|
(("cupsFileFind\\(\"cat\", \"/bin\"")
|
||||||
(string-append "cupsFileFind(\"cat\", \"" catpath "\""))
|
(string-append "cupsFileFind(\"cat\", \"" catpath "\""))
|
||||||
(("cupsFileFind\\(\"cat\", \"/bin:/usr/bin\"")
|
(("cupsFileFind\\(\"cat\", \"/bin:/usr/bin\"")
|
||||||
(string-append "cupsFileFind(\"cat\", \"" catpath "\""))))))
|
(string-append "cupsFileFind(\"cat\", \"" catpath "\"")))
|
||||||
|
#t)))
|
||||||
;; Make the compressed manpages writable so that the
|
;; Make the compressed manpages writable so that the
|
||||||
;; reset-gzip-timestamps phase does not error out.
|
;; reset-gzip-timestamps phase does not error out.
|
||||||
(add-before 'reset-gzip-timestamps 'make-manpages-writable
|
(add-before 'reset-gzip-timestamps 'make-manpages-writable
|
||||||
|
@ -314,7 +320,8 @@ device-specific programs to convert and print many types of files.")
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(man (string-append out "/share/man")))
|
(man (string-append out "/share/man")))
|
||||||
(for-each (lambda (file) (chmod file #o644))
|
(for-each (lambda (file) (chmod file #o644))
|
||||||
(find-files man "\\.gz")))))
|
(find-files man "\\.gz"))
|
||||||
|
#t)))
|
||||||
(add-after 'install 'install-cups-filters-symlinks
|
(add-after 'install 'install-cups-filters-symlinks
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out"))
|
(let ((out (assoc-ref outputs "out"))
|
||||||
|
@ -360,7 +367,9 @@ device-specific programs to convert and print many types of files.")
|
||||||
(let ((data "/share/cups/data"))
|
(let ((data "/share/cups/data"))
|
||||||
(delete-file-recursively (string-append out data))
|
(delete-file-recursively (string-append out data))
|
||||||
(symlink (string-append cups-filters data)
|
(symlink (string-append cups-filters data)
|
||||||
(string-append out data)))))))))
|
(string-append out data)))
|
||||||
|
|
||||||
|
#t))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("avahi" ,avahi)
|
`(("avahi" ,avahi)
|
||||||
("gnutls" ,gnutls)
|
("gnutls" ,gnutls)
|
||||||
|
@ -381,8 +390,10 @@ device-specific programs to convert and print many types of files.")
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Fix type mismatch.
|
;; Fix type mismatch.
|
||||||
'(substitute* "prnt/hpcups/genPCLm.cpp"
|
'(begin
|
||||||
(("boolean") "bool")))))
|
(substitute* "prnt/hpcups/genPCLm.cpp"
|
||||||
|
(("boolean") "bool"))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://hplipopensource.com/")
|
(home-page "http://hplipopensource.com/")
|
||||||
(synopsis "HP Printer Drivers")
|
(synopsis "HP Printer Drivers")
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
|
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -44,20 +44,21 @@
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages ssh)
|
#:use-module (gnu packages ssh)
|
||||||
#:use-module (gnu packages tls))
|
#:use-module (gnu packages tls)
|
||||||
|
#:use-module (gnu packages web))
|
||||||
|
|
||||||
(define-public curl
|
(define-public curl
|
||||||
(package
|
(package
|
||||||
(name "curl")
|
(name "curl")
|
||||||
(version "7.57.0")
|
(version "7.59.0")
|
||||||
(replacement curl-7.59.0)
|
(replacement curl-7.60.0)
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://curl.haxx.se/download/curl-"
|
(uri (string-append "https://curl.haxx.se/download/curl-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0y3qbjjcxhcvm1yawp3spfssjbskv0g6gyzld6ckif5pf8ygvxpm"))))
|
"1z310hrjm2vmbcpkyp81dcmj9rk127zkjyawpy2pah0nz6yslkp4"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(outputs '("out"
|
(outputs '("out"
|
||||||
"doc")) ;1.2 MiB of man3 pages
|
"doc")) ;1.2 MiB of man3 pages
|
||||||
|
@ -66,6 +67,7 @@
|
||||||
("libidn" ,libidn)
|
("libidn" ,libidn)
|
||||||
("libssh2" ,libssh2)
|
("libssh2" ,libssh2)
|
||||||
("openldap" ,openldap)
|
("openldap" ,openldap)
|
||||||
|
("nghttp2" ,nghttp2 "lib")
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl" ,perl)
|
`(("perl" ,perl)
|
||||||
|
@ -125,7 +127,7 @@
|
||||||
;; The top-level "make check" does "make -C tests quiet-test", which
|
;; The top-level "make check" does "make -C tests quiet-test", which
|
||||||
;; is too quiet. Use the "test" target instead, which is more
|
;; is too quiet. Use the "test" target instead, which is more
|
||||||
;; verbose.
|
;; verbose.
|
||||||
(zero? (system* "make" "-C" "tests" "test")))))))
|
(invoke "make" "-C" "tests" "test"))))))
|
||||||
(synopsis "Command line tool for transferring data with URL syntax")
|
(synopsis "Command line tool for transferring data with URL syntax")
|
||||||
(description
|
(description
|
||||||
"curl is a command line tool for transferring data with URL syntax,
|
"curl is a command line tool for transferring data with URL syntax,
|
||||||
|
@ -139,10 +141,10 @@ tunneling, and so on.")
|
||||||
"See COPYING in the distribution."))
|
"See COPYING in the distribution."))
|
||||||
(home-page "https://curl.haxx.se/")))
|
(home-page "https://curl.haxx.se/")))
|
||||||
|
|
||||||
(define-public curl-7.59.0
|
(define-public curl-7.60.0
|
||||||
(package
|
(package
|
||||||
(inherit curl)
|
(inherit curl)
|
||||||
(version "7.59.0")
|
(version "7.60.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -150,7 +152,7 @@ tunneling, and so on.")
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1z310hrjm2vmbcpkyp81dcmj9rk127zkjyawpy2pah0nz6yslkp4"))))))
|
"1876ck0smbqz3xakm7s6q6gh4zarh9pv3izf4vlzgpc9xn6zydl7"))))))
|
||||||
|
|
||||||
(define-public kurly
|
(define-public kurly
|
||||||
(package
|
(package
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2013, 2017 Cyril Roelandt <tipecaml@gmail.com>
|
;;; Copyright © 2013, 2017 Cyril Roelandt <tipecaml@gmail.com>
|
||||||
;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
|
;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
|
||||||
|
@ -28,7 +28,7 @@
|
||||||
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
|
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
|
||||||
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
||||||
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
|
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
|
||||||
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2017 Kristofer Buffington <kristoferbuffington@gmail.com>
|
;;; Copyright © 2017 Kristofer Buffington <kristoferbuffington@gmail.com>
|
||||||
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
||||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||||
|
@ -163,14 +163,14 @@ either single machines or networked clusters.")
|
||||||
(define-public gdbm
|
(define-public gdbm
|
||||||
(package
|
(package
|
||||||
(name "gdbm")
|
(name "gdbm")
|
||||||
(version "1.13")
|
(version "1.14.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/gdbm/gdbm-"
|
(uri (string-append "mirror://gnu/gdbm/gdbm-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0lx201q20dvc70f8a3c9s7s18z15inlxvbffph97ngvrgnyjq9cx"))))
|
"0pxwz3jlwvglq2mrbxvrjgr8pa0aj73p3v9sxmdlj570zw0gzknd"))))
|
||||||
(arguments `(#:configure-flags '("--enable-libgdbm-compat")))
|
(arguments `(#:configure-flags '("--enable-libgdbm-compat")))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://www.gnu.org.ua/software/gdbm")
|
(home-page "http://www.gnu.org.ua/software/gdbm")
|
||||||
|
@ -254,23 +254,22 @@ standard Go idioms.")
|
||||||
(("docdir[[:blank:]]*=.*")
|
(("docdir[[:blank:]]*=.*")
|
||||||
(string-append "docdir = " doc "/share/doc/bdb")))
|
(string-append "docdir = " doc "/share/doc/bdb")))
|
||||||
|
|
||||||
(zero?
|
(invoke "./dist/configure"
|
||||||
(system* "./dist/configure"
|
(string-append "--prefix=" out)
|
||||||
(string-append "--prefix=" out)
|
(string-append "CONFIG_SHELL=" (which "bash"))
|
||||||
(string-append "CONFIG_SHELL=" (which "bash"))
|
(string-append "SHELL=" (which "bash"))
|
||||||
(string-append "SHELL=" (which "bash"))
|
|
||||||
|
|
||||||
;; Remove 7 MiB of .a files.
|
;; Remove 7 MiB of .a files.
|
||||||
"--disable-static"
|
"--disable-static"
|
||||||
|
|
||||||
;; The compatibility mode is needed by some packages,
|
;; The compatibility mode is needed by some packages,
|
||||||
;; notably iproute2.
|
;; notably iproute2.
|
||||||
"--enable-compat185"
|
"--enable-compat185"
|
||||||
|
|
||||||
;; The following flag is needed so that the inclusion
|
;; The following flag is needed so that the inclusion
|
||||||
;; of db_cxx.h into C++ files works; it leads to
|
;; of db_cxx.h into C++ files works; it leads to
|
||||||
;; HAVE_CXX_STDHEADERS being defined in db_cxx.h.
|
;; HAVE_CXX_STDHEADERS being defined in db_cxx.h.
|
||||||
"--enable-cxx"))))))))
|
"--enable-cxx")))))))
|
||||||
(synopsis "Berkeley database")
|
(synopsis "Berkeley database")
|
||||||
(description
|
(description
|
||||||
"Berkeley DB is an embeddable database allowing developers the choice of
|
"Berkeley DB is an embeddable database allowing developers the choice of
|
||||||
|
@ -308,28 +307,27 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.")
|
||||||
(("docdir[[:blank:]]*=.*")
|
(("docdir[[:blank:]]*=.*")
|
||||||
(string-append "docdir = " doc "/share/doc/bdb")))
|
(string-append "docdir = " doc "/share/doc/bdb")))
|
||||||
|
|
||||||
(zero?
|
(invoke "./dist/configure"
|
||||||
(system* "./dist/configure"
|
(string-append "--prefix=" out)
|
||||||
(string-append "--prefix=" out)
|
(string-append "CONFIG_SHELL=" (which "bash"))
|
||||||
(string-append "CONFIG_SHELL=" (which "bash"))
|
(string-append "SHELL=" (which "bash"))
|
||||||
(string-append "SHELL=" (which "bash"))
|
|
||||||
|
|
||||||
;; Bdb doesn't recognize aarch64 as an architecture.
|
;; Bdb doesn't recognize aarch64 as an architecture.
|
||||||
,@(if (string=? "aarch64-linux" (%current-system))
|
,@(if (string=? "aarch64-linux" (%current-system))
|
||||||
'("--build=aarch64-unknown-linux-gnu")
|
'("--build=aarch64-unknown-linux-gnu")
|
||||||
'())
|
'())
|
||||||
|
|
||||||
;; Remove 7 MiB of .a files.
|
;; Remove 7 MiB of .a files.
|
||||||
"--disable-static"
|
"--disable-static"
|
||||||
|
|
||||||
;; The compatibility mode is needed by some packages,
|
;; The compatibility mode is needed by some packages,
|
||||||
;; notably iproute2.
|
;; notably iproute2.
|
||||||
"--enable-compat185"
|
"--enable-compat185"
|
||||||
|
|
||||||
;; The following flag is needed so that the inclusion
|
;; The following flag is needed so that the inclusion
|
||||||
;; of db_cxx.h into C++ files works; it leads to
|
;; of db_cxx.h into C++ files works; it leads to
|
||||||
;; HAVE_CXX_STDHEADERS being defined in db_cxx.h.
|
;; HAVE_CXX_STDHEADERS being defined in db_cxx.h.
|
||||||
"--enable-cxx"))))))))))
|
"--enable-cxx")))))))))
|
||||||
|
|
||||||
(define-public es-dump-restore
|
(define-public es-dump-restore
|
||||||
(package
|
(package
|
||||||
|
@ -439,7 +437,8 @@ applications.")
|
||||||
(string-append "src/third_party/" dir)))
|
(string-append "src/third_party/" dir)))
|
||||||
'("pcre-8.41" "scons-2.5.0" "snappy-1.1.3"
|
'("pcre-8.41" "scons-2.5.0" "snappy-1.1.3"
|
||||||
"valgrind-3.11.0" "wiredtiger"
|
"valgrind-3.11.0" "wiredtiger"
|
||||||
"yaml-cpp-0.5.3" "zlib-1.2.8"))))
|
"yaml-cpp-0.5.3" "zlib-1.2.8"))
|
||||||
|
#t))
|
||||||
(patches
|
(patches
|
||||||
(list
|
(list
|
||||||
(search-patch "mongodb-support-unknown-linux-distributions.patch")))))
|
(search-patch "mongodb-support-unknown-linux-distributions.patch")))))
|
||||||
|
@ -596,7 +595,8 @@ RDBMS systems (which are deep in functionality).")
|
||||||
(substitute* "cmake/boost.cmake"
|
(substitute* "cmake/boost.cmake"
|
||||||
(("59")
|
(("59")
|
||||||
,(match (string-split (package-version boost) #\.)
|
,(match (string-split (package-version boost) #\.)
|
||||||
((_ minor . _) minor))))))
|
((_ minor . _) minor))))
|
||||||
|
#t))
|
||||||
(add-after
|
(add-after
|
||||||
'install 'remove-extra-binaries
|
'install 'remove-extra-binaries
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
@ -627,7 +627,7 @@ Language.")
|
||||||
(define-public mariadb
|
(define-public mariadb
|
||||||
(package
|
(package
|
||||||
(name "mariadb")
|
(name "mariadb")
|
||||||
(version "10.1.29")
|
(version "10.1.33")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://downloads.mariadb.org/f/"
|
(uri (string-append "https://downloads.mariadb.org/f/"
|
||||||
|
@ -635,7 +635,7 @@ Language.")
|
||||||
name "-" version ".tar.gz"))
|
name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1m3ya6c3snnsyscd0waklayqfv0vhws52iizv2j5masj5xhdbfvk"))))
|
"0bax748j4srsyhw5cs5jvwigndh0zwmf4r2cjvhja31ckx8jqccl"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags
|
'(#:configure-flags
|
||||||
|
@ -682,7 +682,8 @@ Language.")
|
||||||
(with-directory-excursion out
|
(with-directory-excursion out
|
||||||
(for-each delete-file-recursively
|
(for-each delete-file-recursively
|
||||||
'("data" "mysql-test" "sql-bench"
|
'("data" "mysql-test" "sql-bench"
|
||||||
"share/man/man1/mysql-test-run.pl.1")))))))))
|
"share/man/man1/mysql-test-run.pl.1")))
|
||||||
|
#t))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("bison" ,bison)
|
`(("bison" ,bison)
|
||||||
("perl" ,perl)))
|
("perl" ,perl)))
|
||||||
|
@ -1007,7 +1008,7 @@ for example from a shell script.")
|
||||||
(define-public sqlite
|
(define-public sqlite
|
||||||
(package
|
(package
|
||||||
(name "sqlite")
|
(name "sqlite")
|
||||||
(version "3.21.0")
|
(version "3.23.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (let ((numeric-version
|
(uri (let ((numeric-version
|
||||||
|
@ -1019,11 +1020,11 @@ for example from a shell script.")
|
||||||
(map (cut string-pad <> 2 #\0)
|
(map (cut string-pad <> 2 #\0)
|
||||||
other-digits))
|
other-digits))
|
||||||
6 #\0))))))
|
6 #\0))))))
|
||||||
(string-append "https://sqlite.org/2017/sqlite-autoconf-"
|
(string-append "https://sqlite.org/2018/sqlite-autoconf-"
|
||||||
numeric-version ".tar.gz")))
|
numeric-version ".tar.gz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1qxvzdjwzw6k0kqjfabj86rnq87xdbwbca7laxxdhnh0fmkm3pfp"))))
|
"0jbf78g3cm5wq77k7sfg8fb6rz44hnp9hs7p5d66fwd000c1lwdp"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("readline" ,readline)))
|
(inputs `(("readline" ,readline)))
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -1124,7 +1125,7 @@ extremely small.")
|
||||||
(define-public perl-dbix-class
|
(define-public perl-dbix-class
|
||||||
(package
|
(package
|
||||||
(name "perl-dbix-class")
|
(name "perl-dbix-class")
|
||||||
(version "0.082840")
|
(version "0.082841")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -1132,7 +1133,7 @@ extremely small.")
|
||||||
"DBIx-Class-" version ".tar.gz"))
|
"DBIx-Class-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1vw1f756g8m5hq11nqf5dk2cw2y4mqq91ca5p75fn5g3fp8syja0"))))
|
"1gf3hgv8f9rnr8bl4ljgsqk4aliphmvljhsk4282kvdc4mcgh1fp"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl-dbd-sqlite" ,perl-dbd-sqlite)
|
`(("perl-dbd-sqlite" ,perl-dbd-sqlite)
|
||||||
|
@ -1232,7 +1233,7 @@ introspected and examined.")
|
||||||
(define-public perl-dbix-class-schema-loader
|
(define-public perl-dbix-class-schema-loader
|
||||||
(package
|
(package
|
||||||
(name "perl-dbix-class-schema-loader")
|
(name "perl-dbix-class-schema-loader")
|
||||||
(version "0.07047")
|
(version "0.07049")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -1240,7 +1241,7 @@ introspected and examined.")
|
||||||
"DBIx-Class-Schema-Loader-" version ".tar.gz"))
|
"DBIx-Class-Schema-Loader-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"06s2q6xj95600sdlfph57spjk2z1gjs4zwq5b7mz7d5izcxgnwb6"))))
|
"0r57fv71ypxafb85cpxph1hdqii7ipjwvc19yb6fpkvq2ggcssg8"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl-config-any" ,perl-config-any)
|
`(("perl-config-any" ,perl-config-any)
|
||||||
|
@ -1486,14 +1487,14 @@ similar to BerkeleyDB, LevelDB, etc.")
|
||||||
(define-public redis
|
(define-public redis
|
||||||
(package
|
(package
|
||||||
(name "redis")
|
(name "redis")
|
||||||
(version "4.0.2")
|
(version "4.0.9")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://download.redis.io/releases/redis-"
|
(uri (string-append "http://download.redis.io/releases/redis-"
|
||||||
version".tar.gz"))
|
version".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"04s8cgvwjj1979s3hg8zkwc9pyn3jkjpz5zidp87kfcipifr385i"))))
|
"0465bv6yxnwmas3wzg07vmrprv2pxhnr56hn5pxrybwf66y76kyz"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; tests related to master/slave and replication fail
|
'(#:tests? #f ; tests related to master/slave and replication fail
|
||||||
|
@ -1628,12 +1629,7 @@ trees (LSM), for sustained throughput under random insert workloads.")
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(list (string-append "--with-libwiredtiger-prefix="
|
(list (string-append "--with-libwiredtiger-prefix="
|
||||||
(assoc-ref %build-inputs "wiredtiger")))
|
(assoc-ref %build-inputs "wiredtiger")))
|
||||||
#:make-flags '("GUILE_AUTO_COMPILE=0")
|
#:make-flags '("GUILE_AUTO_COMPILE=0")))
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'bootstrap
|
|
||||||
(lambda _
|
|
||||||
(invoke "sh" "bootstrap"))))))
|
|
||||||
;; TODO: Remove microkanren.scm when we have a separate package
|
;; TODO: Remove microkanren.scm when we have a separate package
|
||||||
;; for it.
|
;; for it.
|
||||||
(native-inputs
|
(native-inputs
|
||||||
|
@ -1931,20 +1927,22 @@ etc., and an SQL engine for performing simple SQL queries.")
|
||||||
(define-public python-lmdb
|
(define-public python-lmdb
|
||||||
(package
|
(package
|
||||||
(name "python-lmdb")
|
(name "python-lmdb")
|
||||||
(version "0.93")
|
(version "0.94")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "lmdb" version))
|
(uri (pypi-uri "lmdb" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0xdpb298fyl68acadbwv5801wcwfpnhc7sm4bnrq1x4bd5dhhsql"))
|
"1zh38gvkqw1jm5105if6rr7ccbgyxr7k2rm5ygb9ab3bq82pyaww"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Delete bundled lmdb source files.
|
;; Delete bundled lmdb source files.
|
||||||
'(for-each delete-file (list "lib/lmdb.h"
|
'(begin
|
||||||
"lib/mdb.c"
|
(for-each delete-file (list "lib/lmdb.h"
|
||||||
"lib/midl.c"
|
"lib/mdb.c"
|
||||||
"lib/midl.h")))))
|
"lib/midl.c"
|
||||||
|
"lib/midl.h"))
|
||||||
|
#t))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("lmdb" ,lmdb)))
|
`(("lmdb" ,lmdb)))
|
||||||
|
@ -2063,14 +2061,14 @@ and web services platform functionality.")
|
||||||
(define-public r-rmysql
|
(define-public r-rmysql
|
||||||
(package
|
(package
|
||||||
(name "r-rmysql")
|
(name "r-rmysql")
|
||||||
(version "0.10.14")
|
(version "0.10.15")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "RMySQL" version))
|
(uri (cran-uri "RMySQL" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"01891kn263b02y6addgpy3gn5axg7m10bqbqv7dg9yx9k85am590"))))
|
"0bmc7w5fnkjaf333sgc0hskiy332m9gmfaxg0yzkjxscpizdw43n"))))
|
||||||
(properties `((upstream-name . "RMySQL")))
|
(properties `((upstream-name . "RMySQL")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
|
|
|
@ -112,7 +112,7 @@ contains the archive keys used for that.")
|
||||||
(define-public debootstrap
|
(define-public debootstrap
|
||||||
(package
|
(package
|
||||||
(name "debootstrap")
|
(name "debootstrap")
|
||||||
(version "1.0.95")
|
(version "1.0.101")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -120,7 +120,7 @@ contains the archive keys used for that.")
|
||||||
name "_" version ".tar.gz"))
|
name "_" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1xpd1yblcgwhri64hzgxhalpf5j8gqbmkrsm1fs0pbwiy0wdz0ry"))))
|
"1p1a81s8hq73byd7256iljdls389x2q7w6srgrgfmx5bl1csnzp3"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -129,6 +129,7 @@ contains the archive keys used for that.")
|
||||||
(add-after 'unpack 'patch-source
|
(add-after 'unpack 'patch-source
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out"))
|
(let ((out (assoc-ref outputs "out"))
|
||||||
|
(coreutils (assoc-ref inputs "coreutils"))
|
||||||
(wget (assoc-ref inputs "wget"))
|
(wget (assoc-ref inputs "wget"))
|
||||||
(debian (assoc-ref inputs "debian-keyring"))
|
(debian (assoc-ref inputs "debian-keyring"))
|
||||||
(ubuntu (assoc-ref inputs "ubuntu-keyring")))
|
(ubuntu (assoc-ref inputs "ubuntu-keyring")))
|
||||||
|
@ -141,6 +142,7 @@ contains the archive keys used for that.")
|
||||||
(substitute* "scripts/gutsy"
|
(substitute* "scripts/gutsy"
|
||||||
(("/usr") ubuntu))
|
(("/usr") ubuntu))
|
||||||
(substitute* "debootstrap"
|
(substitute* "debootstrap"
|
||||||
|
(("chroot ") (string-append coreutils "/bin/chroot "))
|
||||||
(("=/usr") (string-append "=" out)))
|
(("=/usr") (string-append "=" out)))
|
||||||
(substitute* "functions"
|
(substitute* "functions"
|
||||||
(("wget ") (string-append wget "/bin/wget ")))
|
(("wget ") (string-append wget "/bin/wget ")))
|
||||||
|
@ -154,7 +156,8 @@ contains the archive keys used for that.")
|
||||||
#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
|
#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
|
||||||
#:tests? #f)) ; no tests
|
#:tests? #f)) ; no tests
|
||||||
(inputs
|
(inputs
|
||||||
`(("debian-keyring" ,debian-archive-keyring)
|
`(("coreutils" ,coreutils)
|
||||||
|
("debian-keyring" ,debian-archive-keyring)
|
||||||
("ubuntu-keyring" ,ubuntu-keyring)
|
("ubuntu-keyring" ,ubuntu-keyring)
|
||||||
("wget" ,wget)))
|
("wget" ,wget)))
|
||||||
;; The following are required for debootstrap to work correctly
|
;; The following are required for debootstrap to work correctly
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
#:use-module (gnu packages bash)
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
#:use-module (gnu packages golang)
|
#:use-module (gnu packages golang)
|
||||||
#:use-module (gnu packages indent)
|
#:use-module (gnu packages code)
|
||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pretty-print)
|
#:use-module (gnu packages pretty-print)
|
||||||
|
@ -300,10 +300,7 @@ down the road.")
|
||||||
(which "sh"))))))
|
(which "sh"))))))
|
||||||
(add-before 'configure 'repack-make
|
(add-before 'configure 'repack-make
|
||||||
(lambda _
|
(lambda _
|
||||||
(zero? (system* "tar" "cJf" "./make.tar.xz" ,make-dir))))
|
(zero? (system* "tar" "cJf" "./make.tar.xz" ,make-dir))))))))
|
||||||
(add-after 'unpack 'bootstrap
|
|
||||||
(lambda _
|
|
||||||
(zero? (system* "autoreconf" "-vfi"))))))))
|
|
||||||
(home-page "https://github.com/losalamos/stress-make")
|
(home-page "https://github.com/losalamos/stress-make")
|
||||||
(synopsis "Expose race conditions in Makefiles")
|
(synopsis "Expose race conditions in Makefiles")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flasher.co.il>
|
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flasher.co.il>
|
||||||
|
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -57,11 +58,10 @@
|
||||||
|
|
||||||
;; The test-suite needs to have a non-empty stdin:
|
;; The test-suite needs to have a non-empty stdin:
|
||||||
;; <http://lists.gnu.org/archive/html/bug-dejagnu/2003-06/msg00002.html>.
|
;; <http://lists.gnu.org/archive/html/bug-dejagnu/2003-06/msg00002.html>.
|
||||||
(zero?
|
(unless (zero? (system "make check < /dev/zero"))
|
||||||
(system "make check < /dev/zero")))
|
(error "make check failed")))
|
||||||
(begin
|
(display "test suite cannot be run, skipping\n"))
|
||||||
(display "test suite cannot be run, skipping\n")
|
#t))
|
||||||
#t))))
|
|
||||||
(add-after 'install 'post-install
|
(add-after 'install 'post-install
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
;; Use the right `expect' binary.
|
;; Use the right `expect' binary.
|
||||||
|
@ -71,7 +71,8 @@
|
||||||
(("^mypath.*$" all)
|
(("^mypath.*$" all)
|
||||||
(string-append all
|
(string-append all
|
||||||
"export PATH="
|
"export PATH="
|
||||||
expect "/bin:$PATH\n")))))))))
|
expect "/bin:$PATH\n")))
|
||||||
|
#t))))))
|
||||||
(home-page
|
(home-page
|
||||||
"https://www.gnu.org/software/dejagnu/")
|
"https://www.gnu.org/software/dejagnu/")
|
||||||
(synopsis "GNU software testing framework")
|
(synopsis "GNU software testing framework")
|
||||||
|
|
|
@ -63,7 +63,7 @@
|
||||||
(gz (assoc-ref %build-inputs "gzip"))
|
(gz (assoc-ref %build-inputs "gzip"))
|
||||||
(texi (assoc-ref %build-inputs "texinfo")))
|
(texi (assoc-ref %build-inputs "texinfo")))
|
||||||
(setenv "PATH" (string-append gz "/bin"))
|
(setenv "PATH" (string-append gz "/bin"))
|
||||||
(system* (string-append tar "/bin/tar") "xvf" source)
|
(invoke (string-append tar "/bin/tar") "xvf" source)
|
||||||
|
|
||||||
(chdir (string-append "vera-" ,version))
|
(chdir (string-append "vera-" ,version))
|
||||||
(mkdir-p info)
|
(mkdir-p info)
|
||||||
|
@ -71,14 +71,12 @@
|
||||||
|
|
||||||
;; XXX: Use '--force' because the document is unhappy
|
;; XXX: Use '--force' because the document is unhappy
|
||||||
;; with Texinfo 5 (yes, documents can be unhappy.)
|
;; with Texinfo 5 (yes, documents can be unhappy.)
|
||||||
(and (zero?
|
(invoke (string-append texi "/bin/makeinfo")
|
||||||
(system* (string-append texi "/bin/makeinfo")
|
"vera.texi" "--force" "-o"
|
||||||
"vera.texi" "--force" "-o"
|
(string-append info "/vera.info"))
|
||||||
(string-append info "/vera.info")))
|
(invoke (string-append texi "/bin/makeinfo")
|
||||||
(zero?
|
"vera.texi" "--force" "--html" "-o"
|
||||||
(system* (string-append texi "/bin/makeinfo")
|
(string-append html "/vera.html"))))
|
||||||
"vera.texi" "--force" "--html" "-o"
|
|
||||||
(string-append html "/vera.html"))))))
|
|
||||||
#:modules ((guix build utils))))
|
#:modules ((guix build utils))))
|
||||||
(native-inputs `(("texinfo" ,texinfo)
|
(native-inputs `(("texinfo" ,texinfo)
|
||||||
("tar" ,tar)
|
("tar" ,tar)
|
||||||
|
@ -113,9 +111,9 @@ acronyms distributed as an info document.")
|
||||||
(set-path-environment-variable "PATH" '("bin")
|
(set-path-environment-variable "PATH" '("bin")
|
||||||
(list tar xz))
|
(list tar xz))
|
||||||
(mkdir-p datadir)
|
(mkdir-p datadir)
|
||||||
(zero? (system* "tar" "-C" datadir
|
(invoke "tar" "-C" datadir
|
||||||
"--strip-components=1"
|
"--strip-components=1"
|
||||||
"-xvf" src))))
|
"-xvf" src)))
|
||||||
#:modules ((guix build utils))))
|
#:modules ((guix build utils))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("tar" ,tar)
|
`(("tar" ,tar)
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
|
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
|
||||||
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
|
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
|
||||||
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
|
||||||
|
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -53,6 +54,7 @@
|
||||||
#:use-module (gnu packages guile)
|
#:use-module (gnu packages guile)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages vim)
|
#:use-module (gnu packages vim)
|
||||||
|
#:use-module (gnu packages w3m)
|
||||||
#:use-module (gnu packages xml))
|
#:use-module (gnu packages xml))
|
||||||
|
|
||||||
(define-public parted
|
(define-public parted
|
||||||
|
@ -464,15 +466,15 @@ a card with a smaller capacity than stated.")
|
||||||
(define-public duperemove
|
(define-public duperemove
|
||||||
(package
|
(package
|
||||||
(name "duperemove")
|
(name "duperemove")
|
||||||
(version "v0.11.beta4")
|
(version "0.11")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://github.com/markfasheh/duperemove/archive/"
|
"https://github.com/markfasheh/duperemove/archive/v"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1h5nk03kflfnzihvn2rvfz1h623x1zpkn9hp29skd7n3f2bc5k7x"))
|
"0rjmmh42yqw9a5j6sp31cqwxk3s97dsi4xz0wpxpllj7bsp3aiw5"))
|
||||||
(file-name (string-append name "-" version ".tar.gz"))))
|
(file-name (string-append name "-" version ".tar.gz"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
|
@ -481,11 +483,10 @@ a card with a smaller capacity than stated.")
|
||||||
`(("glib" ,glib)
|
`(("glib" ,glib)
|
||||||
("sqlite" ,sqlite)))
|
("sqlite" ,sqlite)))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ;no test suite
|
`(#:tests? #f ; no test suite
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
;; no configure script
|
(delete 'configure)) ; no configure script
|
||||||
(delete 'configure))
|
|
||||||
#:make-flags (list (string-append "PREFIX=" %output)
|
#:make-flags (list (string-append "PREFIX=" %output)
|
||||||
"CC=gcc")))
|
"CC=gcc")))
|
||||||
(home-page "https://github.com/markfasheh/duperemove")
|
(home-page "https://github.com/markfasheh/duperemove")
|
||||||
|
@ -517,12 +518,28 @@ Duperemove can also take input from the @command{fdupes} program.")
|
||||||
(base32
|
(base32
|
||||||
"1lnzkrxcnlwnyi3z0v8ybyp8d5rm26qm35rr68kbs2lbs06inha0"))))
|
"1lnzkrxcnlwnyi3z0v8ybyp8d5rm26qm35rr68kbs2lbs06inha0"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("w3m" ,w3m)))
|
||||||
(native-inputs ;for tests
|
(native-inputs ;for tests
|
||||||
`(("python-pytest" ,python-pytest)
|
`(("python-pytest" ,python-pytest)
|
||||||
("python-pylint" ,python-pylint)
|
("python-pylint" ,python-pylint)
|
||||||
("python-flake8" ,python-flake8)
|
("python-flake8" ,python-flake8)
|
||||||
("which" ,which)))
|
("which" ,which)))
|
||||||
(arguments '(#:test-target "test"))
|
(arguments
|
||||||
|
'(#:test-target "test"
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'configure 'wrap-program
|
||||||
|
;; Tell 'ranger' where 'w3mimgdisplay' is.
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(ranger (string-append out "/bin/ranger"))
|
||||||
|
(w3m (assoc-ref inputs "w3m"))
|
||||||
|
(w3mimgdisplay (string-append w3m
|
||||||
|
"/libexec/w3m/w3mimgdisplay")))
|
||||||
|
(wrap-program ranger
|
||||||
|
`("W3MIMGDISPLAY_PATH" ":" prefix (,w3mimgdisplay)))
|
||||||
|
#t))))))
|
||||||
(home-page "https://ranger.github.io/")
|
(home-page "https://ranger.github.io/")
|
||||||
(synopsis "Console file manager")
|
(synopsis "Console file manager")
|
||||||
(description "ranger is a console file manager with Vi key bindings. It
|
(description "ranger is a console file manager with Vi key bindings. It
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
;;; Copyright © 2017 Sou Bunnbu <iyzsong@gmail.com>
|
;;; Copyright © 2017 Sou Bunnbu <iyzsong@gmail.com>
|
||||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -143,7 +144,8 @@ Qt-style API for Wayland clients.")
|
||||||
"sddm-" version ".tar.xz"))
|
"sddm-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ch6rdppgy2vbzw0c2x9a4c6ry46vx7p6b76d8xbh2nvxh23xv0k"))))
|
"0ch6rdppgy2vbzw0c2x9a4c6ry46vx7p6b76d8xbh2nvxh23xv0k"))
|
||||||
|
(patches (search-patches "sddm-fix-build-with-qt-5.11-1024.patch"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("extra-cmake-modules" ,extra-cmake-modules)
|
`(("extra-cmake-modules" ,extra-cmake-modules)
|
||||||
|
|
|
@ -98,7 +98,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
|
||||||
(define-public isc-bind
|
(define-public isc-bind
|
||||||
(package
|
(package
|
||||||
(name "bind")
|
(name "bind")
|
||||||
(version "9.12.1")
|
(version "9.12.1-P2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -106,7 +106,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"043mjcw405qa0ghm5dkhfsq35gsy279724fz3mjqpr1mbi14dr0n"))))
|
"0a9dvyg1dk7vpqn9gz7p5jas3bz7z22bjd66b98g1qk16i2w7rqd"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(outputs `("out" "utils"))
|
(outputs `("out" "utils"))
|
||||||
(inputs
|
(inputs
|
||||||
|
@ -176,7 +176,9 @@ high-volume and high-reliability applications. The name BIND stands for
|
||||||
(snippet
|
(snippet
|
||||||
;; Delete bundled libltdl. XXX: This package also bundles
|
;; Delete bundled libltdl. XXX: This package also bundles
|
||||||
;; a modified libevent that cannot currently be removed.
|
;; a modified libevent that cannot currently be removed.
|
||||||
'(delete-file-recursively "libltdl"))))
|
'(begin
|
||||||
|
(delete-file-recursively "libltdl")
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -490,14 +492,14 @@ Extensions} (DNSSEC).")
|
||||||
(define-public knot
|
(define-public knot
|
||||||
(package
|
(package
|
||||||
(name "knot")
|
(name "knot")
|
||||||
(version "2.6.6")
|
(version "2.6.7")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://secure.nic.cz/files/knot-dns/"
|
(uri (string-append "https://secure.nic.cz/files/knot-dns/"
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"02h8qdkja4kic3br79svws6r2pq1ijz945238v99d998d2jxh6ci"))
|
"0hr2m664ckjicv3pq2lk16m61pscknywxv2ydnrzfqf10m5h0ahw"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
|
|
|
@ -58,11 +58,12 @@
|
||||||
(dtd (string-append out "/xml/dtd/docbook")))
|
(dtd (string-append out "/xml/dtd/docbook")))
|
||||||
(mkdir-p dtd)
|
(mkdir-p dtd)
|
||||||
(with-directory-excursion dtd
|
(with-directory-excursion dtd
|
||||||
(system* unzip source))
|
(invoke unzip source))
|
||||||
(substitute* (string-append out "/xml/dtd/docbook/catalog.xml")
|
(substitute* (string-append out "/xml/dtd/docbook/catalog.xml")
|
||||||
(("uri=\"")
|
(("uri=\"")
|
||||||
(string-append
|
(string-append
|
||||||
"uri=\"file://" dtd "/")))))
|
"uri=\"file://" dtd "/")))
|
||||||
|
#t))
|
||||||
#:modules ((guix build utils))))
|
#:modules ((guix build utils))))
|
||||||
(native-inputs `(("unzip" ,unzip)))
|
(native-inputs `(("unzip" ,unzip)))
|
||||||
(home-page "http://docbook.org")
|
(home-page "http://docbook.org")
|
||||||
|
@ -127,7 +128,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
||||||
(dtd (string-append (assoc-ref %outputs "out")
|
(dtd (string-append (assoc-ref %outputs "out")
|
||||||
"/xml/dtd/docbook")))
|
"/xml/dtd/docbook")))
|
||||||
(mkdir-p dtd)
|
(mkdir-p dtd)
|
||||||
(zero? (system* unzip source "-d" dtd))))))))
|
(invoke unzip source "-d" dtd)))))))
|
||||||
|
|
||||||
(define-public docbook-xsl
|
(define-public docbook-xsl
|
||||||
(package
|
(package
|
||||||
|
@ -154,7 +155,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
||||||
(out (assoc-ref %outputs "out"))
|
(out (assoc-ref %outputs "out"))
|
||||||
(xsl (string-append out "/xml/xsl")))
|
(xsl (string-append out "/xml/xsl")))
|
||||||
(setenv "PATH" (string-append bzip2 "/bin" ":" xz "/bin"))
|
(setenv "PATH" (string-append bzip2 "/bin" ":" xz "/bin"))
|
||||||
(system* (string-append tar "/bin/tar") "xvf" source)
|
(invoke (string-append tar "/bin/tar") "xvf" source)
|
||||||
|
|
||||||
(mkdir-p xsl)
|
(mkdir-p xsl)
|
||||||
(copy-recursively name-version
|
(copy-recursively name-version
|
||||||
|
@ -163,8 +164,9 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
||||||
(substitute* (string-append xsl "/" name-version "/catalog.xml")
|
(substitute* (string-append xsl "/" name-version "/catalog.xml")
|
||||||
(("rewritePrefix=\"./")
|
(("rewritePrefix=\"./")
|
||||||
(string-append "rewritePrefix=\"file://" xsl "/"
|
(string-append "rewritePrefix=\"file://" xsl "/"
|
||||||
name-version "/")))))
|
name-version "/")))
|
||||||
#:modules ((guix build utils))))
|
#t))
|
||||||
|
#:modules ((guix build utils))))
|
||||||
(native-inputs `(("bzip2" ,bzip2)
|
(native-inputs `(("bzip2" ,bzip2)
|
||||||
("xz" ,xz)
|
("xz" ,xz)
|
||||||
("tar" ,tar)))
|
("tar" ,tar)))
|
||||||
|
@ -236,19 +238,19 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
||||||
#:use-setuptools? #f
|
#:use-setuptools? #f
|
||||||
#:tests? #f ;no 'test' command
|
#:tests? #f ;no 'test' command
|
||||||
#:phases
|
#:phases
|
||||||
(alist-cons-after
|
(modify-phases %standard-phases
|
||||||
'wrap 'set-path
|
(add-after 'wrap 'set-path
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
;; dblatex executes helper programs at runtime.
|
;; dblatex executes helper programs at runtime.
|
||||||
(wrap-program (string-append out "/bin/dblatex")
|
(wrap-program (string-append out "/bin/dblatex")
|
||||||
`("PATH" ":" prefix
|
`("PATH" ":" prefix
|
||||||
,(map (lambda (input)
|
,(map (lambda (input)
|
||||||
(string-append (assoc-ref inputs input)
|
(string-append (assoc-ref inputs input)
|
||||||
"/bin"))
|
"/bin"))
|
||||||
'("libxslt" "texlive"
|
'("libxslt" "texlive"
|
||||||
"imagemagick" "inkscape"))))))
|
"imagemagick" "inkscape"))))
|
||||||
%standard-phases)))
|
#t))))))
|
||||||
(home-page "http://dblatex.sourceforge.net")
|
(home-page "http://dblatex.sourceforge.net")
|
||||||
(synopsis "DocBook to LaTeX Publishing")
|
(synopsis "DocBook to LaTeX Publishing")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2014, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
||||||
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
|
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
|
||||||
|
@ -59,7 +59,7 @@
|
||||||
`(#:tests? #f ; no 'check' target
|
`(#:tests? #f ; no 'check' target
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'bootstrap
|
(replace 'bootstrap
|
||||||
(lambda _
|
(lambda _
|
||||||
(invoke "autoconf")))
|
(invoke "autoconf")))
|
||||||
;; Some XML-related binaries are required for asciidoc's proper usage.
|
;; Some XML-related binaries are required for asciidoc's proper usage.
|
||||||
|
@ -139,10 +139,23 @@ markup) can be customized and extended by the user.")
|
||||||
("libxml2" ,libxml2) ; provides xmllint for the tests
|
("libxml2" ,libxml2) ; provides xmllint for the tests
|
||||||
("python" ,python-2))) ; for creating the documentation
|
("python" ,python-2))) ; for creating the documentation
|
||||||
(inputs
|
(inputs
|
||||||
`(("bash" ,bash-minimal)))
|
`(("bash" ,bash-minimal)
|
||||||
|
,@(if (string-prefix? "armhf-" (%current-system))
|
||||||
|
`(("gcc-ice-patch" ,@(search-patches "doxygen-gcc-ice.patch")))
|
||||||
|
'())))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:test-target "tests"
|
`(#:test-target "tests"
|
||||||
#:phases (modify-phases %standard-phases
|
#:phases (modify-phases %standard-phases
|
||||||
|
;; Work around an ICE that shows up on native compiles for
|
||||||
|
;; armhf-linux.
|
||||||
|
,@(if (string-prefix? "armhf-" (%current-system))
|
||||||
|
`((add-after 'unpack 'apply-gcc-patch
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let ((patch (assoc-ref inputs "gcc-ice-patch")))
|
||||||
|
(invoke "patch" "-p1" "--force"
|
||||||
|
"--input" patch)))))
|
||||||
|
'())
|
||||||
|
|
||||||
(add-before 'configure 'patch-sh
|
(add-before 'configure 'patch-sh
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(substitute* "src/portable.cpp"
|
(substitute* "src/portable.cpp"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2015, 2017, 2018 Alex Kost <alezost@gmail.com>
|
;;; Copyright © 2015, 2017, 2018 Alex Kost <alezost@gmail.com>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -32,7 +33,7 @@
|
||||||
(define-public dunst
|
(define-public dunst
|
||||||
(package
|
(package
|
||||||
(name "dunst")
|
(name "dunst")
|
||||||
(version "1.3.1")
|
(version "1.3.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -41,7 +42,7 @@
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1mkdp1vqc376z8clwm5s9070jq1g92j8hv2rr231jr2468fnwaga"))))
|
"12nj8qw3y3nl8sm24wizy2a7k06v1p88bnz1xr9l39h527xyidma"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; no check target
|
'(#:tests? #f ; no check target
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||||
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -22,27 +24,33 @@
|
||||||
(define-module (gnu packages education)
|
(define-module (gnu packages education)
|
||||||
#:use-module (ice-9 regex)
|
#:use-module (ice-9 regex)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages qt)
|
#:use-module (gnu packages base)
|
||||||
|
#:use-module (gnu packages bash)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
|
#:use-module (gnu packages freedesktop)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages gnome)
|
#:use-module (gnu packages gnome)
|
||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
|
#:use-module (gnu packages javascript)
|
||||||
#:use-module (gnu packages kde-frameworks) ; extra-cmake-modules
|
#:use-module (gnu packages kde-frameworks) ; extra-cmake-modules
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages qt)
|
||||||
#:use-module (gnu packages sdl)
|
#:use-module (gnu packages sdl)
|
||||||
#:use-module (gnu packages texinfo)
|
#:use-module (gnu packages texinfo)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
|
#:use-module (guix git-download)
|
||||||
#:use-module (guix svn-download)
|
#:use-module (guix svn-download)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (guix build-system gnu)
|
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (guix build-system trivial)
|
||||||
#:use-module (srfi srfi-1))
|
#:use-module (srfi srfi-1))
|
||||||
|
|
||||||
(define-public gcompris
|
(define-public gcompris
|
||||||
|
@ -107,7 +115,7 @@ of categories with some of the activities available in that category.
|
||||||
(define-public gcompris-qt
|
(define-public gcompris-qt
|
||||||
(package
|
(package
|
||||||
(name "gcompris-qt")
|
(name "gcompris-qt")
|
||||||
(version "0.90")
|
(version "0.91")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -116,11 +124,18 @@ of categories with some of the activities available in that category.
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1i5adxnhig849qxwi3c4v7r84q6agx1zxkd69fh4y7lcmq2qiaza"))))
|
"09h098w9q79hnzla1pcpqlnnr6dbafm4q6zmdp7wlk11ym8n9kvg"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'patch-for-qt5.11
|
||||||
|
(lambda _
|
||||||
|
(substitute* "src/core/CMakeLists.txt"
|
||||||
|
(("qt5_use_modules") "target_link_libraries")
|
||||||
|
(("Qml Quick Gui Multimedia Network XmlPatterns Svg Xml Sensors Core")
|
||||||
|
"Qt5::Qml Qt5::Quick Qt5::Gui Qt5::Multimedia Qt5::Core Qt5::Svg Qt5::Xml Qt5::XmlPatterns Qt5::Sensors"))
|
||||||
|
#t))
|
||||||
(add-after 'install 'wrap-executable
|
(add-after 'install 'wrap-executable
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
|
@ -209,7 +224,7 @@ Currently available boards include:
|
||||||
(substitute* "def/defines.h"
|
(substitute* "def/defines.h"
|
||||||
(("\"/usr/") (string-append "\"" out "/")))
|
(("\"/usr/") (string-append "\"" out "/")))
|
||||||
;; Recreate Makefile
|
;; Recreate Makefile
|
||||||
(zero? (system* "qmake"))))))))
|
(invoke "qmake")))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("qt4" ,qt-4)
|
`(("qt4" ,qt-4)
|
||||||
("sqlite" ,sqlite)))
|
("sqlite" ,sqlite)))
|
||||||
|
@ -224,3 +239,65 @@ Useful support functions and an extensive progress tracker, topical lessons
|
||||||
and the ability to create your own practice lessons make learning to type
|
and the ability to create your own practice lessons make learning to type
|
||||||
easy.")
|
easy.")
|
||||||
(license license:gpl2)))
|
(license license:gpl2)))
|
||||||
|
|
||||||
|
(define-public snap
|
||||||
|
(package
|
||||||
|
(name "snap")
|
||||||
|
(version "4.1.2.7")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/jmoenig/Snap--Build-Your-Own-Blocks.git")
|
||||||
|
(commit version)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0cy3jhqqpmivqnfm9kmlnh3fhf3m3y4xqhikblk8vfjprh6vmcvd"))))
|
||||||
|
(build-system trivial-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:modules ((guix build utils))
|
||||||
|
#:builder
|
||||||
|
(begin
|
||||||
|
(use-modules (guix build utils))
|
||||||
|
(let* ((source (assoc-ref %build-inputs "source"))
|
||||||
|
(out (assoc-ref %outputs "out"))
|
||||||
|
(share (string-append out "/share/snap")))
|
||||||
|
(copy-recursively source share)
|
||||||
|
;; Replace the sole minified file in the package.
|
||||||
|
(with-directory-excursion share
|
||||||
|
(delete-file "FileSaver.min.js")
|
||||||
|
(symlink (string-append (assoc-ref %build-inputs "js-filesaver")
|
||||||
|
"/share/javascript/FileSaver.min.js")
|
||||||
|
"FileSaver.min.js"))
|
||||||
|
;; Create a "snap" executable.
|
||||||
|
(let* ((bin (string-append out "/bin"))
|
||||||
|
(script (string-append bin "/snap"))
|
||||||
|
(snap (string-append share "/snap.html"))
|
||||||
|
(bash (string-append (assoc-ref %build-inputs "bash")
|
||||||
|
"/bin/sh"))
|
||||||
|
(xdg-open (string-append (assoc-ref %build-inputs "xdg-utils")
|
||||||
|
"/bin/xdg-open")))
|
||||||
|
(mkdir-p bin)
|
||||||
|
(call-with-output-file script
|
||||||
|
(lambda (port)
|
||||||
|
(format port "#!~a\n~a '~a'" bash xdg-open snap)))
|
||||||
|
(chmod script #o555)))
|
||||||
|
#t)))
|
||||||
|
(inputs
|
||||||
|
`(("bash" ,bash-minimal)
|
||||||
|
("js-filesaver" ,js-filesaver)
|
||||||
|
("xdg-utils" ,xdg-utils)))
|
||||||
|
(home-page "https://snap.berkeley.edu")
|
||||||
|
(synopsis "Visual, blocks based programming language")
|
||||||
|
(description "Snap! (formerly BYOB) is a visual, drag-and-drop
|
||||||
|
programming language. It is an extended reimplementation of Scratch (a
|
||||||
|
project of the Lifelong Kindergarten Group at the MIT Media Lab) that
|
||||||
|
allows you to Build Your Own Blocks. It also features first class
|
||||||
|
lists, first class procedures, and continuations. These added
|
||||||
|
capabilities make it suitable for a serious introduction to computer
|
||||||
|
science for high school or college students.
|
||||||
|
|
||||||
|
This package provides a @command{snap} executable calling @command{xdg-open}
|
||||||
|
to open the application in a web browser, for offline usage.")
|
||||||
|
(license license:agpl3+)))
|
||||||
|
|
|
@ -56,6 +56,14 @@
|
||||||
`(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath="
|
`(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath="
|
||||||
(assoc-ref %outputs "out")
|
(assoc-ref %outputs "out")
|
||||||
"/lib"))
|
"/lib"))
|
||||||
|
|
||||||
|
;; Disable tests on MIPS (without changing
|
||||||
|
;; the arguments list on other systems).
|
||||||
|
,@(if (string-prefix? "mips" (or (%current-target-system)
|
||||||
|
(%current-system)))
|
||||||
|
'(#:tests? #f)
|
||||||
|
'())
|
||||||
|
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
;; No reason has been found for this test to reliably fail on aarch64-linux.
|
;; No reason has been found for this test to reliably fail on aarch64-linux.
|
||||||
|
@ -98,13 +106,12 @@ Executable and Linkable Format (@dfn{ELF}). This includes @command{ld},
|
||||||
;; variables passed as arguments.
|
;; variables passed as arguments.
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(setenv "CONFIG_SHELL" (which "bash"))
|
(setenv "CONFIG_SHELL" (which "bash"))
|
||||||
(zero?
|
(invoke "./configure"
|
||||||
(system* "./configure"
|
(string-append "--prefix=" out)
|
||||||
(string-append "--prefix=" out)
|
|
||||||
,@(if (string=? "aarch64-linux"
|
,@(if (string=? "aarch64-linux"
|
||||||
(%current-system))
|
(%current-system))
|
||||||
'("--host=aarch64-unknown-linux-gnu")
|
'("--host=aarch64-unknown-linux-gnu")
|
||||||
'())))))))))
|
'()))))))))
|
||||||
(home-page "http://www.mr511.de/software/english.html")
|
(home-page "http://www.mr511.de/software/english.html")
|
||||||
(synopsis "ELF object file access library")
|
(synopsis "ELF object file access library")
|
||||||
(description "Libelf is a C library to access ELF object files.")
|
(description "Libelf is a C library to access ELF object files.")
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -251,7 +251,8 @@ library variant NEWLIB."
|
||||||
(match %build-inputs
|
(match %build-inputs
|
||||||
(((names . directories) ...)
|
(((names . directories) ...)
|
||||||
(union-build (assoc-ref %outputs "out")
|
(union-build (assoc-ref %outputs "out")
|
||||||
directories))))))
|
directories)
|
||||||
|
#t)))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("binutils" ,(cross-binutils "arm-none-eabi"))
|
`(("binutils" ,(cross-binutils "arm-none-eabi"))
|
||||||
("libstdc++" ,(make-libstdc++-arm-none-eabi xgcc newlib-with-xgcc))
|
("libstdc++" ,(make-libstdc++-arm-none-eabi xgcc newlib-with-xgcc))
|
||||||
|
@ -610,7 +611,7 @@ micro-controller.")
|
||||||
(version (package-version propeller-gcc))
|
(version (package-version propeller-gcc))
|
||||||
(source #f)
|
(source #f)
|
||||||
(build-system trivial-build-system)
|
(build-system trivial-build-system)
|
||||||
(arguments '(#:builder (mkdir %output)))
|
(arguments '(#:builder (begin (mkdir %output) #t)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("binutils" ,propeller-binutils)
|
`(("binutils" ,propeller-binutils)
|
||||||
("libc" ,proplib)
|
("libc" ,proplib)
|
||||||
|
@ -785,7 +786,7 @@ two-thirds of the opcodes in the P2 instruction set.")
|
||||||
(version (package-version propeller-gcc))
|
(version (package-version propeller-gcc))
|
||||||
(source #f)
|
(source #f)
|
||||||
(build-system trivial-build-system)
|
(build-system trivial-build-system)
|
||||||
(arguments '(#:builder (mkdir %output)))
|
(arguments '(#:builder (begin (mkdir %output) #t)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("toolchain" ,propeller-toolchain)
|
`(("toolchain" ,propeller-toolchain)
|
||||||
("openspin" ,openspin)
|
("openspin" ,openspin)
|
||||||
|
@ -830,7 +831,7 @@ simulator.")
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "opcodes/Makefile.in"
|
(substitute* "opcodes/Makefile.in"
|
||||||
(("guile\\{,-\\}1.8") "guile"))
|
(("guile\\{,-\\}1.8") "guile"))
|
||||||
(zero? (system* "which" "guile")))))))
|
(invoke "which" "guile"))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("cgen"
|
`(("cgen"
|
||||||
,(origin
|
,(origin
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
;;; Copyright © 2015, 2018 David Thompson <dthompson2@worcester.edu>
|
;;; Copyright © 2015, 2018 David Thompson <dthompson2@worcester.edu>
|
||||||
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||||
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
|
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
|
||||||
;;;
|
;;;
|
||||||
|
@ -33,6 +33,7 @@
|
||||||
#:use-module (guix svn-download)
|
#:use-module (guix svn-download)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages algebra)
|
#:use-module (gnu packages algebra)
|
||||||
|
#:use-module (gnu packages assembly)
|
||||||
#:use-module (gnu packages audio)
|
#:use-module (gnu packages audio)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
|
@ -45,6 +46,7 @@
|
||||||
#:use-module (gnu packages fontutils)
|
#:use-module (gnu packages fontutils)
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
#:use-module (gnu packages game-development)
|
#:use-module (gnu packages game-development)
|
||||||
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
#:use-module (gnu packages gl)
|
#:use-module (gnu packages gl)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
|
@ -54,12 +56,19 @@
|
||||||
#:use-module (gnu packages libedit)
|
#:use-module (gnu packages libedit)
|
||||||
#:use-module (gnu packages libusb)
|
#:use-module (gnu packages libusb)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
|
#:use-module (gnu packages lua)
|
||||||
|
#:use-module (gnu packages maths)
|
||||||
|
#:use-module (gnu packages mp3)
|
||||||
|
#:use-module (gnu packages music)
|
||||||
#:use-module (gnu packages ncurses)
|
#:use-module (gnu packages ncurses)
|
||||||
|
#:use-module (gnu packages networking)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages pulseaudio)
|
#:use-module (gnu packages pulseaudio)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages qt)
|
#:use-module (gnu packages qt)
|
||||||
#:use-module (gnu packages sdl)
|
#:use-module (gnu packages sdl)
|
||||||
|
#:use-module (gnu packages texinfo)
|
||||||
|
#:use-module (gnu packages textutils)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages upnp)
|
#:use-module (gnu packages upnp)
|
||||||
#:use-module (gnu packages video)
|
#:use-module (gnu packages video)
|
||||||
|
@ -69,6 +78,7 @@
|
||||||
#:use-module (gnu packages xiph)
|
#:use-module (gnu packages xiph)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module (gnu packages xorg)
|
#:use-module (gnu packages xorg)
|
||||||
|
#:use-module (gnu packages web)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu))
|
#:use-module (guix build-system gnu))
|
||||||
|
|
||||||
|
@ -107,8 +117,8 @@
|
||||||
|
|
||||||
;; Building from recent Git because the official 5.0 release no longer builds.
|
;; Building from recent Git because the official 5.0 release no longer builds.
|
||||||
(define-public dolphin-emu
|
(define-public dolphin-emu
|
||||||
(let ((commit "d04b179111f8d863f360839474cb82c766f762b8")
|
(let ((commit "47fd8c6eff4cdea7660d0fa78040f98d1d4fa136")
|
||||||
(revision "0"))
|
(revision "1"))
|
||||||
(package
|
(package
|
||||||
(name "dolphin-emu")
|
(name "dolphin-emu")
|
||||||
(version (git-version "5.0" revision commit))
|
(version (git-version "5.0" revision commit))
|
||||||
|
@ -134,7 +144,7 @@
|
||||||
#t))
|
#t))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0g725wmhlim73zrhi47wmr1bmplpy4b7sbimd5pm8xpfhj5nm10l"))))
|
"1gp2sshnr0dswdawxd5ix96nksp435b52bqvpjx8pmn523k29zsw"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f
|
'(#:tests? #f
|
||||||
|
@ -143,13 +153,17 @@
|
||||||
|
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
(add-before 'configure 'fixgcc7
|
||||||
|
(lambda _
|
||||||
|
(unsetenv "C_INCLUDE_PATH")
|
||||||
|
(unsetenv "CPLUS_INCLUDE_PATH")))
|
||||||
(add-before 'configure 'generate-fonts&hardcore-libvulkan-path
|
(add-before 'configure 'generate-fonts&hardcore-libvulkan-path
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((fontfile
|
(let ((fontfile
|
||||||
(string-append (assoc-ref inputs "font-wqy-microhei")
|
(string-append (assoc-ref inputs "font-wqy-microhei")
|
||||||
"/share/fonts/truetype/wqy-microhei.ttc"))
|
"/share/fonts/truetype/wqy-microhei.ttc"))
|
||||||
(libvulkan
|
(libvulkan
|
||||||
(string-append (assoc-ref inputs "vulkan-icd-loader")
|
(string-append (assoc-ref inputs "vulkan-loader")
|
||||||
"/lib/libvulkan.so")))
|
"/lib/libvulkan.so")))
|
||||||
(chdir "docs")
|
(chdir "docs")
|
||||||
(invoke "bash" "-c" "g++ -O2 -std=c++11 $(freetype-config \
|
(invoke "bash" "-c" "g++ -O2 -std=c++11 $(freetype-config \
|
||||||
|
@ -179,6 +193,7 @@
|
||||||
"-DX11_FOUND=1")))
|
"-DX11_FOUND=1")))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("pkg-config" ,pkg-config)
|
||||||
|
("gcc" ,gcc-7) ; Building with gcc@5 doesn't work anymore.
|
||||||
("gettext" ,gnu-gettext)))
|
("gettext" ,gnu-gettext)))
|
||||||
(inputs
|
(inputs
|
||||||
`(("alsa-lib" ,alsa-lib)
|
`(("alsa-lib" ,alsa-lib)
|
||||||
|
@ -211,7 +226,7 @@
|
||||||
("sfml" ,sfml)
|
("sfml" ,sfml)
|
||||||
("soil" ,soil)
|
("soil" ,soil)
|
||||||
("soundtouch" ,soundtouch)
|
("soundtouch" ,soundtouch)
|
||||||
("vulkan-icd-loader" ,vulkan-icd-loader)
|
("vulkan-loader" ,vulkan-loader)
|
||||||
("wxwidgets" ,wxwidgets-gtk2-3.1)
|
("wxwidgets" ,wxwidgets-gtk2-3.1)
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
(home-page "https://dolphin-emu.org/")
|
(home-page "https://dolphin-emu.org/")
|
||||||
|
@ -410,11 +425,13 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.")
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
;; Make sure we don't use the bundled software.
|
;; Make sure we don't use the bundled software.
|
||||||
'(for-each
|
'(begin
|
||||||
(lambda (subdir)
|
(for-each
|
||||||
(let ((lib-subdir (string-append "src/third-party/" subdir)))
|
(lambda (subdir)
|
||||||
(delete-file-recursively lib-subdir)))
|
(let ((lib-subdir (string-append "src/third-party/" subdir)))
|
||||||
'("libpng" "lzma" "sqlite3" "zlib")))))
|
(delete-file-recursively lib-subdir)))
|
||||||
|
'("libpng" "lzma" "sqlite3" "zlib"))
|
||||||
|
#t))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ;no "test" target
|
`(#:tests? #f ;no "test" target
|
||||||
|
@ -1007,7 +1024,8 @@ towards a working Mupen64Plus for casual users.")
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
;; We don't need libretro for the GNU/Linux build.
|
;; We don't need libretro for the GNU/Linux build.
|
||||||
(delete-file-recursively "libretro")))))
|
(delete-file-recursively "libretro")
|
||||||
|
#t))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
@ -1043,7 +1061,7 @@ emulation community. It provides highly accurate emulation.")
|
||||||
(define-public retroarch
|
(define-public retroarch
|
||||||
(package
|
(package
|
||||||
(name "retroarch")
|
(name "retroarch")
|
||||||
(version "1.7.2")
|
(version "1.7.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -1051,7 +1069,7 @@ emulation community. It provides highly accurate emulation.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1y9fakr41h6xpddpkj12mcw1kgldvy76nzvxm5jk5v7iyiks4c6k"))))
|
(base32 "1si78dbwbsq4i0r42q94nmlpaxdyqch113nxavdprf4vc1224356"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; no tests
|
'(#:tests? #f ; no tests
|
||||||
|
@ -1061,7 +1079,7 @@ emulation community. It provides highly accurate emulation.")
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(etc (string-append out "/etc"))
|
(etc (string-append out "/etc"))
|
||||||
(vulkan (assoc-ref inputs "vulkan-icd-loader")))
|
(vulkan (assoc-ref inputs "vulkan-loader")))
|
||||||
;; Hard-code the path to libvulkan.so.
|
;; Hard-code the path to libvulkan.so.
|
||||||
(substitute* "gfx/common/vulkan_common.c"
|
(substitute* "gfx/common/vulkan_common.c"
|
||||||
(("libvulkan.so") (string-append vulkan "/lib/libvulkan.so")))
|
(("libvulkan.so") (string-append vulkan "/lib/libvulkan.so")))
|
||||||
|
@ -1085,9 +1103,10 @@ emulation community. It provides highly accurate emulation.")
|
||||||
("openal" ,openal)
|
("openal" ,openal)
|
||||||
("pulseaudio" ,pulseaudio)
|
("pulseaudio" ,pulseaudio)
|
||||||
("python" ,python)
|
("python" ,python)
|
||||||
|
("qtbase" ,qtbase)
|
||||||
("sdl" ,sdl2)
|
("sdl" ,sdl2)
|
||||||
("udev" ,eudev)
|
("udev" ,eudev)
|
||||||
("vulkan-icd-loader" ,vulkan-icd-loader)
|
("vulkan-loader" ,vulkan-loader)
|
||||||
("wayland" ,wayland)
|
("wayland" ,wayland)
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
|
@ -1102,3 +1121,243 @@ straight into any libretro-compatible frontend. RetroArch is the official
|
||||||
reference frontend for the libretro API, currently used by most as a modular
|
reference frontend for the libretro API, currently used by most as a modular
|
||||||
multi-system game/emulator system.")
|
multi-system game/emulator system.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public scummvm
|
||||||
|
(package
|
||||||
|
(name "scummvm")
|
||||||
|
(version "2.0.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "http://www.scummvm.org/frs/scummvm/" version
|
||||||
|
"/scummvm-" version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0q6aiw97wsrf8cjw9vjilzhqqsr2rw2lll99s8i5i9svan6l314p"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:tests? #f ;require "git"
|
||||||
|
#:configure-flags (list "--enable-release") ;for optimizations
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(replace 'configure
|
||||||
|
;; configure does not work followed by both "SHELL=..." and
|
||||||
|
;; "CONFIG_SHELL=..."; set environment variables instead
|
||||||
|
(lambda* (#:key outputs configure-flags #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bash (which "bash"))
|
||||||
|
(flags `(,(string-append "--prefix=" out)
|
||||||
|
,@configure-flags)))
|
||||||
|
(setenv "SHELL" bash)
|
||||||
|
(setenv "CONFIG_SHELL" bash)
|
||||||
|
(apply invoke "./configure" flags)))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
(inputs
|
||||||
|
`(("alsa-lib" ,alsa-lib)
|
||||||
|
("faad2" ,faad2)
|
||||||
|
("fluidsynth" ,fluidsynth)
|
||||||
|
("freetype" ,freetype)
|
||||||
|
("libflac" ,flac)
|
||||||
|
("libjpeg-turbo" ,libjpeg-turbo)
|
||||||
|
("libmad" ,libmad)
|
||||||
|
("libmpeg2" ,libmpeg2)
|
||||||
|
("libogg" ,libogg)
|
||||||
|
("libpng" ,libpng)
|
||||||
|
("libtheora" ,libtheora)
|
||||||
|
("libvorbis" ,libvorbis)
|
||||||
|
("nasm" ,nasm)
|
||||||
|
("sdl2" ,sdl2)
|
||||||
|
("zlib" ,zlib)))
|
||||||
|
(home-page "https://www.scummvm.org/")
|
||||||
|
(synopsis "Engine for several graphical adventure games")
|
||||||
|
(description "ScummVM is a program which allows you to run certain
|
||||||
|
classic graphical point-and-click adventure games, provided you
|
||||||
|
already have their data files. The clever part about this: ScummVM
|
||||||
|
just replaces the executables shipped with the games, allowing you to
|
||||||
|
play them on systems for which they were never designed!")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public mame
|
||||||
|
(package
|
||||||
|
(name "mame")
|
||||||
|
(version "0.198")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/mamedev/mame.git")
|
||||||
|
(commit (apply string-append "mame" (string-split version #\.)))))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0kl7qll8d6xlx7bj5920ljs888a6nc1fj2kfw1fz0r8za3m7wiq9"))
|
||||||
|
(modules '((guix build utils)))
|
||||||
|
(snippet
|
||||||
|
;; Remove bundled libraries.
|
||||||
|
'(begin
|
||||||
|
(with-directory-excursion "3rdparty"
|
||||||
|
(for-each delete-file-recursively
|
||||||
|
'("asio" "expat" "glm" "libflac" "libjpeg" "lua"
|
||||||
|
"portaudio" "portmidi" "pugixml" "rapidjson" "SDL2"
|
||||||
|
"SDL2-override" "sqlite3" "utf8proc" "zlib")))
|
||||||
|
#t))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:make-flags
|
||||||
|
(cons*
|
||||||
|
(string-append "QT_HOME=" (assoc-ref %build-inputs "qtbase"))
|
||||||
|
(string-append "SDL_INI_PATH="
|
||||||
|
(assoc-ref %outputs "out")
|
||||||
|
"/share/mame/ini")
|
||||||
|
(map (lambda (lib)
|
||||||
|
(string-append "USE_SYSTEM_LIB_" (string-upcase lib) "=1"))
|
||||||
|
'("asio" "expat" "flac" "glm" "jpeg" "lua" "portaudio" "portmidi"
|
||||||
|
"pugixml" "rapidjson" "sqlite3" "utf8proc" "zlib")))
|
||||||
|
#:tests? #f ;no test in regular release
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(delete 'configure)
|
||||||
|
(add-after 'build 'build-documentation
|
||||||
|
(lambda _ (invoke "make" "-C" "docs" "man" "info")))
|
||||||
|
(replace 'install
|
||||||
|
;; Upstream does not provide an installation phase.
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(share (string-append out "/share/mame")))
|
||||||
|
;; Install data.
|
||||||
|
(for-each (lambda (dir)
|
||||||
|
(copy-recursively dir (string-append share "/" dir)))
|
||||||
|
'("artwork" "bgfx" "ctrlr" "hash" "ini" "language"
|
||||||
|
"plugins" "samples"))
|
||||||
|
(let ((keymaps (string-append share "/keymaps")))
|
||||||
|
(for-each (lambda (file) (install-file file keymaps))
|
||||||
|
(find-files "keymaps" ".*LINUX\\.map")))
|
||||||
|
(let ((fonts (string-append share "/fonts")))
|
||||||
|
(install-file "uismall.bdf" fonts))
|
||||||
|
(rename-file "mame64" "mame")
|
||||||
|
(install-file "mame" (string-append out "/bin")))
|
||||||
|
#t))
|
||||||
|
(add-after 'install 'install-documentation
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(man (string-append out "/share/man/man1"))
|
||||||
|
(info (string-append out "/share/info")))
|
||||||
|
(install-file "docs/build/man/MAME.1" man)
|
||||||
|
(install-file "docs/build/texinfo/MAME.info" info))
|
||||||
|
#t))
|
||||||
|
(add-after 'install 'install-ini-file
|
||||||
|
;; Generate an ini file so as to set some directories (e.g., roms)
|
||||||
|
;; to a writable location, i.e., "$HOME/.mame/" and "$HOME/mame/".
|
||||||
|
;;
|
||||||
|
;; XXX: We need to insert absolute references to the store. It can
|
||||||
|
;; be an issue if they leak into user's home directory, e.g., with
|
||||||
|
;; "mame -createconfig" and the package is later GC'ed.
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(share (string-append out "/share/mame"))
|
||||||
|
(ini (string-append share "/ini")))
|
||||||
|
(with-output-to-file (string-append ini "/mame.ini")
|
||||||
|
(lambda _
|
||||||
|
(format #t
|
||||||
|
"inipath $HOME/.mame;~a/ini~@
|
||||||
|
homepath $HOME/mame~@
|
||||||
|
rompath $HOME/mame/roms~@
|
||||||
|
samplepath $HOME/mame/samples;~a/samples~@
|
||||||
|
cheatpath $HOME/mame/cheat~@
|
||||||
|
artpath $HOME/mame/artwork;~a/artwork~@
|
||||||
|
crosshairpath $HOME/mame/crosshair~@
|
||||||
|
snapshot_directory $HOME/mame/snapshots~@
|
||||||
|
hashpath ~a/hash~@
|
||||||
|
fontpath $HOME/mame/fonts;~a/fonts~@
|
||||||
|
ctrlrpath $HOME/mame/ctrlr;~a/ctrlr~@
|
||||||
|
bgfx_path ~a/bgfx~@
|
||||||
|
pluginspath $HOME/mame/plugins;~a/plugins~@
|
||||||
|
languagepath ~a/language~@
|
||||||
|
cfg_directory $HOME/.mame/cfg~@
|
||||||
|
nvram_directory $HOME/.mame/nvram~@
|
||||||
|
input_directory $HOME/.mame/inp~@
|
||||||
|
state_directory $HOME/.mame/sta~@
|
||||||
|
diff_directory $HOME/.mame/diff~@
|
||||||
|
comment_directory $HOME/.mame/comments~%"
|
||||||
|
share share share share share share share share
|
||||||
|
share)))
|
||||||
|
(with-output-to-file (string-append ini "/ui.ini")
|
||||||
|
(lambda _
|
||||||
|
(format #t
|
||||||
|
"historypath $HOME/mame/history~@
|
||||||
|
categorypath $HOME/mame/folders~@
|
||||||
|
cabinets_directory $HOME/mame/cabinets~@
|
||||||
|
cpanels_directory $HOME/mame/cpanel~@
|
||||||
|
pcbs_directory $HOME/mame/pcb~@
|
||||||
|
flyers_directory $HOME/mame/flyers~@
|
||||||
|
titles_directory $HOME/mame/titles~@
|
||||||
|
ends_directory $HOME/mame/ends~@
|
||||||
|
marquees_directory $HOME/mame/marquees~@
|
||||||
|
artwork_preview_directory $HOME/mame/artpreview~@
|
||||||
|
bosses_directory $HOME/mame/bosses~@
|
||||||
|
logos_directory $HOME/mame/logo~@
|
||||||
|
scores_directory $HOME/mame/scores~@
|
||||||
|
versus_directory $HOME/mame/versus~@
|
||||||
|
gameover_directory $HOME/mame/gameover~@
|
||||||
|
howto_directory $HOME/mame/howto~@
|
||||||
|
select_directory $HOME/mame/select~@
|
||||||
|
icons_directory $HOME/mame/icons~@
|
||||||
|
covers_directory $HOME/mame/covers~@
|
||||||
|
ui_path $HOME/.mame/ui~%")))
|
||||||
|
#t)))
|
||||||
|
(add-after 'install 'install-desktop-file
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(desktop (string-append out "/share/applications"))
|
||||||
|
(executable (string-append out "/bin/mame")))
|
||||||
|
(mkdir-p desktop)
|
||||||
|
(with-output-to-file (string-append desktop "/mame.desktop")
|
||||||
|
(lambda _
|
||||||
|
(format #t
|
||||||
|
"[Desktop Entry]~@
|
||||||
|
Name=mame~@
|
||||||
|
Comment=Multi-purpose emulation framework~@
|
||||||
|
Exec=~a~@
|
||||||
|
TryExec=~@*~a~@
|
||||||
|
Terminal=false~@
|
||||||
|
Type=Application~@
|
||||||
|
Categories=Game;Emulator;~@
|
||||||
|
Keywords=Game;Emulator;Arcade;~%"
|
||||||
|
executable)))
|
||||||
|
#t))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)
|
||||||
|
("pugixml" ,pugixml)
|
||||||
|
("python-sphinx" ,python-sphinx)
|
||||||
|
("texinfo" ,texinfo)))
|
||||||
|
(inputs
|
||||||
|
`(("alsa-lib" ,alsa-lib)
|
||||||
|
("asio" ,asio)
|
||||||
|
("expat" ,expat)
|
||||||
|
("flac" ,flac)
|
||||||
|
("fontconfig" ,fontconfig)
|
||||||
|
("glm" ,glm)
|
||||||
|
("libjpeg" ,libjpeg-8) ;jpeg_read_header argument error in libjpeg-9
|
||||||
|
("libxinerama" ,libxinerama)
|
||||||
|
("lua" ,lua)
|
||||||
|
("portaudio" ,portaudio)
|
||||||
|
("portmidi" ,portmidi)
|
||||||
|
("python-wrapper" ,python-wrapper)
|
||||||
|
("qtbase" ,qtbase)
|
||||||
|
("rapidjson" ,rapidjson)
|
||||||
|
("sdl" ,(sdl-union (list sdl2 sdl2-ttf)))
|
||||||
|
("sqlite" ,sqlite)
|
||||||
|
("utf8proc" ,utf8proc)
|
||||||
|
("zlib" ,zlib)))
|
||||||
|
(home-page "http://mamedev.org/")
|
||||||
|
(synopsis "Multi-purpose emulation framework")
|
||||||
|
(description "MAME's purpose is to preserve decades of software
|
||||||
|
history. As electronic technology continues to rush forward, MAME
|
||||||
|
prevents this important @emph{vintage} software from being lost and
|
||||||
|
forgotten. This is achieved by documenting the hardware and how it
|
||||||
|
functions. The source code to MAME serves as this documentation.")
|
||||||
|
;; The MAME project as a whole is distributed under the terms of GPL2+.
|
||||||
|
;; However, over 90% of the files are under Expat license. Also, artwork,
|
||||||
|
;; keymaps, languages and samples are under CC0.
|
||||||
|
(license (list license:gpl2+ license:expat license:cc0))))
|
||||||
|
|
|
@ -4,9 +4,10 @@
|
||||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2016 David Thompson <davet@gnu.org>
|
;;; Copyright © 2016 David Thompson <davet@gnu.org>
|
||||||
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016, 2017 Theodoros Foradis <theodoros@foradis.org>
|
;;; Copyright © 2016, 2017, 2018 Theodoros Foradis <theodoros@foradis.org>
|
||||||
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -110,6 +111,13 @@
|
||||||
(string-append "#include <boost/serialization/array_wrapper.hpp>\n"
|
(string-append "#include <boost/serialization/array_wrapper.hpp>\n"
|
||||||
line)))
|
line)))
|
||||||
#t))
|
#t))
|
||||||
|
;; Fix build against Qt 5.11.
|
||||||
|
(add-after 'unpack 'add-missing-headers
|
||||||
|
(lambda _
|
||||||
|
(substitute* "librecad/src/ui/generic/widgetcreator.cpp"
|
||||||
|
(("#include <QPushButton>") "#include <QPushButton>
|
||||||
|
#include <QActionGroup>"))
|
||||||
|
#t))
|
||||||
(add-after 'unpack 'patch-paths
|
(add-after 'unpack 'patch-paths
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(let ((out (assoc-ref outputs "out")))
|
||||||
|
@ -329,7 +337,9 @@ featuring various improvements and bug fixes.")))
|
||||||
"0x37vfp6k0d2z3gnig0hbicvi0jp8v267xjnn3z8jdllpiaa6p3k"))
|
"0x37vfp6k0d2z3gnig0hbicvi0jp8v267xjnn3z8jdllpiaa6p3k"))
|
||||||
(snippet
|
(snippet
|
||||||
;; Remove a non-free file.
|
;; Remove a non-free file.
|
||||||
'(delete-file "doc/psfig.sty"))
|
'(begin
|
||||||
|
(delete-file "doc/psfig.sty")
|
||||||
|
#t))
|
||||||
(patches (search-patches "fastcap-mulSetup.patch"
|
(patches (search-patches "fastcap-mulSetup.patch"
|
||||||
"fastcap-mulGlobal.patch"))))
|
"fastcap-mulGlobal.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
@ -523,35 +533,17 @@ ready for production.")
|
||||||
(define-public gerbv
|
(define-public gerbv
|
||||||
(package
|
(package
|
||||||
(name "gerbv")
|
(name "gerbv")
|
||||||
(version "2.6.1")
|
(version "2.6.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/gerbv/gerbv/gerbv-"
|
(uri (string-append "mirror://sourceforge/gerbv/gerbv/gerbv-"
|
||||||
version "/gerbv-" version ".tar.gz"))
|
version "/gerbv-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0v6ry0mxi5qym4z0y0lpblxsw9dfjpgxs4c4v2ngg7yw4b3a59ks"))))
|
"1cw8k6ni0q8kswad03kha86fk7n06vq8p0wzsfhcnalsdshrn17i"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
|
||||||
`(#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'unpack 'autoconf
|
|
||||||
(lambda _
|
|
||||||
;; Build rules contain references to Russian translation, but the
|
|
||||||
;; needed files are missing; see
|
|
||||||
;; http://sourceforge.net/p/gerbv/bugs/174/
|
|
||||||
(delete-file "po/LINGUAS")
|
|
||||||
(substitute* "man/Makefile.am"
|
|
||||||
(("PO_FILES= gerbv.ru.1.in.po") "")
|
|
||||||
(("man_MANS = gerbv.1 gerbv.ru.1") "man_MANS = gerbv.1"))
|
|
||||||
(zero? (system* "autoreconf" "-vfi")))))))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("autoconf" ,autoconf)
|
`(("pkg-config" ,pkg-config)))
|
||||||
("automake" ,automake)
|
|
||||||
("libtool" ,libtool)
|
|
||||||
("gettext" ,gettext-minimal)
|
|
||||||
("po4a" ,po4a)
|
|
||||||
("pkg-config" ,pkg-config)))
|
|
||||||
(inputs
|
(inputs
|
||||||
`(("cairo" ,cairo)
|
`(("cairo" ,cairo)
|
||||||
("gtk" ,gtk+-2)
|
("gtk" ,gtk+-2)
|
||||||
|
@ -769,7 +761,7 @@ render model libraries.")
|
||||||
(define-public linsmith
|
(define-public linsmith
|
||||||
(package
|
(package
|
||||||
(name "linsmith")
|
(name "linsmith")
|
||||||
(version "0.99.30")
|
(version "0.99.31")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -777,13 +769,13 @@ render model libraries.")
|
||||||
version "/linsmith-" version ".tar.gz"))
|
version "/linsmith-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"18qslhr2r45rhpj4v6bjcqx189vs0bflvsj271wr7w8kvh69qwvn"))))
|
"13qj7n9826qc9shkkgd1p6vcpj78v4h9d67wbg45prg7rbnzkzds"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("pkg-config" ,pkg-config)
|
||||||
("gtk" ,gtk+-2)
|
("gtk" ,gtk+-2)
|
||||||
("libgnome" ,libgnomeui)))
|
("libgnome" ,libgnomeui)))
|
||||||
(home-page "http://jcoppens.com/soft/linsmith/index.en.php")
|
(home-page "https://jcoppens.com/soft/linsmith/index.en.php")
|
||||||
(synopsis "Smith Charting program")
|
(synopsis "Smith Charting program")
|
||||||
(description "LinSmith is a Smith Charting program, mainly designed for
|
(description "LinSmith is a Smith Charting program, mainly designed for
|
||||||
educational use. As such, there is an emphasis on capabilities that improve
|
educational use. As such, there is an emphasis on capabilities that improve
|
||||||
|
@ -1080,14 +1072,14 @@ bindings for Python, Java, OCaml and more.")
|
||||||
(define-public radare2
|
(define-public radare2
|
||||||
(package
|
(package
|
||||||
(name "radare2")
|
(name "radare2")
|
||||||
(version "1.6.0")
|
(version "2.5.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://radare.mikelloc.com/get/" version "/"
|
(uri (string-append "http://radare.mikelloc.com/get/" version "/"
|
||||||
name "-" version ".tar.gz"))
|
name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"16ggsk40zz6hyvclvqj1r4bh4hb78jf0d6ppry1jk4r0j30wm7cm"))
|
"17h4ba5qqahfi8mi4x2dcvq87cqpir5v2dlaqbvmay6vby4zh4v7"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
|
@ -1096,7 +1088,8 @@ bindings for Python, Java, OCaml and more.")
|
||||||
(substitute* "libr/parse/p/Makefile"
|
(substitute* "libr/parse/p/Makefile"
|
||||||
(("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))
|
(("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))
|
||||||
(substitute* "libr/bin/p/Makefile"
|
(substitute* "libr/bin/p/Makefile"
|
||||||
(("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))))))
|
(("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f; tests require git and network access
|
'(#:tests? #f; tests require git and network access
|
||||||
|
@ -1182,14 +1175,14 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
|
||||||
;; See <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27344#236>.
|
;; See <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27344#236>.
|
||||||
(package
|
(package
|
||||||
(name "libngspice")
|
(name "libngspice")
|
||||||
(version "26")
|
(version "28")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/ngspice/ng-spice-rework/"
|
(uri (string-append "mirror://sourceforge/ngspice/ng-spice-rework/"
|
||||||
version "/ngspice-" version ".tar.gz"))
|
version "/ngspice-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"02019ndcl057nq9z41nxycqba7wxlb081ibvfj9jv010nz431qji"))
|
"0rnz2rdgyav16w7wfn3sfrk2lwvvgz1fh0l9107zkcldijklz04l"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
;; We remove the non-free cider and build without it.
|
;; We remove the non-free cider and build without it.
|
||||||
(snippet
|
(snippet
|
||||||
|
@ -1201,7 +1194,8 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
|
||||||
(("src/ciderlib/input/Makefile") "")
|
(("src/ciderlib/input/Makefile") "")
|
||||||
(("src/ciderlib/support/Makefile") "")
|
(("src/ciderlib/support/Makefile") "")
|
||||||
(("src/ciderlib/oned/Makefile") "")
|
(("src/ciderlib/oned/Makefile") "")
|
||||||
(("src/ciderlib/twod/Makefile") ""))))))
|
(("src/ciderlib/twod/Makefile") ""))
|
||||||
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(;; No tests for libngspice exist.
|
`(;; No tests for libngspice exist.
|
||||||
|
@ -1212,7 +1206,7 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
|
||||||
(add-after 'unpack 'patch-timestamps
|
(add-after 'unpack 'patch-timestamps
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "configure"
|
(substitute* "configure"
|
||||||
(("`date`") "Do 1. Jan 00:00:00 UTC 1970"))
|
(("`date`") "Thu Jan 1 00:00:01 UTC 1970"))
|
||||||
#t))
|
#t))
|
||||||
(add-after 'unpack 'delete-program-manuals
|
(add-after 'unpack 'delete-program-manuals
|
||||||
(lambda _
|
(lambda _
|
||||||
|
@ -1285,17 +1279,27 @@ an embedded event driven algorithm.")
|
||||||
;; TODO: Remove when we have modular Trilinos packages?
|
;; TODO: Remove when we have modular Trilinos packages?
|
||||||
(package
|
(package
|
||||||
(name "trilinos-serial-xyce")
|
(name "trilinos-serial-xyce")
|
||||||
(version "12.6.3")
|
(version "12.12.1")
|
||||||
(source
|
(source
|
||||||
(origin (method url-fetch)
|
(origin (method url-fetch)
|
||||||
(uri (string-append "https://trilinos.org/oldsite/download/files/trilinos-"
|
(uri (string-append "https://trilinos.org/oldsite/download/files/trilinos-"
|
||||||
version "-Source.tar.gz"))
|
version "-Source.tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"07jd1qpsbf31cmbyyngr4l67xzwyan24dyx5wlcahgbw7x6my3wn"))))
|
"1zgrcksrcbmyy79mbdv0j4j4sh0chpigxk8vcrrwgaxyxwxxhrvw"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:out-of-source? #t
|
`(#:out-of-source? #t
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; Delete unneeded tribits(build system) directory which makes validate-runpath
|
||||||
|
;; phase to fail.
|
||||||
|
(add-before 'validate-runpath 'delete-tribits
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(delete-file-recursively
|
||||||
|
(string-append (assoc-ref outputs "out")
|
||||||
|
"/lib/cmake/tribits"))
|
||||||
|
#t)))
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(list "-DCMAKE_CXX_FLAGS=-O3 -fPIC"
|
(list "-DCMAKE_CXX_FLAGS=-O3 -fPIC"
|
||||||
"-DCMAKE_C_FLAGS=-O3 -fPIC"
|
"-DCMAKE_C_FLAGS=-O3 -fPIC"
|
||||||
|
@ -1328,7 +1332,7 @@ an embedded event driven algorithm.")
|
||||||
("swig" ,swig)))
|
("swig" ,swig)))
|
||||||
(inputs
|
(inputs
|
||||||
`(("boost" ,boost)
|
`(("boost" ,boost)
|
||||||
("lapack" ,lapack-3.5)
|
("lapack" ,lapack)
|
||||||
("suitesparse" ,suitesparse)))
|
("suitesparse" ,suitesparse)))
|
||||||
(home-page "https://trilinos.org")
|
(home-page "https://trilinos.org")
|
||||||
(synopsis "Engineering and scientific problems algorithms")
|
(synopsis "Engineering and scientific problems algorithms")
|
||||||
|
@ -1343,14 +1347,14 @@ unique design feature of Trilinos is its focus on packages.")
|
||||||
(define-public xyce-serial
|
(define-public xyce-serial
|
||||||
(package
|
(package
|
||||||
(name "xyce-serial")
|
(name "xyce-serial")
|
||||||
(version "6.7")
|
(version "6.8")
|
||||||
(source
|
(source
|
||||||
(origin (method url-fetch)
|
(origin (method url-fetch)
|
||||||
(uri (string-append "https://archive.org/download/Xyce-"
|
(uri (string-append "https://archive.org/download/Xyce-"
|
||||||
version "/Xyce-" version ".tar.gz"))
|
version "/Xyce-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"02k952mnvrnc5kv7r65fdrn7khwq1lbyhwyvd7jznafzdpsvgm4x"))))
|
"09flp1xywbb2laayd9rg8vd0fjsh115y6k1p71jacy0nrbdvvlcg"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f
|
`(#:tests? #f
|
||||||
|
@ -1366,7 +1370,7 @@ unique design feature of Trilinos is its focus on packages.")
|
||||||
(inputs
|
(inputs
|
||||||
`(("fftw" ,fftw)
|
`(("fftw" ,fftw)
|
||||||
("suitesparse" ,suitesparse)
|
("suitesparse" ,suitesparse)
|
||||||
("lapack" ,lapack-3.5)
|
("lapack" ,lapack)
|
||||||
("trilinos" ,trilinos-serial-xyce)))
|
("trilinos" ,trilinos-serial-xyce)))
|
||||||
(home-page "https://xyce.sandia.gov/")
|
(home-page "https://xyce.sandia.gov/")
|
||||||
(synopsis "High-performance analog circuit simulator")
|
(synopsis "High-performance analog circuit simulator")
|
||||||
|
@ -1401,8 +1405,6 @@ parallel computing platforms. It also supports serial execution.")
|
||||||
"CC=mpicc"
|
"CC=mpicc"
|
||||||
"F77=mpif77"
|
"F77=mpif77"
|
||||||
"--enable-mpi"
|
"--enable-mpi"
|
||||||
"--enable-isorropia=no"
|
|
||||||
"--enable-zoltan=no"
|
|
||||||
(string-append
|
(string-append
|
||||||
"ARCHDIR="
|
"ARCHDIR="
|
||||||
(assoc-ref %build-inputs "trilinos")))))))
|
(assoc-ref %build-inputs "trilinos")))))))
|
||||||
|
@ -1509,116 +1511,134 @@ parallel computing platforms. It also supports serial execution.")
|
||||||
license:lgpl2.0+)))) ; freehdl's libraries
|
license:lgpl2.0+)))) ; freehdl's libraries
|
||||||
|
|
||||||
(define-public qucs
|
(define-public qucs
|
||||||
(package
|
;; Qucs 0.0.19 segfaults when using glibc-2.26. Temporarily build from git.
|
||||||
(name "qucs")
|
;; TODO: When qucs-0.0.20 is released, revert the commit that introduced this
|
||||||
(version "0.0.19")
|
;; comment and update the package.
|
||||||
(source (origin
|
(let ((commit "b4f27d9222568066cd59e4c387c51a35056c99d8")
|
||||||
(method url-fetch)
|
(revision "0"))
|
||||||
(uri
|
(package
|
||||||
(string-append
|
(name "qucs")
|
||||||
"https://sourceforge.net/projects/qucs/files/qucs/" version
|
(version (git-version "0.0.19" revision commit))
|
||||||
"/qucs-" version ".tar.gz"))
|
(source (origin
|
||||||
(sha256
|
(method git-fetch)
|
||||||
(base32
|
(uri (git-reference
|
||||||
"0giv9gfyfdizvjhq56x2pdncrlyv3k15lrsh6pk37i94vr7l7ij5"))))
|
(url "https://github.com/Qucs/qucs")
|
||||||
(build-system gnu-build-system)
|
(commit commit)))
|
||||||
(arguments
|
(sha256
|
||||||
`(#:phases
|
(base32 "10bclay9xhkffmsh4j4l28kj1qpxx0pnxja5vx6305cllnq4r3gb"))
|
||||||
(modify-phases %standard-phases
|
(file-name (string-append name "-" version "-checkout"))))
|
||||||
(add-before 'configure 'patch-configure
|
(build-system gnu-build-system)
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(arguments
|
||||||
(substitute* "qucs/configure"
|
`(#:phases
|
||||||
(("\\$QTDIR") (assoc-ref inputs "qt4")))
|
(modify-phases %standard-phases
|
||||||
#t))
|
(add-before 'bootstrap 'patch-bootstrap
|
||||||
(add-after 'patch-configure 'patch-scripts
|
(lambda _
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(for-each patch-shebang
|
||||||
(substitute* '("qucs/qucs/qucsdigi"
|
'("bootstrap"
|
||||||
"qucs/qucs/qucsdigilib"
|
"qucs/bootstrap"
|
||||||
"qucs/qucs/qucsveri")
|
"qucs-doc/bootstrap"
|
||||||
(("\\$BINDIR")
|
"qucs-core/bootstrap"))
|
||||||
(string-append (assoc-ref outputs "out") "/bin"))
|
#t))
|
||||||
(("freehdl-config")
|
(add-before 'configure 'patch-configure
|
||||||
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-config"))
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(("freehdl-v2cc")
|
(substitute* "qucs/configure"
|
||||||
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-v2cc"))
|
(("\\$QTDIR") (assoc-ref inputs "qt4")))
|
||||||
(("cp ")
|
#t))
|
||||||
(string-append (assoc-ref inputs "coreutils") "/bin/cp "))
|
(add-after 'patch-configure 'patch-scripts
|
||||||
(("glibtool")
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(string-append (assoc-ref inputs "libtool") "/bin/libtool"))
|
(substitute* '("qucs/qucs/qucsdigi"
|
||||||
(("sed")
|
"qucs/qucs/qucsdigilib"
|
||||||
(string-append (assoc-ref inputs "sed") "/bin/sed"))
|
"qucs/qucs/qucsveri")
|
||||||
(("iverilog")
|
(("\\$BINDIR")
|
||||||
(string-append (assoc-ref inputs "iverilog") "/bin/iverilog"))
|
(string-append (assoc-ref outputs "out") "/bin"))
|
||||||
(("vvp")
|
(("freehdl-config")
|
||||||
(string-append (assoc-ref inputs "iverilog") "/bin/vvp")))
|
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-config"))
|
||||||
#t))
|
(("freehdl-v2cc")
|
||||||
(add-before 'check 'pre-check
|
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-v2cc"))
|
||||||
(lambda _
|
(("cp ")
|
||||||
;; The test suite requires a running X server.
|
(string-append (assoc-ref inputs "coreutils") "/bin/cp "))
|
||||||
(system "Xvfb :1 &")
|
(("glibtool")
|
||||||
(setenv "DISPLAY" ":1")
|
(string-append (assoc-ref inputs "libtool") "/bin/libtool"))
|
||||||
#t))
|
(("sed")
|
||||||
(add-after 'install 'make-wrapper
|
(string-append (assoc-ref inputs "sed") "/bin/sed"))
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(("iverilog")
|
||||||
(let ((out (assoc-ref outputs "out")))
|
(string-append (assoc-ref inputs "iverilog") "/bin/iverilog"))
|
||||||
;; 'qucs' directly invokes gcc, hence this wrapping.
|
(("vvp")
|
||||||
(wrap-program (string-append out "/bin/qucs")
|
(string-append (assoc-ref inputs "iverilog") "/bin/vvp")))
|
||||||
`("CPLUS_INCLUDE_PATH" ":" prefix
|
#t))
|
||||||
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
(add-before 'check 'pre-check
|
||||||
"/include")))
|
(lambda _
|
||||||
`("PATH" ":" prefix
|
;; The test suite requires a running X server.
|
||||||
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
(system "Xvfb :1 &")
|
||||||
"/bin")))
|
(setenv "DISPLAY" ":1")
|
||||||
`("LIBRARY_PATH" ":" prefix
|
#t))
|
||||||
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
(add-after 'install 'make-wrapper
|
||||||
"/lib")))
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
`("ADMSXMLBINDIR" ":" prefix
|
(let ((out (assoc-ref outputs "out")))
|
||||||
(,(string-append (assoc-ref inputs "adms") "/bin")))
|
;; 'qucs' directly invokes gcc, hence this wrapping.
|
||||||
`("ASCOBINDIR" ":" prefix
|
(wrap-program (string-append out "/bin/qucs")
|
||||||
(,(string-append (assoc-ref inputs "asco") "/bin")))
|
`("CPLUS_INCLUDE_PATH" ":" prefix
|
||||||
`("QUCS_OCTAVE" ":" prefix
|
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
||||||
(,(string-append (assoc-ref inputs "octave") "/bin/octave")))))
|
"/include")))
|
||||||
#t)))
|
`("PATH" ":" prefix
|
||||||
#:parallel-build? #f ; race condition
|
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
||||||
#:configure-flags '("--disable-doc"))) ; we need octave-epstk
|
"/bin")))
|
||||||
(native-inputs
|
`("LIBRARY_PATH" ":" prefix
|
||||||
`(("gperf" ,gperf)
|
(,(string-append (assoc-ref inputs "gcc-toolchain")
|
||||||
("libtool-native" ,libtool)
|
"/lib")))
|
||||||
("python" ,python-2) ; for tests
|
`("ADMSXMLBINDIR" ":" prefix
|
||||||
("matplotlib" ,python2-matplotlib) ; for tests
|
(,(string-append (assoc-ref inputs "adms") "/bin")))
|
||||||
("numpy" ,python2-numpy) ; for tests
|
`("ASCOBINDIR" ":" prefix
|
||||||
("xorg-server" ,xorg-server))) ; for tests
|
(,(string-append (assoc-ref inputs "asco") "/bin")))
|
||||||
(inputs
|
`("QUCS_OCTAVE" ":" prefix
|
||||||
`(("adms" ,adms)
|
(,(string-append (assoc-ref inputs "octave") "/bin/octave")))))
|
||||||
("asco" ,asco)
|
#t)))
|
||||||
("coreutils" ,coreutils)
|
#:parallel-build? #f ; race condition
|
||||||
("freehdl" ,freehdl)
|
#:configure-flags '("--disable-doc"))) ; we need octave-epstk
|
||||||
("gcc-toolchain" ,gcc-toolchain)
|
(native-inputs
|
||||||
("iverilog" ,iverilog)
|
`(("autoconf" ,autoconf)
|
||||||
("libtool" ,libtool)
|
("automake" ,automake)
|
||||||
("octave" ,octave)
|
("bison" ,bison)
|
||||||
("qt4" ,qt-4)
|
("flex" ,flex)
|
||||||
("sed" ,sed)))
|
("gperf" ,gperf)
|
||||||
(home-page "http://qucs.sourceforge.net/")
|
("libtool-native" ,libtool)
|
||||||
(synopsis "Circuit simulator with graphical user interface")
|
("pkg-config" ,pkg-config)
|
||||||
(description
|
("python" ,python-2) ; for tests
|
||||||
"Qucs is a circuit simulator with graphical user interface. The software
|
("matplotlib" ,python2-matplotlib) ; for tests
|
||||||
|
("numpy" ,python2-numpy) ; for tests
|
||||||
|
("xorg-server" ,xorg-server))) ; for tests
|
||||||
|
(inputs
|
||||||
|
`(("adms" ,adms)
|
||||||
|
("asco" ,asco)
|
||||||
|
("coreutils" ,coreutils)
|
||||||
|
("freehdl" ,freehdl)
|
||||||
|
("gcc-toolchain" ,gcc-toolchain)
|
||||||
|
("iverilog" ,iverilog)
|
||||||
|
("libtool" ,libtool)
|
||||||
|
("octave" ,octave)
|
||||||
|
("qt4" ,qt-4)
|
||||||
|
("sed" ,sed)))
|
||||||
|
(home-page "http://qucs.sourceforge.net/")
|
||||||
|
(synopsis "Circuit simulator with graphical user interface")
|
||||||
|
(description
|
||||||
|
"Qucs is a circuit simulator with graphical user interface. The software
|
||||||
aims to support all kinds of circuit simulation types---e.g. DC, AC,
|
aims to support all kinds of circuit simulation types---e.g. DC, AC,
|
||||||
S-parameter, transient, noise and harmonic balance analysis. Pure digital
|
S-parameter, transient, noise and harmonic balance analysis. Pure digital
|
||||||
simulations are also supported.")
|
simulations are also supported.")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+))))
|
||||||
|
|
||||||
(define-public qucs-s
|
(define-public qucs-s
|
||||||
(package
|
(package
|
||||||
(name "qucs-s")
|
(name "qucs-s")
|
||||||
(version "0.0.19S")
|
(version "0.0.20")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://github.com/ra3xdh/qucs/releases/download/"
|
(uri (string-append "https://github.com/ra3xdh/qucs_s/archive/"
|
||||||
version "/qucs-" version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1bhahvdqmayaw0306fxz1ghmjhd4fq05yk3rk7zi0z703w5imgjv"))))
|
"01dizf4rjciqc8x7bmv3kbhdlz90bm6n9m9fz7dbzqcwvszcs1hx"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; no tests
|
`(#:tests? #f ; no tests
|
||||||
|
@ -1653,19 +1673,21 @@ simulations are also supported.")
|
||||||
"\\+ \"qucsator\" \\+ executableSuffix"))
|
"\\+ \"qucsator\" \\+ executableSuffix"))
|
||||||
(string-append "}{ QucsSettings.Qucsator = \""
|
(string-append "}{ QucsSettings.Qucsator = \""
|
||||||
(assoc-ref inputs "qucs") "/bin/qucsator\""))
|
(assoc-ref inputs "qucs") "/bin/qucsator\""))
|
||||||
(((string-append "else QucsSettings\\.XyceExecutable = "
|
(((string-append "QucsSettings\\.XyceExecutable = "
|
||||||
"\"/usr/local/Xyce-Release-6.2.0-OPENSOURCE/bin/runxyce"))
|
"\"/usr/local/Xyce-Release-6.8.0-OPENSOURCE/bin/Xyce"))
|
||||||
(string-append "QucsSettings.XyceExecutable = \""
|
(string-append "}{ QucsSettings.XyceExecutable = \""
|
||||||
(assoc-ref inputs "xyce-serial") "/bin/Xyce"))
|
(assoc-ref inputs "xyce-serial") "/bin/Xyce"))
|
||||||
(((string-append "else QucsSettings\\.XyceParExecutable = \"/usr/local"
|
(((string-append "else QucsSettings\\.XyceParExecutable = "
|
||||||
"/Xyce-Release-6.2.0-OPENMPI-OPENSOURCE/bin/xmpirun"))
|
"\"mpirun -np %p /usr/local"
|
||||||
|
"/Xyce-Release-6.8.0-OPENMPI-OPENSOURCE/bin/Xyce"))
|
||||||
(string-append "QucsSettings.XyceParExecutable = \""
|
(string-append "QucsSettings.XyceParExecutable = \""
|
||||||
(assoc-ref inputs "mpi") "/bin/mpirun"))
|
(assoc-ref inputs "mpi") "/bin/mpirun -np %p "
|
||||||
(("%p")
|
(assoc-ref inputs "xyce-parallel") "/bin/Xyce"))
|
||||||
(string-append "%p "(assoc-ref inputs "xyce-parallel") "/bin/Xyce"))
|
|
||||||
(("else QucsSettings\\.NgspiceExecutable = \"ngspice\"")
|
(("else QucsSettings\\.NgspiceExecutable = \"ngspice\"")
|
||||||
(string-append "QucsSettings.NgspiceExecutable = " "\""
|
(string-append "QucsSettings.NgspiceExecutable = " "\""
|
||||||
(assoc-ref inputs "ngspice") "/bin/ngspice\"")))
|
(assoc-ref inputs "ngspice") "/bin/ngspice\"")))
|
||||||
|
(substitute* "qucs/extsimkernels/ngspice.cpp"
|
||||||
|
(("share/qucs/xspice_cmlib") "share/qucs-s/xspice_cmlib"))
|
||||||
(substitute* "qucs/qucs_actions.cpp"
|
(substitute* "qucs/qucs_actions.cpp"
|
||||||
(("qucstrans")
|
(("qucstrans")
|
||||||
(string-append (assoc-ref inputs "qucs") "/bin/qucstrans"))
|
(string-append (assoc-ref inputs "qucs") "/bin/qucstrans"))
|
||||||
|
@ -1678,7 +1700,7 @@ simulations are also supported.")
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(for-each
|
(for-each
|
||||||
(lambda (script)
|
(lambda (script)
|
||||||
(let ((file (string-append "../qucs-" ,version
|
(let ((file (string-append "../qucs_s-" ,version
|
||||||
"/qucs/" script))
|
"/qucs/" script))
|
||||||
(out (assoc-ref outputs "out")))
|
(out (assoc-ref outputs "out")))
|
||||||
(install-file file (string-append out "/bin"))
|
(install-file file (string-append out "/bin"))
|
||||||
|
|
|
@ -78,7 +78,6 @@
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
(inputs
|
(inputs
|
||||||
`(("alsa-lib" ,alsa-lib)
|
`(("alsa-lib" ,alsa-lib)
|
||||||
("compositeproto" ,compositeproto)
|
|
||||||
("curl" ,curl)
|
("curl" ,curl)
|
||||||
("ghostscript" ,ghostscript)
|
("ghostscript" ,ghostscript)
|
||||||
("giflib" ,giflib)
|
("giflib" ,giflib)
|
||||||
|
@ -110,12 +109,10 @@
|
||||||
("openjpeg" ,openjpeg-1)
|
("openjpeg" ,openjpeg-1)
|
||||||
("poppler" ,poppler)
|
("poppler" ,poppler)
|
||||||
("printproto" ,printproto)
|
("printproto" ,printproto)
|
||||||
("scrnsaverproto" ,scrnsaverproto)
|
|
||||||
("wayland-protocols" ,wayland-protocols)
|
("wayland-protocols" ,wayland-protocols)
|
||||||
("xextproto" ,xextproto)
|
|
||||||
("xinput" ,xinput)
|
("xinput" ,xinput)
|
||||||
("xpr" ,xpr)
|
("xpr" ,xpr)
|
||||||
("xproto" ,xproto)))
|
("xorgproto" ,xorgproto)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
;; All these inputs are in package config files in section
|
;; All these inputs are in package config files in section
|
||||||
;; Requires.private.
|
;; Requires.private.
|
||||||
|
@ -180,7 +177,7 @@ removable devices or support for multimedia.")
|
||||||
(define-public terminology
|
(define-public terminology
|
||||||
(package
|
(package
|
||||||
(name "terminology")
|
(name "terminology")
|
||||||
(version "1.2.0")
|
(version "1.2.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri
|
(uri
|
||||||
|
@ -188,7 +185,7 @@ removable devices or support for multimedia.")
|
||||||
"terminology/terminology-" version ".tar.xz"))
|
"terminology/terminology-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0kw34l5lahn1qaks3ah6x8k41d6hfywpqfak2p7qq1z87zj506mx"))
|
"1ii8332bl88l8md3gvz5dhi9bjpm6shyf14ck9kfyy7d56hp71mc"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
;; Remove the bundled fonts.
|
;; Remove the bundled fonts.
|
||||||
;; TODO: Remove bundled lz4.
|
;; TODO: Remove bundled lz4.
|
||||||
|
@ -262,11 +259,11 @@ Libraries with some extra bells and whistles.")
|
||||||
name "/" name "-" version ".tar.xz"))
|
name "/" name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"16zydv7z94aw3rywmb9gr8ya85k7b75h22wng95lfx1x0y1yb0ad"))))
|
"16zydv7z94aw3rywmb9gr8ya85k7b75h22wng95lfx1x0y1yb0ad"))
|
||||||
|
(patches (search-patches "enlightenment-fix-setuid-path.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags '("--enable-mount-eeze")
|
`(#:phases
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-before 'configure 'set-system-actions
|
(add-before 'configure 'set-system-actions
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
@ -278,6 +275,8 @@ Libraries with some extra bells and whistles.")
|
||||||
(("/usr/share/X11/xkb/rules/xorg.lst")
|
(("/usr/share/X11/xkb/rules/xorg.lst")
|
||||||
(string-append xkeyboard
|
(string-append xkeyboard
|
||||||
"/share/X11/xkb/rules/base.lst")))
|
"/share/X11/xkb/rules/base.lst")))
|
||||||
|
(substitute* "src/modules/everything/evry_plug_apps.c"
|
||||||
|
(("/usr/bin/") ""))
|
||||||
(substitute* "configure"
|
(substitute* "configure"
|
||||||
(("/bin/mount") (string-append utils "/bin/mount"))
|
(("/bin/mount") (string-append utils "/bin/mount"))
|
||||||
(("/bin/umount") (string-append utils "/bin/umount"))
|
(("/bin/umount") (string-append utils "/bin/umount"))
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
|
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
|
||||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;;
|
;;;
|
||||||
|
@ -107,17 +107,17 @@ single file can be mounted.")
|
||||||
(define-public disorderfs
|
(define-public disorderfs
|
||||||
(package
|
(package
|
||||||
(name "disorderfs")
|
(name "disorderfs")
|
||||||
(version "0.5.2")
|
(version "0.5.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/ReproducibleBuilds/disorderfs.git")
|
(url "https://salsa.debian.org/reproducible-builds/disorderfs.git")
|
||||||
(commit "0.5.2")))
|
(commit version)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1j028dq3d4m64mn9xmfamcnnc7i2drmra4pdmxdmqdsi8p7yj4sv"))))
|
"1nmhfvxpvz3xsfxl9wqnh6r2l5m7hjq6n0vpblsl5xdcvwaqcf50"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
|
|
@ -209,7 +209,8 @@ by the b43-open driver of Linux-libre.")
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(fmw (string-append out "/share/firmware")))
|
(fmw (string-append out "/share/firmware")))
|
||||||
(mkdir-p fmw)
|
(mkdir-p fmw)
|
||||||
(copy-file "out/bios.bin" (string-append fmw "/bios.bin"))))))))
|
(copy-file "out/bios.bin" (string-append fmw "/bios.bin"))
|
||||||
|
#t))))))
|
||||||
(home-page "https://www.seabios.org/SeaBIOS")
|
(home-page "https://www.seabios.org/SeaBIOS")
|
||||||
(synopsis "x86 BIOS implementation")
|
(synopsis "x86 BIOS implementation")
|
||||||
(description "SeaBIOS is an implementation of a 16bit x86 BIOS. SeaBIOS
|
(description "SeaBIOS is an implementation of a 16bit x86 BIOS. SeaBIOS
|
||||||
|
@ -262,36 +263,26 @@ coreboot.")
|
||||||
(setenv "PATH" (string-append (getenv "PATH") ":" bin))
|
(setenv "PATH" (string-append (getenv "PATH") ":" bin))
|
||||||
; FIXME: The below script errors out. When using 'invoke' instead
|
; FIXME: The below script errors out. When using 'invoke' instead
|
||||||
; of 'system*' this causes the build to fail.
|
; of 'system*' this causes the build to fail.
|
||||||
(system* "bash" "edksetup.sh" "BaseTools")
|
(system* "bash" "edksetup.sh")
|
||||||
(substitute* "Conf/target.txt"
|
(substitute* "Conf/target.txt"
|
||||||
(("^TARGET[ ]*=.*$") "TARGET = RELEASE\n")
|
(("^TARGET[ ]*=.*$") "TARGET = RELEASE\n")
|
||||||
(("^TOOL_CHAIN_TAG[ ]*=.*$") "TOOL_CHAIN_TAG = GCC49\n")
|
|
||||||
(("^MAX_CONCURRENT_THREAD_NUMBER[ ]*=.*$")
|
(("^MAX_CONCURRENT_THREAD_NUMBER[ ]*=.*$")
|
||||||
(format #f "MAX_CONCURRENT_THREAD_NUMBER = ~a~%"
|
(format #f "MAX_CONCURRENT_THREAD_NUMBER = ~a~%"
|
||||||
(number->string (parallel-job-count)))))
|
(number->string (parallel-job-count)))))
|
||||||
;; Build build support.
|
;; Build build support.
|
||||||
(setenv "BUILD_CC" "gcc")
|
(setenv "BUILD_CC" "gcc")
|
||||||
(invoke "make" "-C" (string-append tools "/Source/C"))
|
(invoke "make" "-C" tools)
|
||||||
#t)))
|
#t)))
|
||||||
(add-after 'build 'build-ia32
|
(replace 'build
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "Conf/target.txt"
|
(invoke "build" "-a" "IA32" "-t" "GCC49"
|
||||||
(("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = IA32\n")
|
"-p" "OvmfPkg/OvmfPkgIa32.dsc")))
|
||||||
(("^ACTIVE_PLATFORM[ ]*=.*$")
|
|
||||||
"ACTIVE_PLATFORM = OvmfPkg/OvmfPkgIa32.dsc\n"))
|
|
||||||
(invoke "build")
|
|
||||||
#t))
|
|
||||||
,@(if (string=? "x86_64-linux" (%current-system))
|
,@(if (string=? "x86_64-linux" (%current-system))
|
||||||
'((add-after 'build 'build-x64
|
'((add-after 'build 'build-x64
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "Conf/target.txt"
|
(invoke "build" "-a" "X64" "-t" "GCC49"
|
||||||
(("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = X64\n")
|
"-p" "OvmfPkg/OvmfPkgX64.dsc"))))
|
||||||
(("^ACTIVE_PLATFORM[ ]*=.*$")
|
|
||||||
"ACTIVE_PLATFORM = OvmfPkg/OvmfPkgX64.dsc\n"))
|
|
||||||
(invoke "build")
|
|
||||||
#t)))
|
|
||||||
'())
|
'())
|
||||||
(delete 'build)
|
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
@ -312,6 +303,76 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
|
||||||
(license (list license:expat
|
(license (list license:expat
|
||||||
license:bsd-2 license:bsd-3 license:bsd-4))))
|
license:bsd-2 license:bsd-3 license:bsd-4))))
|
||||||
|
|
||||||
|
(define-public ovmf-aarch64
|
||||||
|
(package
|
||||||
|
(inherit ovmf)
|
||||||
|
(name "ovmf-aarch64")
|
||||||
|
(native-inputs
|
||||||
|
`(,@(package-native-inputs ovmf)
|
||||||
|
,@(if (not (string-prefix? "aarch64" (%current-system)))
|
||||||
|
`(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu"))
|
||||||
|
("cross-binutils" ,(cross-binutils "aarch64-linux-gnu")))
|
||||||
|
'())))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments ovmf)
|
||||||
|
((#:phases phases)
|
||||||
|
`(modify-phases ,phases
|
||||||
|
(add-before 'configure 'set-env
|
||||||
|
(lambda _
|
||||||
|
,@(if (not (string-prefix? "aarch64" (%current-system)))
|
||||||
|
`((setenv "GCC49_AARCH64_PREFIX" "aarch64-linux-gnu-"))
|
||||||
|
'())
|
||||||
|
#t))
|
||||||
|
(replace 'build
|
||||||
|
(lambda _
|
||||||
|
(invoke "build" "-a" "AARCH64" "-t" "GCC49"
|
||||||
|
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
|
||||||
|
(delete 'build-x64)
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(fmw (string-append out "/share/firmware")))
|
||||||
|
(mkdir-p fmw)
|
||||||
|
(copy-file "Build/ArmVirtQemu-AARCH64/RELEASE_GCC49/FV/QEMU_EFI.fd"
|
||||||
|
(string-append fmw "/ovmf_aarch64.bin"))
|
||||||
|
#t)))))))
|
||||||
|
(supported-systems %supported-systems)))
|
||||||
|
|
||||||
|
(define-public ovmf-arm
|
||||||
|
(package
|
||||||
|
(inherit ovmf)
|
||||||
|
(name "ovmf-arm")
|
||||||
|
(native-inputs
|
||||||
|
`(,@(package-native-inputs ovmf)
|
||||||
|
,@(if (not (string-prefix? "armhf" (%current-system)))
|
||||||
|
`(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"))
|
||||||
|
("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf")))
|
||||||
|
'())))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments ovmf)
|
||||||
|
((#:phases phases)
|
||||||
|
`(modify-phases ,phases
|
||||||
|
(add-before 'configure 'set-env
|
||||||
|
(lambda _
|
||||||
|
,@(if (not (string-prefix? "armhf" (%current-system)))
|
||||||
|
`((setenv "GCC49_ARM_PREFIX" "arm-linux-gnueabihf-"))
|
||||||
|
'())
|
||||||
|
#t))
|
||||||
|
(replace 'build
|
||||||
|
(lambda _
|
||||||
|
(invoke "build" "-a" "ARM" "-t" "GCC49"
|
||||||
|
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
|
||||||
|
(delete 'build-x64)
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(fmw (string-append out "/share/firmware")))
|
||||||
|
(mkdir-p fmw)
|
||||||
|
(copy-file "Build/ArmVirtQemu-ARM/RELEASE_GCC49/FV/QEMU_EFI.fd"
|
||||||
|
(string-append fmw "/ovmf_arm.bin"))
|
||||||
|
#t)))))))
|
||||||
|
(supported-systems %supported-systems)))
|
||||||
|
|
||||||
(define* (make-arm-trusted-firmware platform #:optional (arch "aarch64"))
|
(define* (make-arm-trusted-firmware platform #:optional (arch "aarch64"))
|
||||||
(package
|
(package
|
||||||
(name (string-append "arm-trusted-firmware-" platform))
|
(name (string-append "arm-trusted-firmware-" platform))
|
||||||
|
@ -404,3 +465,66 @@ such as:
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0r4xnlq7v9khjfcg6gqp7nmrmnw4z1r8bipwdr07png1dcbb8214")))))))
|
"0r4xnlq7v9khjfcg6gqp7nmrmnw4z1r8bipwdr07png1dcbb8214")))))))
|
||||||
|
|
||||||
|
(define-public arm-trusted-firmware-puma-rk3399
|
||||||
|
(let ((base (make-arm-trusted-firmware "rk3399"))
|
||||||
|
;; Vendor's arm trusted firmware branch hasn't been upstreamed yet.
|
||||||
|
(commit "d71e6d83612df896774ec4c03d49500312d2c324")
|
||||||
|
(revision "1"))
|
||||||
|
(package
|
||||||
|
(inherit base)
|
||||||
|
(name "arm-trusted-firmware-puma-rk3399")
|
||||||
|
(version (git-version "1.3" revision commit))
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://git.theobroma-systems.com/arm-trusted-firmware.git")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0vqhwqqh8h9qlkpybg2v94911091c1418bc4pnzq5fd7zf0fjkf8")))))))
|
||||||
|
|
||||||
|
(define-public rk3399-cortex-m0
|
||||||
|
(package
|
||||||
|
(name "rk3399-cortex-m0")
|
||||||
|
(version "1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://git.theobroma-systems.com/rk3399-cortex-m0.git")
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
(file-name (git-file-name "rk3399-cortex-m0" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"02wz1vkf4j3zc8rx289z76xhrf71jhb2p05lvmygky393a9gjh9w"))))
|
||||||
|
(home-page "https://git.theobroma-systems.com/rk3399-cortex-m0.git/about/")
|
||||||
|
(synopsis "PMU Cortex M0 firmware for RK3399 Q7 (Puma)")
|
||||||
|
(description
|
||||||
|
"Cortex-M0 firmware used with the RK3399 to implement
|
||||||
|
power-management functionality and helpers (e.g. DRAM frequency
|
||||||
|
switching support).\n")
|
||||||
|
(license license:bsd-3)
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(delete 'configure)
|
||||||
|
(delete 'check)
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let ((out (assoc-ref outputs "out"))
|
||||||
|
(mzerofiles (find-files "." "rk3399m0.(elf|bin)$")))
|
||||||
|
(for-each
|
||||||
|
(lambda (file)
|
||||||
|
(install-file file out))
|
||||||
|
mzerofiles))
|
||||||
|
#t))
|
||||||
|
(add-before 'build 'setenv
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(setenv "CROSS_COMPILE" "arm-none-eabi-")
|
||||||
|
#t)))))
|
||||||
|
(native-inputs `(("cross-gcc" ,(cross-gcc "arm-none-eabi" #:xgcc gcc-7))
|
||||||
|
("cross-binutils" ,(cross-binutils "arm-none-eabi"))))))
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
#:use-module (gnu packages m4)
|
#:use-module (gnu packages m4)
|
||||||
#:use-module (gnu packages man)
|
#:use-module (gnu packages man)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages indent)
|
#:use-module (gnu packages code)
|
||||||
#:use-module (srfi srfi-1))
|
#:use-module (srfi srfi-1))
|
||||||
|
|
||||||
(define-public flex
|
(define-public flex
|
||||||
|
|
|
@ -137,8 +137,9 @@ TrueType (TTF) files.")
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let ((conf-dir (string-append (assoc-ref outputs "out")
|
(let ((conf-dir (string-append (assoc-ref outputs "out")
|
||||||
"/share/fontconfig/conf.avail")))
|
"/share/fontconfig/conf.avail")))
|
||||||
(copy-recursively "fontconfig" conf-dir)))))))
|
(copy-recursively "fontconfig" conf-dir)
|
||||||
(home-page "http://dejavu-fonts.org/")
|
#t))))))
|
||||||
|
(home-page "https://dejavu-fonts.github.io/")
|
||||||
(synopsis "Vera font family derivate with additional characters")
|
(synopsis "Vera font family derivate with additional characters")
|
||||||
(description "DejaVu provides an expanded version of the Vera font family
|
(description "DejaVu provides an expanded version of the Vera font family
|
||||||
aiming for quality and broader Unicode coverage while retaining the original
|
aiming for quality and broader Unicode coverage while retaining the original
|
||||||
|
@ -406,14 +407,15 @@ for long periods of working with computers (8 or more hours per day).")
|
||||||
(string-append (assoc-ref %outputs out)
|
(string-append (assoc-ref %outputs out)
|
||||||
"/share/fonts/opentype")))))
|
"/share/fonts/opentype")))))
|
||||||
(setenv "PATH" PATH)
|
(setenv "PATH" PATH)
|
||||||
(system* tar "xvf" (assoc-ref %build-inputs "source"))
|
(invoke tar "xvf" (assoc-ref %build-inputs "source"))
|
||||||
(chdir (string-append "source-han-sans-" ,version "R"))
|
(chdir (string-append "source-han-sans-" ,version "R"))
|
||||||
(install-opentype-fonts "OTC" "out")
|
(install-opentype-fonts "OTC" "out")
|
||||||
(install-opentype-fonts "SubsetOTF/CN" "cn")
|
(install-opentype-fonts "SubsetOTF/CN" "cn")
|
||||||
(install-opentype-fonts "SubsetOTF/JP" "jp")
|
(install-opentype-fonts "SubsetOTF/JP" "jp")
|
||||||
(install-opentype-fonts "SubsetOTF/KR" "kr")
|
(install-opentype-fonts "SubsetOTF/KR" "kr")
|
||||||
(install-opentype-fonts "SubsetOTF/TW" "tw")
|
(install-opentype-fonts "SubsetOTF/TW" "tw")
|
||||||
(for-each delete-file (find-files %output "\\.zip$"))))))
|
(for-each delete-file (find-files %output "\\.zip$"))
|
||||||
|
#t))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("gzip" ,gzip)
|
`(("gzip" ,gzip)
|
||||||
("tar" ,tar)))
|
("tar" ,tar)))
|
||||||
|
@ -948,7 +950,7 @@ vector graphics.")
|
||||||
(src-pcf-dir (string-append "tamzen-font-Tamzen-"
|
(src-pcf-dir (string-append "tamzen-font-Tamzen-"
|
||||||
,version "/pcf")))
|
,version "/pcf")))
|
||||||
(setenv "PATH" PATH)
|
(setenv "PATH" PATH)
|
||||||
(system* tar "xvf" (assoc-ref %build-inputs "source"))
|
(invoke tar "xvf" (assoc-ref %build-inputs "source"))
|
||||||
(mkdir-p font-dir)
|
(mkdir-p font-dir)
|
||||||
(mkdir-p psf-dir)
|
(mkdir-p psf-dir)
|
||||||
(chdir src-pcf-dir)
|
(chdir src-pcf-dir)
|
||||||
|
@ -1167,7 +1169,7 @@ itself."))))
|
||||||
(otf-dir (string-append %output
|
(otf-dir (string-append %output
|
||||||
"/share/fonts/opentype")))
|
"/share/fonts/opentype")))
|
||||||
(setenv "PATH" PATH)
|
(setenv "PATH" PATH)
|
||||||
(system* "unzip" (assoc-ref %build-inputs "source"))
|
(invoke "unzip" (assoc-ref %build-inputs "source"))
|
||||||
|
|
||||||
(mkdir-p ttf-dir)
|
(mkdir-p ttf-dir)
|
||||||
(mkdir-p otf-dir)
|
(mkdir-p otf-dir)
|
||||||
|
@ -1176,7 +1178,8 @@ itself."))))
|
||||||
(find-files "." "\\.ttf$"))
|
(find-files "." "\\.ttf$"))
|
||||||
(for-each (lambda (otf)
|
(for-each (lambda (otf)
|
||||||
(install-file otf otf-dir))
|
(install-file otf otf-dir))
|
||||||
(find-files "." "\\.otf$"))))))
|
(find-files "." "\\.otf$"))
|
||||||
|
#t))))
|
||||||
(native-inputs `(("unzip" ,unzip)))
|
(native-inputs `(("unzip" ,unzip)))
|
||||||
(home-page "http://www.impallari.com/dosis")
|
(home-page "http://www.impallari.com/dosis")
|
||||||
(synopsis "Very simple, rounded, sans serif family")
|
(synopsis "Very simple, rounded, sans serif family")
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue