me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into staging

master
Marius Bakke 2018-06-21 15:52:26 +02:00
commit 4dfea1010a
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
34 changed files with 1127 additions and 396 deletions

26
NEWS
View File

@ -2,7 +2,7 @@
#+TITLE: Guix NEWS history of user-visible changes
#+STARTUP: content hidestars
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>
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@ -14,19 +14,39 @@ Please send Guix bug reports to bug-guix@gnu.org.
** Package management
*** guix pull has been overhauled; it now populates ~/.config/guix/current
*** guix pack now supports building SquashFS images
*** guix pack can now build relocatable tarballs
*** guix pack can now build tarballs with relocatable executables
*** guix system gives more hints for common configuration errors
*** guix package no longer warns about harmless file collisions
*** guix weather now reports continuous integration statistics
*** guix import elpa has a new --recursive option
** Distribution
*** New initrd-modules field of operating-system
*** New file-system-label construct supersedes title field of file-system
*** Package for Python 2.x has been renamed from “python” to “python2”
*** RHEL6 systems based on kernel Linux 2.6 are supported again
*** New services
enlightenment
enlightenment, qemu-binfmt
** Programming interfaces
*** gnu-build-system now includes a bootstrap phase to run autoreconf
*** gnu-build-system dumps contents of test-suite.log upon test failures
*** New build systems: android-ndk
*** New (guix store database) and (guix store deduplication) modules
*** The guix-register C++ program no longer is
*** package-full-name (guix packages) now uses "@" as its delimiter.
(<https://bugs.gnu.org/31088>)
** Noteworthy bug fixes
** Native language support
*** the manual can now be translated and is partially translated into French
* Changes in 0.14.0 (since 0.13.0)
** Package management

View File

@ -939,6 +939,7 @@ dist_patch_DATA = \
%D%/packages/patches/mozjs38-shell-version.patch \
%D%/packages/patches/mozjs38-tracelogger.patch \
%D%/packages/patches/mozjs38-version-detection.patch \
%D%/packages/patches/mrrescue-support-love-11.patch \
%D%/packages/patches/mumble-1.2.19-abs.patch \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
@ -962,6 +963,7 @@ dist_patch_DATA = \
%D%/packages/patches/ocaml-bitstring-fix-configure.patch \
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch \
%D%/packages/patches/ocaml-findlib-make-install.patch \
%D%/packages/patches/ocaml-graph-honor-source-date-epoch.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \
@ -1194,6 +1196,7 @@ dist_patch_DATA = \
%D%/packages/patches/wpa-supplicant-fix-nonce-reuse.patch \
%D%/packages/patches/wpa-supplicant-krack-followups.patch \
%D%/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch \
%D%/packages/patches/x265-fix-ppc64le-build.patch \
%D%/packages/patches/xboing-CVE-2004-0149.patch \
%D%/packages/patches/xdotool-fix-makefile.patch \
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
@ -1209,7 +1212,6 @@ dist_patch_DATA = \
%D%/packages/patches/xinetd-fix-fd-leak.patch \
%D%/packages/patches/xinetd-CVE-2013-4342.patch \
%D%/packages/patches/xmodmap-asprintf.patch \
%D%/packages/patches/libyaml-CVE-2014-9130.patch \
%D%/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch \
%D%/packages/patches/zathura-plugindir-environment-variable.patch

View File

@ -2391,15 +2391,15 @@ tool for remote execution and deployment.")
(define-public neofetch
(package
(name "neofetch")
(version "4.0.2")
(version "5.0.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dylanaraps/neofetch/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/dylanaraps/neofetch")
(commit version)))
(sha256
(base32
"014hlbzs6j4b669b64hnq8vc5knwiv9ncw9m9d193p9jsybxpm1w"))))
"0yzyi2p0d8xp576lxyv5m9h60dl1d5dmrn40aad307872835b9rr"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are no tests
@ -2407,27 +2407,7 @@ tool for remote execution and deployment.")
(list (string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-target-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("\\$\\(DESTDIR\\)/etc/")
"$(PREFIX)/etc/"))
(substitute* "neofetch"
(("\"/etc/neofetch")
(string-append "\"" out "/etc/neofetch"))
(("\"/usr/share/neofetch")
(string-append "\"" out "/share/neofetch"))))
#t))
(delete 'configure) ; no configure script
(replace 'install
(lambda* (#:key make-flags outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/" ,name "-" ,version))
(etc (string-append doc "/examples/etc")))
(zero? (apply system* `("make" ,@make-flags
,(string-append "SYSCONFDIR=" etc)
"install")))))))))
(delete 'configure)))) ; no configure script
(home-page "https://github.com/dylanaraps/neofetch")
(synopsis "System info script")
(description "Neofetch is a CLI system information tool written in Bash.
@ -2669,7 +2649,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
(version "3.0.11-1")
(version "3.0.12-1")
(source
(origin
(method git-fetch)
@ -2678,7 +2658,7 @@ Python loading in HPC environments.")
(commit version)))
(sha256
(base32
"07wihl4gsamq98mhxvm6k4vpphym75467cxfa19b3g5ggpyq894g"))))
"1a2sjz90gzzvhp63x89hs0a424rkd13qrff2njqmjxp322zyp527"))))
(build-system trivial-build-system)
(inputs
`(("bash" ,bash)

View File

@ -6939,13 +6939,13 @@ Bioconductor, CRAN, and Github.")
(define-public r-biocviews
(package
(name "r-biocviews")
(version "1.48.1")
(version "1.48.2")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "biocViews" version))
(sha256
(base32
"1q5z6xxhjyibr165di7iyachw4gd4bdrxkd8rjkcklnngsrx1azm"))))
"01yiafayl1m5704xdd2cn3zjc78rs10dqyz66lr3qkf6d8w66938"))))
(properties
`((upstream-name . "biocViews")))
(build-system r-build-system)
@ -7083,14 +7083,14 @@ support for default values, positional argument support, etc.")
(define-public r-optparse
(package
(name "r-optparse")
(version "1.4.4")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "optparse" version))
(sha256
(base32
"1ff4wmsszrb3spwfp7ynfs8w11qpy1sdzfxm1wk8dqqvdwris7qb"))))
"1d7v5gl45x4amsfmzn5zyyffyqlc7a82h01szlnda22viyxids0h"))))
(build-system r-build-system)
(propagated-inputs
`(("r-getopt" ,r-getopt)))
@ -7587,13 +7587,13 @@ files.")
(define-public r-delayedarray
(package
(name "r-delayedarray")
(version "0.6.0")
(version "0.6.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "DelayedArray" version))
(sha256
(base32
"0n3w57cwy911q812wc8658y0v3xgpmg379sj98kfqdxa80z1mxdf"))))
"0sjwszxdi0vkj2i2di5i46gh9chc660yr3gs5nk9qnqp77713zds"))))
(properties
`((upstream-name . "DelayedArray")))
(build-system r-build-system)
@ -10070,14 +10070,14 @@ provide added flexibility for data combination and manipulation.")
(define-public r-complexheatmap
(package
(name "r-complexheatmap")
(version "1.18.0")
(version "1.18.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ComplexHeatmap" version))
(sha256
(base32
"0z57mrginzd40niy51dvnyqgbrij05ji0dbwqs3x2as80sq28i3q"))))
"0qjwz1hzpjnc90jiinjkikfnr0shi72q3zfdjjz7pxydy0mglq8n"))))
(properties
`((upstream-name . "ComplexHeatmap")))
(build-system r-build-system)

View File

@ -424,6 +424,41 @@ the plog header-only C++ logging library, and a method to log to R's standard
error stream.")
(license license:expat)))
(define-public r-pls
(package
(name "r-pls")
(version "2.6-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "pls" version))
(sha256
(base32
"15j59p5x0rkdrk7iqzkipsy50rsyjl31w8zxc4w3v1j5gzxhi1rx"))))
(build-system r-build-system)
(home-page "http://mevik.net/work/software/pls.html")
(synopsis "Partial Least Squares and Principal Component Regression")
(description
"The pls package implements multivariate regression methods: Partial Least
Squares Regression (@dfn{PLSR}), Principal Component Regression (@dfn{PCR}), and
Canonical Powered Partial Least Squares (@dfn{CPPLS}). It supports:
@itemize
@item several algorithms: the traditional orthogonal scores (@dfn{NIPALS}) PLS
algorithm, kernel PLS, wide kernel PLS, Simpls, and PCR through @code{svd}
@item multi-response models (or @dfn{PLS2})
@item flexible cross-validation
@item Jackknife variance estimates of regression coefficients
@item extensive and flexible plots: scores, loadings, predictions, coefficients,
(R)MSEP, R², and correlation loadings
@item formula interface, modelled after @code{lm()}, with methods for predict,
print, summary, plot, update, etc.
@item extraction functions for coefficients, scores, and loadings
@item MSEP, RMSEP, and R² estimates
@item multiplicative scatter correction (@dfn{MSC})
@end itemize\n")
(license license:gpl2)))
(define-public r-rcpp
(package
(name "r-rcpp")
@ -819,17 +854,19 @@ quantities.")
(define-public r-progress
(package
(name "r-progress")
(version "1.1.2")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "progress" version))
(sha256
(base32
"1fxakchfjr5vj59s9sxynd7crpz97xj42438rmkhkf3rjpyspx59"))))
"1rhwm0bdw30z3rvl0bn56xprjl3zrdy7150w4gl4bkvn2d6h9fav"))))
(build-system r-build-system)
(propagated-inputs
`(("r-prettyunits" ,r-prettyunits)
`(("r-crayon" ,r-crayon)
("r-hms" ,r-hms)
("r-prettyunits" ,r-prettyunits)
("r-r6" ,r-r6)))
(home-page "https://github.com/gaborcsardi/progress")
(synopsis "Terminal progress bars")
@ -1714,14 +1751,14 @@ provides a one-row summary of model-level statistics.")
(define-public r-recipes
(package
(name "r-recipes")
(version "0.1.2")
(version "0.1.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "recipes" version))
(sha256
(base32
"1car3a3mqn87pz049cbgkaayz86970mvkapk6al2k7jjw76306l9"))))
"1vqh3pxs4n1azhnd1lzg91vasya6g323kllhbrw177j7kdxqyimy"))))
(build-system r-build-system)
(propagated-inputs
`(("r-broom" ,r-broom)
@ -1733,6 +1770,7 @@ provides a one-row summary of model-level statistics.")
("r-lubridate" ,r-lubridate)
("r-magrittr" ,r-magrittr)
("r-matrix" ,r-matrix)
("r-pls" ,r-pls)
("r-purrr" ,r-purrr)
("r-rcpproll" ,r-rcpproll)
("r-rlang" ,r-rlang)
@ -1918,14 +1956,14 @@ analysis of multiply imputed data sets.")
(define-public r-mice
(package
(name "r-mice")
(version "3.0.0")
(version "3.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "mice" version))
(sha256
(base32
"1p8a5ham90iaak4w17114pdnw535r2l9sxr402yrkc4gbwfbpdlq"))))
"0xpn215yfzib4hw09cwilnyg9zbvq460njavfvm84mvgwbm25byi"))))
(build-system r-build-system)
(propagated-inputs
`(("r-broom" ,r-broom)
@ -2570,14 +2608,14 @@ iVAT).")
(define-public r-xfun
(package
(name "r-xfun")
(version "0.1")
(version "0.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "xfun" version))
(sha256
(base32
"1sm51gmwgw876d6d1q8smxmfgfh6zsnykfx8qp8z6jmh0fvd89pj"))))
"0zl22fcw90kdvzkjyf6vbmdmn9rz3bl51522fasvmykypffyng4a"))))
(build-system r-build-system)
(home-page "https://github.com/yihui/xfun")
(synopsis "Miscellaneous functions")
@ -3540,14 +3578,14 @@ extracting and replacing data in arrays.")
(define-public r-prroc
(package
(name "r-prroc")
(version "1.3")
(version "1.3.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "PRROC" version))
(sha256
(base32
"03hvh92lq4i4w4mla9bvwrwb4626f4hvlxgdn57hamp70960vjyc"))))
"1m28h8pcd78049lz2qixhkcr9h5b3jik3maqzfbvq9y58z71i4a7"))))
(properties `((upstream-name . "PRROC")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/PRROC/")

View File

@ -398,7 +398,7 @@ mapping from string keys to string values.")
(define-public memcached
(package
(name "memcached")
(version "1.5.6")
(version "1.5.8")
(source
(origin
(method url-fetch)
@ -406,7 +406,7 @@ mapping from string keys to string values.")
"https://memcached.org/files/memcached-" version ".tar.gz"))
(sha256
(base32
"00szy9d4szaixi260dcd4846zci04y0sd47ia2lzg0bxkn2ywxcn"))))
"1ppnhsqv9047vm0rrmqla56y972f8qqjdb780iz6v922jjcc723k"))))
(build-system gnu-build-system)
(inputs
`(("libevent" ,libevent)

View File

@ -312,12 +312,12 @@ editor (without an X toolkit)" )
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'autogen
(lambda _
(zero? (system* "sh" "autogen.sh"))))
(lambda _
(invoke "sh" "autogen.sh")))
;; Build sometimes fails: deps/dispnew.d: No such file or directory
(add-before 'build 'make-deps-dir
(lambda _
(zero? (system* "mkdir" "-p" "src/deps"))))))))))
(invoke "mkdir" "-p" "src/deps")))))))))
;;;
@ -411,7 +411,7 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
(define-public emacs-with-editor
(package
(name "emacs-with-editor")
(version "2.7.2")
(version "2.7.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -420,7 +420,7 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1jqi3axcs0cb1pcv1jxxc2a09v6psrm33wwl6hmyshzl8kbxs2mv"))))
"1ln2s0kckzkv50qmr6x1kb2j30cfjii0vs6lpghg7ff4lav8jqgh"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)))
@ -585,7 +585,7 @@ support for Git-SVN.")
(modify-phases %standard-phases
(add-before 'install 'make-info
(lambda _
(zero? (system* "make" "info")))))))
(invoke "make" "info"))))))
(native-inputs
`(("texinfo" ,texinfo)))
(propagated-inputs
@ -602,7 +602,7 @@ process, passing on the arguments as command line arguments.")
(define-public emacs-ghub
(package
(name "emacs-ghub")
(version "2.0.0")
(version "2.0.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -611,14 +611,14 @@ process, passing on the arguments as command line arguments.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1zrb3xk04a228g2ahx0r02d0d3xskj60q73qavvmm2i56r66cxvc"))))
"0d0qj5r1bm2aidi61rigrdaycxnyb7y1ivb3h8rpvvapsf8sk7z0"))))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'install 'make-info
(lambda _
(zero? (system* "make" "info")))))))
(invoke "make" "info"))))))
(native-inputs
`(("texinfo" ,texinfo)))
(home-page "https://github.com/magit/ghub")
@ -702,8 +702,7 @@ only a handful of functions that are not resource-specific.")
files))
(with-directory-excursion "doc"
(unless (zero? (system* "makeinfo" "haskell-mode.texi"))
(error "makeinfo failed"))
(invoke "makeinfo" "haskell-mode.texi")
(install-file "haskell-mode.info" info))
(copy-to-dir doc '("CONTRIBUTING.md" "NEWS" "README.md"))
(copy-to-dir el-dir (find-files "." "\\.elc?"))
@ -794,7 +793,7 @@ provides an optional IDE-like error list.")
(modify-phases %standard-phases
(add-after 'unpack 'autoconf
(lambda _
(zero? (system* "autoconf"))))
(invoke "autoconf")))
(add-before 'configure 'support-emacs!
(lambda _
;; For some reason 'AC_PATH_EMACS' thinks that 'Emacs 26' is
@ -825,13 +824,13 @@ provides an optional IDE-like error list.")
#t)))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(and (zero? (system* "make" "install" "install-icons"))
(with-directory-excursion
(string-append (assoc-ref outputs "out")
"/share/emacs/site-lisp")
(for-each delete-file '("ChangeLog" "ChangeLog.1"))
(symlink "w3m-load.el" "w3m-autoloads.el")
#t)))))))
(invoke "make" "install" "install-icons")
(with-directory-excursion
(string-append (assoc-ref outputs "out")
"/share/emacs/site-lisp")
(for-each delete-file '("ChangeLog" "ChangeLog.1"))
(symlink "w3m-load.el" "w3m-autoloads.el")
#t))))))
(home-page "http://emacs-w3m.namazu.org/")
(synopsis "Simple Web browser for Emacs based on w3m")
(description
@ -1154,7 +1153,7 @@ than @code{electric-indent-mode}.")
(add-before 'install 'make-info
(lambda _
(with-directory-excursion "docs"
(zero? (system* "make" "info")))))
(invoke "make" "info"))))
(add-after 'install 'install-info
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -1455,13 +1454,12 @@ Maps directly inside Emacs.")
(substitute* "Makefile"
(("\\/usr\\/bin\\/gzip")
(string-append (assoc-ref inputs "gzip") "/bin/gzip")))
(zero?
(system* "make"
"clean"
"info"
(string-append "TEXINFODIR="
(assoc-ref inputs "texinfo")
"/bin"))))))
(invoke "make"
"clean"
"info"
(string-append "TEXINFODIR="
(assoc-ref inputs "texinfo")
"/bin")))))
(add-after 'install 'install-info
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -1499,7 +1497,7 @@ diagrams.")
(modify-phases %standard-phases
(add-after 'unpack 'autogen
(lambda _
(zero? (system* "sh" "autogen.sh")))))))
(invoke "sh" "autogen.sh"))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@ -1564,7 +1562,7 @@ filters, new key bindings and faces. It can be enabled by
(lambda _ (chdir "server") #t))
(add-after 'enter-server-dir 'autogen
(lambda _
(zero? (system* "bash" "autogen.sh"))))
(invoke "bash" "autogen.sh")))
;; Build emacs side using 'emacs-build-system'.
(add-after 'compress-documentation 'enter-lisp-dir
@ -1727,7 +1725,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or
(define-public emacs-d-mode
(package
(name "emacs-d-mode")
(version "2.0.8")
(version "2.0.9")
(source (origin
(method url-fetch)
(uri (string-append
@ -1736,7 +1734,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0knpgi55jm09282aqf8pv55zillpnpzf9f4sgm6gwsmvxf17xaw0"))))
"127aa77ix3p7w4g339bx026df9y649dahlr3v359z0hs40zjz3kd"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-undercover" ,emacs-undercover)))
@ -2971,8 +2969,8 @@ in @code{html-mode}.")
(substitute* "Makefile"
(("infodir=/usr/local/info")
(string-append "infodir=" info-dir)))
(system* "make" "html/index.html")
(system* "make" "slime.info")
(invoke "make" "html/index.html")
(invoke "make" "slime.info")
(install-file "slime.info" info-dir)
(copy-recursively "html" (string-append doc-dir "/html")))
(for-each (lambda (f)
@ -3652,9 +3650,9 @@ automatically.")
(let* ((out (assoc-ref outputs "out"))
(info (string-append out "/share/info")))
(with-directory-excursion "doc"
(unless (zero? (system* "makeinfo" "ivy.texi"))
(error "makeinfo failed"))
(install-file "ivy.info" info))))))))
(invoke "makeinfo" "ivy.texi")
(install-file "ivy.info" info)
#t)))))))
(propagated-inputs
`(("emacs-hydra" ,emacs-hydra)))
(native-inputs
@ -4106,14 +4104,15 @@ programming language.")
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "Makeconf"
(("SHELL = /bin/sh")
(string-append "SHELL = " (which "sh"))))))
(string-append "SHELL = " (which "sh"))))
#t))
;; FIXME: the texlive-union insists on regenerating fonts. It stores
;; them in HOME, so it needs to be writeable.
(add-before 'build 'set-HOME
(lambda _ (setenv "HOME" "/tmp") #t))
(replace 'check
(lambda _
(zero? (system* "make" "test"))))))))
(invoke "make" "test")))))))
(inputs
`(("emacs" ,emacs-minimal)
("r-minimal" ,r-minimal)))
@ -4727,36 +4726,38 @@ news items, openrc and runscripts.")
(license license:gpl2+)))
(define-public emacs-evil
(package
(name "emacs-evil")
(version "1.2.13")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/emacs-evil/evil/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1z63zsxmsc6mh74wv6065carwqmgs7b7lz5044s12xvgsjfbwi8h"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-undo-tree" ,emacs-undo-tree)
("emacs-goto-chg" ,emacs-goto-chg)))
(home-page "https://github.com/emacs-evil/evil")
(synopsis "Extensible Vi layer for Emacs")
(description
"Evil is an extensible vi layer for Emacs. It emulates the
(let ((commit "230b87212c81aaa68ef5547a6b998d9c365fe139"))
(package
(name "emacs-evil")
(version (git-version "1.2.13" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-evil/evil")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0c9zy3bpck10gcrv79kd3h7i4ygd5bgbgy773n0lg7a2r5kwn1gx"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-undo-tree" ,emacs-undo-tree)
("emacs-goto-chg" ,emacs-goto-chg)))
(home-page "https://github.com/emacs-evil/evil")
(synopsis "Extensible Vi layer for Emacs")
(description
"Evil is an extensible vi layer for Emacs. It emulates the
main features of Vim, and provides facilities for writing custom
extensions.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-evil-collection
(let ((commit "f40704a57fd33b4bfad64147a2b771fc8961fdfc")
(let ((commit "ac21b8957cfc22485cdaa316384edf9cb220d837")
(revision "1"))
(package
(name "emacs-evil-collection")
(version (git-version "20180425" revision commit))
(version (git-version "20180617" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@ -4765,7 +4766,7 @@ extensions.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0qn19k0f3isnbi1hkmcf3qjxbyvp23m5ak5ny7623qgwb2nwz1l5"))))
"082a3c5c2ls9ryqrl5kzb4z6bcprhqx8pypnlj1razbld3lny934"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)))
@ -5866,7 +5867,7 @@ source file, @file{jl-encrypt.el}.")
(define-public emacs-htmlize
(package
(name "emacs-htmlize")
(version "1.51")
(version "1.53")
(source
(origin
(method url-fetch)
@ -5876,7 +5877,7 @@ source file, @file{jl-encrypt.el}.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1fy1lybzrxl8a8r88f6p19nz8ygmvcxhxbnymkxh7jqaz25viwld"))))
"1lzaf9m1qr9dhw4nn53g6wszk2vqw95gpsbrc3y85bams4cn24ga"))))
(build-system emacs-build-system)
(home-page "https://github.com/hniksic/emacs-htmlize")
(synopsis "Convert buffer text and decorations to HTML")
@ -6149,13 +6150,13 @@ which code derived from Kelvin H's org-page.")
(modify-phases %standard-phases
(add-after 'unpack 'regenerate-el-files
(lambda* (#:key inputs #:allow-other-keys)
(zero? (system* "make"
(string-append "PROTO_PATH="
(assoc-ref inputs "xcb-proto")
"/share/xcb")
(string-append "EMACS_BIN="
(assoc-ref inputs "emacs")
"/bin/emacs -Q"))))))))
(invoke "make"
(string-append "PROTO_PATH="
(assoc-ref inputs "xcb-proto")
"/share/xcb")
(string-append "EMACS_BIN="
(assoc-ref inputs "emacs")
"/bin/emacs -Q")))))))
(native-inputs `(("xcb-proto" ,xcb-proto)))
(home-page "https://github.com/ch11ng/xelb")
(synopsis "X protocol Emacs Lisp binding")
@ -8968,10 +8969,10 @@ confused by comments or @code{foo-bar} matching @code{foo}.")
(modify-phases %standard-phases
(add-before 'install 'check
(lambda* (#:key inputs #:allow-other-keys)
(zero? (system* "emacs" "--batch" "-L" "."
"-l" "test/m-buffer-test.el"
"-l" "test/m-buffer-at-test.el"
"-f" "ert-run-tests-batch-and-exit")))))))
(invoke "emacs" "--batch" "-L" "."
"-l" "test/m-buffer-test.el"
"-l" "test/m-buffer-at-test.el"
"-f" "ert-run-tests-batch-and-exit"))))))
(build-system emacs-build-system)
(home-page "https://github.com/phillord/m-buffer-el")
(synopsis "List oriented buffer operations for Emacs")
@ -10702,27 +10703,8 @@ Org-mode file, and citations of Zotero items in Pandoc Markdown files.")
(license license:gpl3+)))
(define-public emacs-evil-ediff
(package
(name "emacs-evil-ediff")
(version "20170724")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/emacs-evil/evil-ediff/archive/"
"67b0e69f65c196eff5b39dacb7a9ec05bb919c74"
".tar.gz"))
(sha256
(base32
"0j2x26zfc6md54mjf76qpybil4yal70lp5bifcz62l1f8fc1vvlq"))))
(build-system emacs-build-system)
(propagated-inputs `(("emacs-evil" ,emacs-evil)))
(home-page "https://github.com/emacs-evil/evil-ediff")
(synopsis "Make Ediff a little evil")
(description
"This Emacs package configures Ediff to be friendlier to users of Vi-like
keybindings. Consult the help buffer for more information.")
(license license:gpl3+)))
;; Evil-Ediff is included in Evil Collection from 20180617.
(deprecated-package "emacs-evil-ediff" emacs-evil-collection))
(define-public emacs-evil-magit
(let ((commit "dbf5a646a7ce1c35c229dfdc423bd5ecd927a3a8"))
@ -10754,30 +10736,8 @@ describing the key binding changes.")
(license license:gpl3+))))
(define-public emacs-evil-mu4e
(package
(name "emacs-evil-mu4e")
(version "0.0.8")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/JorisE/evil-mu4e/archive/"
"c03a0e11afda3092eb1461be09fa6a61ebc0e4f6"
".tar.gz"))
(sha256
(base32
"1k3z5h04bqslrkq13paqf8pv9r0rf0zjl0zbb57ly043ds3nvxr2"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
("emacs-evil" ,emacs-evil)
("mu" ,mu)))
(home-page "https://github.com/JorisE/evil-mu4e")
(synopsis "Evil-based key bindings for mu4e")
(description
"Use keybindings for the mu4e mail reader in Emacs that make sense for
Evil users.")
(license license:gpl3+)))
;; Evil-mu4e is included in Evil Collection from 20180617.
(deprecated-package "emacs-evil-mu4e" emacs-evil-collection))
(define-public emacs-evil-multiedit
(let ((commit "ea3d9177b74ab0bc65e55df9cc0a0b42e4ef815d"))
@ -11292,3 +11252,34 @@ file.")
"@code{wgrep-helm} allows you to edit a @code{helm-grep-mode} buffer and
apply those changes to the file buffer.")
(license license:gpl3+))))
(define-public emacs-mu4e-conversation
(let ((commit "b60d6bd27d7220c3dd041ff2a090e29f2166a319"))
(package
(name "emacs-mu4e-conversation")
(version (git-version "20180615" "1" commit))
(source
(origin
(method url-fetch)
(uri (string-append
"https://gitlab.com/Ambrevar/mu4e-conversation/"
"repository/archive.tar.gz?ref="
commit))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0x8kmi0rmbaaxn5zicm1f9yb8ynxi8074hi2n0rvymlfpxbpn0ma"))))
(build-system emacs-build-system)
(propagated-inputs
`(("mu" ,mu)))
(home-page
"https://gitlab.com/Ambrevar/mu4e-conversation")
(synopsis
"Show a complete thread in a single buffer")
(description
"This package offers an alternate view to mu4e e-mail display. It
shows all e-mails of a thread in a single view, where each correspondant has
their own face. Threads can be displayed linearly (in which case e-mails are
displayed in chronological order) or as an Org document where the node tree
maps the thread tree.")
(license license:gpl3+))))

View File

@ -6,7 +6,7 @@
;;; Copyright © 2015, 2016, 2017 David Thompson <davet@gnu.org>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Julian Graham <joolean@gmail.com>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
@ -74,6 +74,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages sdl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
#:use-module (gnu packages xdisorg)
@ -1233,3 +1234,40 @@ related games such as Heretic and Hexen. It comes with a 3d preview mode and
a 2D editor view.")
(home-page "http://eureka-editor.sourceforge.net/")
(license license:gpl2+)))
(define-public guile-chickadee
(package
(name "guile-chickadee")
(version "0.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://files.dthompson.us/chickadee/"
"chickadee-" version ".tar.gz"))
(sha256
(base32
"10qx0ha5gsayybd186r1my7vc7rf5fbzp9jvmc4xg9a8wz8rqhah"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0")))
(propagated-inputs
`(("guile-opengl" ,guile-opengl)
("guile-sdl2" ,guile-sdl2)))
(inputs
`(("guile" ,guile-2.2)))
(native-inputs
`(("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(home-page "https://dthompson.us/projects/chickadee.html")
(synopsis "Game development toolkit for Guile Scheme with SDL2 and OpenGL")
(description "Chickadee is a game development toolkit for Guile Scheme
built on top of SDL2 and OpenGL. Chickadee aims to provide all the features
that parenthetically inclined game developers need to make 2D (and eventually
3D) games in Scheme, such as:
@enumerate
@item extensible, fixed-timestep game loop
@item OpenGL-based rendering engine
@item keyboard, mouse, controller input
@item REPL-driven development model
@end enumerate\n")
(license license:gpl3+)))

View File

@ -461,7 +461,7 @@ automata. The following features are available:
(define-public meandmyshadow
(package
(name "meandmyshadow")
(version "0.4")
(version "0.4.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/meandmyshadow/"
@ -469,7 +469,7 @@ automata. The following features are available:
"-src.tar.gz"))
(sha256
(base32
"1dpb7s32b2psj5w3nr5kqibib8nndi86mw8gxp4hmxwrfiisf86d"))))
"0wl5dc75qy001s6043cx0vr2l5y2qfv1cldqnwill9sfygqj9p95"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; there are no tests
@ -485,7 +485,7 @@ automata. The following features are available:
;; link with libX11, even though we're using the GL backend.
(substitute* "CMakeLists.txt"
(("\\$\\{X11_LIBRARIES\\}") "-lX11"))
)))))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@ -1616,23 +1616,20 @@ reference interpreter, using the Glk API.")
(define-public fizmo
(package
(name "fizmo")
(version "0.8.4")
(version "0.8.5")
(source (origin
(method url-fetch)
(uri (string-append "https://christoph-ender.de/fizmo/source/"
(uri (string-append "https://fizmo.spellbreaker.org/source/"
name "-" version ".tar.gz"))
(sha256
(base32
"1sd988db2302r7cbfcfghbmg8ck43c6hvnlnlpb0rqxb7pm9cwyy"))))
"1amyc4n41jf08kxmdgkk30bzzx54miaxa97w28f417qwn8lrl98w"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
(let ((libjpeg (assoc-ref %build-inputs "libjpeg"))
(ncurses (assoc-ref %build-inputs "ncurses")))
(list (string-append "jpeg_CFLAGS=-I" libjpeg "/include")
(string-append "jpeg_LIBS=-ljpeg")
(string-append "ncursesw_CFLAGS=-I" ncurses "/include")
(string-append "ncursesw_LIBS=-lncursesw")))))
(list (string-append "--with-jpeg-includedir=" libjpeg "/include")))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@ -1643,7 +1640,7 @@ reference interpreter, using the Glk API.")
("libxml2" ,libxml2)
("ncurses" ,ncurses)
("sdl2" ,sdl2)))
(home-page "https://christoph-ender.de/fizmo/")
(home-page "https://fizmo.spellbreaker.org/")
(synopsis "Z-machine interpreter")
(description
"Fizmo is a console-based Z-machine interpreter. It is used to play
@ -1679,7 +1676,7 @@ Protocol).")
(define-public extremetuxracer
(package
(name "extremetuxracer")
(version "0.7.4")
(version "0.7.5")
(source (origin
(method url-fetch)
(uri (string-append
@ -1687,15 +1684,15 @@ Protocol).")
version "/etr-" version ".tar.xz"))
(sha256
(base32
"0d2j4ybdjmimg67v2fndgahgq4fvgz3fpfb3a4l1ar75n6hy776s"))))
"1ly63316c07i0gyqqmyzsyvygsvygn0fpk3bnbg25fi6li99rlsg"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("glu" ,glu)
("sfml" ,sfml)))
(synopsis "High speed arctic racing game based on Tux Racer")
;; Snarfed straight from Debian
(synopsis "High-speed arctic racing game based on Tux Racer")
;; Snarfed straight from Debian.
(description "Extreme Tux Racer, or etracer as it is called for short, is
a simple OpenGL racing game featuring Tux, the Linux mascot. The goal of the
game is to slide down a snow- and ice-covered mountain as quickly as possible,
@ -2411,19 +2408,21 @@ are only two levels to play with, but they are very addictive.")
(define-public pioneers
(package
(name "pioneers")
(version "15.4")
(version "15.5")
(source (origin
(method url-fetch)
(uri (string-append "http://downloads.sourceforge.net/pio/"
"pioneers-" version ".tar.gz"))
(sha256
(base32
"1p1d18hrfmqcnghip3shkzcs5qkz6j99jvkdkqfi7pqdvjc323cs"))))
"037gdiiw690jw3wd1s9lxmkqx0caxyk0b4drpm7i9p28gig43q9y"))))
(build-system gnu-build-system)
(inputs `(("gtk+" ,gtk+)
("librsvg" ,librsvg)
("avahi" ,avahi)))
(inputs `(("avahi" ,avahi)
("gtk+" ,gtk+)
("librsvg" ,librsvg)))
(native-inputs `(("intltool" ,intltool)
("itstool" ,itstool)
("libxml2" ,libxml2)
("pkg-config" ,pkg-config)))
(synopsis "Board game inspired by The Settlers of Catan")
(description "Pioneers is an emulation of the board game The Settlers of
@ -3252,6 +3251,74 @@ application that locks the keyboard and mouse and instead displays bright
colors, pictures, and sounds.")
(license license:gpl3+)))
(define-public mrrescue
(package
(name "mrrescue")
(version "1.02e")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/SimonLarsen/mrrescue/releases/"
"download/" version "/" name version ".love"))
(file-name (string-append name "-" version ".love"))
(sha256
(base32
"0jwzbwkgp1l5ia6c7s760gmdirbsncp6nfqp7vqdqsfb63la9gl2"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
(script (string-append out "/bin/" ,name))
(data (string-append out "/share/" ,name))
(source (assoc-ref %build-inputs "source"))
(unzip (string-append (assoc-ref %build-inputs "unzip")
"/bin/unzip"))
(patch (string-append (assoc-ref %build-inputs "patch")
"/bin/patch"))
(bash (string-append (assoc-ref %build-inputs "bash")
"/bin/bash"))
(love (string-append (assoc-ref %build-inputs "love")
"/bin/love")))
(mkdir-p (dirname script))
(with-output-to-file script
(lambda ()
(format #t "#!~a~%" bash)
(format #t "exec -a ~a \"~a\" \"~a\"~%" ,name love data)))
(chmod script #o755)
;; The better way to package this game would be to install *only* the
;; script above, pointing to the unextracted .love file in the store.
;; However, mrrescue 1.02e needs to be patched to work with Love 11.
;; Instead of extracting the .love file, patching it, and re-zipping
;; it to the store, simply point the script to the extracted patched
;; data directory directly.
(mkdir-p data)
(with-directory-excursion data
(invoke unzip source)
(invoke patch "-p1" "-i"
(assoc-ref %build-inputs "love-11.patch")))
#t))))
(native-inputs
`(("unzip" ,unzip)
("patch" ,patch)
("love-11.patch" ,(search-patch "mrrescue-support-love-11.patch"))))
(inputs
`(("bash" ,bash)
("love" ,love)))
(home-page "http://tangramgames.dk/games/mrrescue")
(synopsis "Arcade-style fire fighting game")
(description
"Mr. Rescue is an arcade styled 2d action game centered around evacuating
civilians from burning buildings. The game features fast-paced fire
extinguishing action, intense boss battles, a catchy soundtrack, and lots of
throwing people around in pseudo-randomly generated buildings.")
(license (list license:zlib ; for source code
license:cc-by-sa3.0)))) ; for graphics and music assets
(define-public hyperrogue
(package
(name "hyperrogue")
@ -4475,7 +4542,7 @@ Tales of MajEyal offers engaging roguelike gameplay for the 21st century.")
(define-public quakespasm
(package
(name "quakespasm")
(version "0.93.0")
(version "0.93.1")
(source
(origin
(method url-fetch)
@ -4483,7 +4550,7 @@ Tales of MajEyal offers engaging roguelike gameplay for the 21st century.")
version ".tgz"))
(sha256
(base32
"0b2nz7w4za32pc34r62ql270z692qcjs2pm0i3svkxkvfammhdfq"))))
"1bimv18f6rzhyjz78yvw2vqr5n0kdqbcqmq7cb3m951xgsxfcgpd"))))
(arguments
`(#:tests? #f
#:make-flags '("CC=gcc"

View File

@ -6486,6 +6486,12 @@ like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
(substitute* '("Makefile.am")
(("\\$\\(DESTDIR\\)/usr/share")
"$(datadir)"))
#t))
(add-after 'unpack 'disable-configure-during-bootstrap
(lambda _
;; Do not run configure as part of autogen.sh because references
;; to /bin are not fixed yet.
(setenv "NOCONFIGURE" "y")
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
@ -6535,6 +6541,14 @@ simple and consistent.")
(base32
"1ya1cqvv8q847c0rpcg6apzky87q3h04y8jz5nmi52qk6kg8si0b"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-configure-during-bootstrap
(lambda _
(substitute* "autogen.sh"
(("^\"\\$srcdir/configure\".*") ""))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)))
@ -7273,7 +7287,7 @@ mp3, Ogg Vorbis and FLAC")
("libxtst" ,libxtst)
("dconf" ,dconf)
("libice" ,libice)))
(inputs `(("libsm", libsm)
(inputs `(("libsm" ,libsm)
("python-cheetah" ,python2-cheetah)))
(native-inputs `(("glib" ,glib "bin")
("pkg-config" ,pkg-config)

View File

@ -1702,3 +1702,92 @@ with the
@uref{https://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html,
GNU extensions} to the POSIX recommendations for command-line options.")
(license license:bsd-3))))
(define-public go-github-com-sirupsen-logrus
(package
(name "go-github-com-sirupsen-logrus")
(version "1.0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sirupsen/logrus.git")
(commit (string-append "v" version))))
(sha256
(base32
"0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz"))))
(build-system go-build-system)
(native-inputs
`(("go-golang-org-x-crypto-ssh-terminal"
,go-golang-org-x-crypto-ssh-terminal)
("go-github-com-stretchr-testify"
,go-github-com-stretchr-testify)
("go-golang-org-x-sys-unix"
,go-golang-org-x-sys-unix)))
(arguments
'(#:tests? #f ;FIXME missing dependencies
#:import-path "github.com/sirupsen/logrus"))
(home-page "https://github.com/sirupsen/logrus")
(synopsis "Structured, pluggable logging for Go")
(description "Logrus is a structured logger for Go, completely API
compatible with the standard library logger.")
(license license:expat)))
(define-public go-github-com-kardianos-osext
(let ((commit "ae77be60afb1dcacde03767a8c37337fad28ac14")
(revision "1"))
(package
(name "go-github-com-kardianos-osext")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kardianos/osext")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/kardianos/osext"
;; The tests are flaky:
;; <https://github.com/kardianos/osext/issues/21>
#:tests? #f))
(synopsis "Find the running executable")
(description "Osext provides a method for finding the current executable
file that is running. This can be used for upgrading the current executable or
finding resources located relative to the executable file.")
(home-page "https://github.com/kardianos/osext")
(license license:bsd-3))))
(define-public go-github-com-ayufan-golang-kardianos-service
(let ((commit "0c8eb6d8fff2e2fb884a7bfd23e183fb63c0eff3")
(revision "0"))
(package
(name "go-github-com-ayufan-golang-kardianos-service")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/ayufan/golang-kardianos-service.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0x0cn7l5gda2khsfypix7adxd5yqighzn04mxjw6hc4ayrh7his5"))))
(build-system go-build-system)
(native-inputs
`(("go-github-com-kardianos-osext"
,go-github-com-kardianos-osext)))
(arguments
'(#:tests? #f ;FIXME tests fail: Service is not running.
#:import-path "github.com/ayufan/golang-kardianos-service"))
(home-page "https://github.com/ayufan/golang-kardianos-service")
(synopsis "Go interface to a variety of service supervisors")
(description "This package provides @code{service}, a Go module that can
run programs as a service using a variety of supervisors, including systemd,
SysVinit, and more.")
(license license:zlib))))

View File

@ -3625,7 +3625,7 @@ complex transformations and code analysis tools.")
`(("java-aqute-bndlib" ,java-aqute-bndlib-bootstrap)
("java-aqute-libg" ,java-aqute-libg-bootstrap)
,@(delete `("java-aqute-bndlib" ,java-aqute-bndlib)
(delete `("java-aqute-libg", java-aqute-libg)
(delete `("java-aqute-libg" ,java-aqute-libg)
(package-inputs java-asm)))))))
(define-public java-cglib

View File

@ -1405,7 +1405,7 @@ logging support.")))
;; tests
("java-plexus-cipher" ,java-plexus-cipher)
("java-plexus-sec-dispatcher" ,java-plexus-sec-dispatcher)
("java-jsr250", java-jsr250)
("java-jsr250" ,java-jsr250)
("java-cdi-api" ,java-cdi-api)
("java-junit" ,java-junit)
("maven-resolver-impl" ,maven-resolver-impl)
@ -1463,7 +1463,7 @@ layer for plugins that need to keep Maven2 compatibility.")))
("maven-settings" ,maven-settings)
("maven-settings-builder" ,maven-settings-builder)
("maven-plugin-api" ,maven-plugin-api)
("maven-repository-metadata", maven-repository-metadata)
("maven-repository-metadata" ,maven-repository-metadata)
("maven-shared-utils" ,maven-shared-utils)
("maven-resolver-api" ,maven-resolver-api)
("maven-resolver-spi" ,maven-resolver-spi)

View File

@ -22,10 +22,12 @@
(define-module (gnu packages monitoring)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (gnu packages admin)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
@ -295,3 +297,27 @@ WSGI and the node exporter textfile collector.")
(define-public python2-prometheus-client
(package-with-python2 python-prometheus-client))
(define-public go-github-com-prometheus-node-exporter
(let ((commit "55c32fcf02492fe4946f7ab563547cc5df7fc61e")
(revision "0"))
(package
(name "go-github-com-prometheus-node-exporter")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/prometheus/node_exporter.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"041b87a0sid23c29swqmi5hw6cxbxvkfj3415jg73cm2pi8wh5s6"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/prometheus/node_exporter"))
(synopsis "Prometheus exporter for hardware and OS metrics")
(description "Prometheus exporter for metrics exposed by *NIX kernels,
written in Go with pluggable metric collectors.")
(home-page "https://github.com/prometheus/node_exporter")
(license license:asl2.0))))

View File

@ -1776,7 +1776,7 @@ file for more details.")
`(("zlib" ,zlib)
("crypto++" ,crypto++)
("libpng" ,libpng)
("wxwidgets-gtk2", wxwidgets-gtk2)))
("wxwidgets-gtk2" ,wxwidgets-gtk2)))
(home-page "http://amule.org/")
(synopsis "Peer-to-peer client for the eD2K and Kademlia networks")
(description

View File

@ -135,7 +135,8 @@
(patches
(search-patches
"ocaml-CVE-2015-8869.patch"
"ocaml-Add-a-.file-directive.patch"))))
"ocaml-Add-a-.file-directive.patch"
"ocaml-enable-ocamldoc-reproducibility.patch"))))
(build-system gnu-build-system)
(native-search-paths
(list (search-path-specification

View File

@ -1,30 +0,0 @@
Fixes CVE-2014-9130
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-9130
Upstream source:
https://bitbucket.org/xi/libyaml/commits/2b9156756423e967cfd09a61d125d883fca6f4f2
# HG changeset patch
# User Kirill Simonov <xi@resolvent.net>
# Date 1417197312 21600
# Node ID 2b9156756423e967cfd09a61d125d883fca6f4f2
# Parent 053f53a381ff6adbbc93a31ab7fdee06a16c8a33
Removed invalid simple key assertion (thank to Jonathan Gray).
diff --git a/src/scanner.c b/src/scanner.c
--- a/src/scanner.c
+++ b/src/scanner.c
@@ -1106,13 +1106,6 @@
&& parser->indent == (ptrdiff_t)parser->mark.column);
/*
- * A simple key is required only when it is the first token in the current
- * line. Therefore it is always allowed. But we add a check anyway.
- */
-
- assert(parser->simple_key_allowed || !required); /* Impossible. */
-
- /*
* If the current position may start a simple key, save it.
*/

View File

@ -0,0 +1,213 @@
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Tue, 19 Jun 2018 04:37:46 +0200
Subject: gnu: mrrescue: Support Love 11.
The patch below was copied verbatim from an as-yet-unmerged PR[0] to
make Mr. Rescue run on a newer version of the Löve engine.
[0]: https://github.com/SimonLarsen/mrrescue/pull/17
---
From ab23031e0c2faecb77fde1be8a41d6f8ea4e6eda Mon Sep 17 00:00:00 2001
From: Mystro256 <alexjnewt@hotmail.com>
Date: Sun, 10 Jun 2018 21:19:23 -0400
Subject: [PATCH] Love 11 support
---
conf.lua | 2 +-
config.lua | 6 +++---
highscore_entry.lua | 4 ++--
highscore_list.lua | 4 ++--
ingame.lua | 6 +++---
ingame_menu.lua | 4 ++--
joystick.lua | 4 ++--
main.lua | 2 +-
resources.lua | 4 ++--
util.lua | 4 ++--
10 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/conf.lua b/conf.lua
index 8776da4..f00b216 100644
--- a/conf.lua
+++ b/conf.lua
@@ -1,6 +1,6 @@
function love.conf(t)
t.identity = "mrrescue"
- t.version = "0.10.0"
+ t.version = "11.0"
t.console = false
t.accelerometerjoystick = true
t.gammacorrect = false
diff --git a/config.lua b/config.lua
index 63eeb04..71c2b66 100644
--- a/config.lua
+++ b/config.lua
@@ -38,7 +38,7 @@ function loadConfig()
config[i] = v
end
end
- if love.filesystem.exists("settings") then
+ if love.filesystem.getInfo("settings")~= nil then
local data = love.filesystem.read("settings")
local file = TSerial.unpack(data)
for i,v in pairs(file) do
@@ -52,7 +52,7 @@ function loadConfig()
end
function loadHighscores()
- if love.filesystem.exists("highscores") then
+ if love.filesystem.getInfo("highscores")~= nil then
local data = love.filesystem.read("highscores")
local file = TSerial.unpack(data)
for i=1,3 do
@@ -64,7 +64,7 @@ function loadHighscores()
end
function loadStats()
- if love.filesystem.exists("stats") then
+ if love.filesystem.getInfo("stats")~= nil then
local data = love.filesystem.read("stats")
stats = TSerial.unpack(data)
end
diff --git a/highscore_entry.lua b/highscore_entry.lua
index 2f763af..3b3bb73 100644
--- a/highscore_entry.lua
+++ b/highscore_entry.lua
@@ -45,9 +45,9 @@ function highscore_entry.draw()
for ix = 1,10 do
if highscore_entry.selection == char then
lg.rectangle("fill", 33+ix*16, 66+iy*16, 14, 14)
- lg.setColor(0,0,0,255)
+ lg.setColor(0,0,0,1)
lg.print(KEYBOARD:sub(char,char), 37+ix*16, 70+iy*16)
- lg.setColor(255,255,255,255)
+ lg.setColor(1,1,1,1)
else
lg.print(KEYBOARD:sub(char,char), 37+ix*16, 70+iy*16)
end
diff --git a/highscore_list.lua b/highscore_list.lua
index 6a17973..b66d0e2 100644
--- a/highscore_list.lua
+++ b/highscore_list.lua
@@ -31,10 +31,10 @@ function highscore_list.draw()
if scores[i] then
if highscore_list.level == highscore_list.hllevel
and highscore_list.hlpos == i then
- lg.setColor(25,118,115,255)
+ lg.setColor(25/255,118/255,115/255,1)
lg.print(scores[i].name, 48, 14+i*16)
lg.print(scores[i].score, 105, 14+i*16)
- lg.setColor(255,255,255,255)
+ lg.setColor(1,1,1,1)
else
lg.print(scores[i].name, 48, 14+i*16)
lg.print(scores[i].score, 105, 14+i*16)
diff --git a/ingame.lua b/ingame.lua
index 52004f1..f5c6f7c 100644
--- a/ingame.lua
+++ b/ingame.lua
@@ -189,16 +189,16 @@ function ingame.draw()
lg.pop()
if map.type == MT_NORMAL then
- lg.setBlendMode("multiply")
+ lg.setBlendMode("multiply", "premultiplied")
lg.draw(canvas, 0,0)
lg.setBlendMode("alpha")
end
-- Draw red screen if hit
if player.heat > 0 then
- lg.setColor(255,255,255,cap(player.heat*255, 16, 255))
+ lg.setColor(1,1,1,cap(player.heat*255, 16, 255)/255)
lg.draw(img.red_screen, quad.red_screen, 0,0)
- lg.setColor(255,255,255,255)
+ lg.setColor(1,1,1,1)
end
-- Draw hud
diff --git a/ingame_menu.lua b/ingame_menu.lua
index 9fcf768..82a8459 100644
--- a/ingame_menu.lua
+++ b/ingame_menu.lua
@@ -18,10 +18,10 @@ function ingame_menu.draw()
lg.pop()
lg.scale(config.scale)
- lg.setColor(0,0,0,238)
+ lg.setColor(0,0,0,238/255)
lg.rectangle("fill", 0, 0, WIDTH, HEIGHT)
- lg.setColor(255,255,255,255)
+ lg.setColor(1,1,1,1)
lg.printf("PAUSED", 0, 46, WIDTH, "center")
lg.print("RESUME", 103, 92)
lg.print("QUIT", 103, 106)
diff --git a/joystick.lua b/joystick.lua
index 50ccadb..72d545e 100644
--- a/joystick.lua
+++ b/joystick.lua
@@ -22,11 +22,11 @@ function joystick.draw()
lg.printf("SET JOYSTICK", 0, 39, WIDTH, "center")
for i=1,4 do
if joystick.waiting == true and joystick.selection == i then
- lg.setColor(195,52,41)
+ lg.setColor(195/255,52/255,41/255)
end
lg.print(string.upper(joykeynames[i]), 65, 53+i*13)
lg.print(config.joykeys[joykeynames[i]], 165, 53+i*13)
- lg.setColor(255,255,255)
+ lg.setColor(1,1,1)
end
lg.print("DEFAULT", 65, 118)
lg.print("BACK", 65, 131)
diff --git a/main.lua b/main.lua
index 9433e42..56096fa 100644
--- a/main.lua
+++ b/main.lua
@@ -273,7 +273,7 @@ function love.releaseerrhand(msg)
local font = love.graphics.newFont(14)
love.graphics.setFont(font)
- love.graphics.setColor(255, 255, 255, 255)
+ love.graphics.setColor(1, 1, 1, 1)
love.graphics.clear()
diff --git a/resources.lua b/resources.lua
index e5aa70d..1bab520 100644
--- a/resources.lua
+++ b/resources.lua
@@ -7,7 +7,7 @@ local snd = {} -- sound Sources
local IMAGE_FILES = {
"splash", "tangram", "lovesplashpixel", "howto",
- "tiles", "door", "boldfont", "captain_dialog", "captain_dialog_sad",
+ "tiles", "door", "captain_dialog", "captain_dialog_sad",
"boss_health", "highscore_panes", "exclamation", "stats_screen",
"awards", "hud", "hud2", "hud_people", "item_slots", "water_bar",
"reserve_bar", "overloaded_bar", "temperature_bar", "temperature_bar_blink",
@@ -147,7 +147,7 @@ function loadResources()
img.stream:setWrap("repeat", "clamp")
-- Create fonts
- font.bold = lg.newImageFont(img.boldfont, " ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,!'-:*@<>+/_$&?", 2)
+ font.bold = lg.newImageFont("data/boldfont.png", " ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,!'-:*@<>+/_$&?", 2)
lg.setFont(font.bold)
-- Create quads
diff --git a/util.lua b/util.lua
index b9976da..656600a 100644
--- a/util.lua
+++ b/util.lua
@@ -105,9 +105,9 @@ end
function drawBox(x,y,w,h)
- lg.setColor(30,23,18)
+ lg.setColor(30/255,23/255,18/255)
lg.rectangle("fill",x+1,y+1,w-2,h-2)
- lg.setColor(255,255,255)
+ lg.setColor(1,1,1)
-- Draw sides
lg.draw(img.menu_box, quad.box_left, x, y+1, 0, 1, (h-2))
lg.draw(img.menu_box, quad.box_left, x+w, y+1, 0, -1, (h-2))

View File

@ -0,0 +1,149 @@
From a87c3f20e846c00e53d695497dba7038edbd12f0 Mon Sep 17 00:00:00 2001
From: Valentin Lorentz <progval@progval.net>
Date: Thu, 13 Aug 2015 11:59:04 +0200
Subject: [PATCH] Enable ocamldoc to build reproducible manpages
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=794586
Signed-off-by: Stephane Glondu <steph@glondu.net>
---
ocamldoc/odoc_man.ml | 15 +++++----------
ocamldoc/odoc_misc.ml | 12 ++++++++++--
ocamldoc/odoc_misc.mli | 7 ++++++-
3 files changed, 21 insertions(+), 13 deletions(-)
diff --git a/ocamldoc/odoc_man.ml b/ocamldoc/odoc_man.ml
index 615c5e172..3c85aa32a 100644
--- a/ocamldoc/odoc_man.ml
+++ b/ocamldoc/odoc_man.ml
@@ -864,14 +864,13 @@ class man =
(** Generate the man page for the given class.*)
method generate_for_class cl =
Odoc_info.reset_type_names () ;
- let date = Unix.time () in
let file = self#file_name cl.cl_name in
try
let chanout = self#open_out file in
let b = new_buf () in
bs b (".TH \""^cl.cl_name^"\" ");
bs b !man_section ;
- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" ");
+ bs b (" source: "^Odoc_misc.current_date^" ");
bs b "OCamldoc ";
bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n");
@@ -923,14 +922,13 @@ class man =
(** Generate the man page for the given class type.*)
method generate_for_class_type ct =
Odoc_info.reset_type_names () ;
- let date = Unix.time () in
let file = self#file_name ct.clt_name in
try
let chanout = self#open_out file in
let b = new_buf () in
bs b (".TH \""^ct.clt_name^"\" ");
bs b !man_section ;
- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" ");
+ bs b (" source: "^Odoc_misc.current_date^" ");
bs b "OCamldoc ";
bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n");
@@ -1016,14 +1014,13 @@ class man =
(** Generate the man file for the given module type.
@raise Failure if an error occurs.*)
method generate_for_module_type mt =
- let date = Unix.time () in
let file = self#file_name mt.mt_name in
try
let chanout = self#open_out file in
let b = new_buf () in
bs b (".TH \""^mt.mt_name^"\" ");
bs b !man_section ;
- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" ");
+ bs b (" source: "^Odoc_misc.current_date^" ");
bs b "OCamldoc ";
bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n");
@@ -1099,14 +1096,13 @@ class man =
(** Generate the man file for the given module.
@raise Failure if an error occurs.*)
method generate_for_module m =
- let date = Unix.time () in
let file = self#file_name m.m_name in
try
let chanout = self#open_out file in
let b = new_buf () in
bs b (".TH \""^m.m_name^"\" ");
bs b !man_section ;
- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" ");
+ bs b (" source: "^Odoc_misc.current_date^" ");
bs b "OCamldoc ";
bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n");
@@ -1206,14 +1202,13 @@ class man =
| Res_const (_,f) -> f.vc_name
)
in
- let date = Unix.time () in
let file = self#file_name name in
try
let chanout = self#open_out file in
let b = new_buf () in
bs b (".TH \""^name^"\" ");
bs b !man_section ;
- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" ");
+ bs b (" source: "^Odoc_misc.current_date^" ");
bs b "OCamldoc ";
bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n");
bs b ".SH NAME\n";
diff --git a/ocamldoc/odoc_misc.ml b/ocamldoc/odoc_misc.ml
index 4c74476da..456225f62 100644
--- a/ocamldoc/odoc_misc.ml
+++ b/ocamldoc/odoc_misc.ml
@@ -223,9 +223,9 @@ let apply_opt f v_opt =
None -> None
| Some v -> Some (f v)
-let string_of_date ?(hour=true) d =
+let string_of_date ?(absolute=false) ?(hour=true) d =
let add_0 s = if String.length s < 2 then "0"^s else s in
- let t = Unix.localtime d in
+ let t = (if absolute then Unix.gmtime else Unix.localtime) d in
(string_of_int (t.Unix.tm_year + 1900))^"-"^
(add_0 (string_of_int (t.Unix.tm_mon + 1)))^"-"^
(add_0 (string_of_int t.Unix.tm_mday))^
@@ -238,6 +238,14 @@ let string_of_date ?(hour=true) d =
""
)
+let current_date =
+ let time =
+ try
+ float_of_string (Sys.getenv "SOURCE_DATE_EPOCH")
+ with
+ Not_found -> Unix.time ()
+ in string_of_date ~absolute: true ~hour: false time
+
let rec text_list_concat sep l =
match l with
diff --git a/ocamldoc/odoc_misc.mli b/ocamldoc/odoc_misc.mli
index dd5a7fcb9..38ff0612b 100644
--- a/ocamldoc/odoc_misc.mli
+++ b/ocamldoc/odoc_misc.mli
@@ -62,7 +62,12 @@ val apply_opt : ('a -> 'b) -> 'a option -> 'b option
(** Return a string representing a date given as a number of seconds
since 1970. The hour is optionnaly displayed. *)
-val string_of_date : ?hour:bool -> float -> string
+val string_of_date : ?absolute:bool -> ?hour:bool -> float -> string
+
+(* Value returned by string_of_date for current time.
+ * Uses environment variable SOURCE_DATE_EPOCH if set; falls back to
+ * current timestamp otherwise. *)
+val current_date : string
(** Return the first sentence (until the first dot) of a text.
Don't stop in the middle of [Code], [Verbatim], [List], [Lnum],
--
2.17.1

View File

@ -0,0 +1,25 @@
https://sources.debian.org/data/main/x/x265/2.8-3/debian/patches/0003-Fix-build-error-on-on-ppc64le.patch
This patch also fixes building on armhf-linux and aarch64-linux
From: Jayashree <jayashree.c@multicorewareinc.com>
Date: Fri, 25 May 2018 10:26:05 +0530
Subject: Fix build error on on ppc64le
---
source/common/param.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/common/param.cpp b/source/common/param.cpp
index 31bcbc7..4a6d0c8 100644
--- a/source/common/param.cpp
+++ b/source/common/param.cpp
@@ -633,7 +633,7 @@ int x265_param_parse(x265_param* p, const char* name, const char* value)
if (bValueWasNull)
p->cpuid = atobool(value);
else
- p->cpuid = parseCpuName(value, bError);
+ p->cpuid = parseCpuName(value, bError, false);
#endif
}
OPT("fps")

View File

@ -6,6 +6,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -503,7 +504,16 @@ sound and device input (keyboards, joysticks, mice, etc.).")
(string-append "--with-libsdl2-ttf-prefix="
(assoc-ref %build-inputs "sdl2-ttf"))
(string-append "--with-libsdl2-mixer-prefix="
(assoc-ref %build-inputs "sdl2-mixer")))))
(assoc-ref %build-inputs "sdl2-mixer")))
#:phases
(modify-phases %standard-phases
(add-after 'configure 'patch-makefile
(lambda _
;; Install compiled Guile files in the expected place.
(substitute* '("Makefile")
(("^godir = .*$")
"godir = $(moddir)\n"))
#t)))))
(native-inputs
`(("guile" ,guile-2.2)
("pkg-config" ,pkg-config)))

View File

@ -532,14 +532,14 @@ nonlinear mixed-effects models.")
(define-public r-mgcv
(package
(name "r-mgcv")
(version "1.8-23")
(version "1.8-24")
(source
(origin
(method url-fetch)
(uri (cran-uri "mgcv" version))
(sha256
(base32
"1lsrhf1yzn25pfn3f5x8yxjqnfryim4jx3iqd7ah8aalh5asqwbp"))))
"15b76m1f0hz8dbmj9shqvslihdx5b7c48vck9grj5xs1z2y45r9c"))))
(build-system r-build-system)
(propagated-inputs
`(("r-matrix" ,r-matrix)

View File

@ -490,34 +490,6 @@ address of the default LAN gateway.")
(home-page "https://github.com/jackpal/gateway")
(license bsd-3))))
(define-public go-github-com-kardianos-osext
(let ((commit "ae77be60afb1dcacde03767a8c37337fad28ac14")
(revision "1"))
(package
(name "go-github-com-kardianos-osext")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kardianos/osext")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/kardianos/osext"
;; The tests are flaky:
;; <https://github.com/kardianos/osext/issues/21>
#:tests? #f))
(synopsis "Find the running executable")
(description "Osext provides a method for finding the current executable
file that is running. This can be used for upgrading the current executable or
finding resources located relative to the executable file.")
(home-page "https://github.com/kardianos/osext")
(license bsd-3))))
(define-public go-github-com-lib-pq
(let ((commit "83612a56d3dd153a94a629cd64925371c9adad78")
(revision "1"))

View File

@ -1999,7 +1999,7 @@ directory full of HOWTOs.")
(define-public git-annex
(package
(name "git-annex")
(version "6.20170818")
(version "6.20180529")
(source
(origin
(method url-fetch)
@ -2007,7 +2007,7 @@ directory full of HOWTOs.")
"git-annex/git-annex-" version ".tar.gz"))
(sha256
(base32
"0ybxixbqvy4rx6mq9s02rh349rbr04hb17z4bfayin0qwa5kzpvx"))))
"1rx0m4yrl3gl2ca8rbbv74fdlg4s2jnddzljhph7271a7bpyxsx5"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags
@ -2101,6 +2101,7 @@ directory full of HOWTOs.")
("ghc-split" ,ghc-split)
("ghc-stm" ,ghc-stm)
("ghc-stm-chans" ,ghc-stm-chans)
("ghc-tagsoup" ,ghc-tagsoup)
("ghc-text" ,ghc-text)
("ghc-unix-compat" ,ghc-unix-compat)
("ghc-unordered-containers" ,ghc-unordered-containers)

View File

@ -44,6 +44,7 @@
(define-module (gnu packages video)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
@ -393,6 +394,7 @@ and creating Matroska files from other media files (@code{mkvmerge}).")
(sha256
(base32
"0qx8mavwdzdpkkby7n29i9av7zsnklavacwfz537mf62q2pzjnbf"))
(patches (search-patches "x265-fix-ppc64le-build.patch"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "source/compat/getopt")
@ -401,7 +403,9 @@ and creating Matroska files from other media files (@code{mkvmerge}).")
(arguments
`(#:tests? #f ; tests are skipped if cpu-optimized code isn't built
;; Currently the source code doesn't check for aarch64.
,@(if (string-prefix? "aarch64" (or (%current-target-system) (%current-system)))
,@(if (any (cute string-prefix? <> (or (%current-system)
(%current-target-system)))
'("armhf" "aarch64"))
'(#:configure-flags '("-DENABLE_PIC=TRUE"))
'())
#:phases
@ -1218,7 +1222,7 @@ access to mpv's powerful playback capabilities.")
(define-public youtube-dl
(package
(name "youtube-dl")
(version "2018.05.09")
(version "2018.06.19")
(source (origin
(method url-fetch)
(uri (string-append "https://yt-dl.org/downloads/"
@ -1226,7 +1230,7 @@ access to mpv's powerful playback capabilities.")
version ".tar.gz"))
(sha256
(base32
"0sl4bi2jls3417rd62awbqdq1b6wskkjbfwpnyw4a61qarfxid1d"))))
"0ys2mc84r7mjpn7rykb57sn3ii1kp3divjdn2ivwqknj8jrzg3z6"))))
(build-system python-build-system)
(arguments
;; The problem here is that the directory for the man page and completion

View File

@ -1025,17 +1025,16 @@ hash/signatures.")
(define-public libyaml
(package
(name "libyaml")
(version "0.1.6")
(version "0.1.7")
(source
(origin
(method url-fetch)
(uri (string-append
"http://pyyaml.org/download/libyaml/yaml-"
version ".tar.gz"))
(patches (search-patches "libyaml-CVE-2014-9130.patch"))
(sha256
(base32
"0j9731s5zjb8mjx7wzf6vh7bsqi38ay564x6s9nri2nh9cdrg9kx"))))
"0a87931cx5m14a1x8rbjix3nz7agrcgndf4h392vm62a4rby9240"))))
(build-system gnu-build-system)
(home-page "http://pyyaml.org/wiki/LibYAML")
(synopsis "YAML 1.1 parser and emitter written in C")
@ -3090,16 +3089,19 @@ exists it is used instead.")
(define-public perl-lwp-protocol-https
(package
(name "perl-lwp-protocol-https")
(version "6.06")
(version "6.07")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MS/MSCHILLI/"
(uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/"
"LWP-Protocol-https-" version ".tar.gz"))
(sha256
(base32
"1vxdjqj4bwq56m9h1bqqwkk3c6jr76f2zqzvwa26yjng3p686v5q"))))
"1rxrpwylfw1afah0nk96kgkwjbl2p1a7lwx50iipg8c4rx3cjb2j"))))
(build-system perl-build-system)
(native-inputs
;; For tests.
`(("perl-test-requiresinternet" ,perl-test-requiresinternet)))
(propagated-inputs
`(("perl-io-socket-ssl" ,perl-io-socket-ssl)
("perl-libwww" ,perl-libwww)
@ -3800,13 +3802,13 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
(define-public r-httpuv
(package
(name "r-httpuv")
(version "1.4.3")
(version "1.4.4.1")
(source (origin
(method url-fetch)
(uri (cran-uri "httpuv" version))
(sha256
(base32
"15ghxcyg9h0za3qy077fnn3izbpihskvaqwsppm2s43a771imsf6"))))
"12kwq10xa8glrip7rai9xb4hnpysng00g2l0rw7swfzq5lk4z966"))))
(build-system r-build-system)
(native-inputs `(("r-rcpp" ,r-rcpp)))
(propagated-inputs

View File

@ -103,7 +103,7 @@ nested include statements).")
(define-public bspwm
(package
(name "bspwm")
(version "0.9.4")
(version "0.9.5")
(source
(origin
(file-name (string-append name "-" version ".tar.gz"))
@ -113,7 +113,7 @@ nested include statements).")
version ".tar.gz"))
(sha256
(base32
"0yjr0vzbj3ar8qfr6gvpvjd82ay8iy1sg2fkw2swghlqiy6ix4kw"))))
"10pph8wxqysgk7b2h0svs0nwacn1a4y44jnzzry32pd1ysx92d97"))))
(build-system gnu-build-system)
(inputs
`(("libxcb" ,libxcb)
@ -123,10 +123,13 @@ nested include statements).")
("xcb-util-keysyms" ,xcb-util-keysyms)
("xcb-util-wm" ,xcb-util-wm)))
(arguments
'(#:phases (modify-phases %standard-phases (delete 'configure))
#:tests? #f ; no check target
#:make-flags (list "CC=gcc"
(string-append "PREFIX=" %output))))
'(#:phases
(modify-phases %standard-phases
(delete 'configure)) ; no configure script
#:tests? #f ; no check target
#:make-flags
(list "CC=gcc"
(string-append "PREFIX=" %output))))
(home-page "https://github.com/baskerville/bspwm")
(synopsis "Tiling window manager based on binary space partitioning")
(description "bspwm is a tiling window manager that represents windows as
@ -988,7 +991,7 @@ project derived from the original Calm Window Manager.")
("glib" ,glib)
("glibmm" ,glibmm)))
(native-inputs
`(("pkg-config", pkg-config)))
`(("pkg-config" ,pkg-config)))
(arguments
`(#:configure-flags (list
(string-append "--prefix=" %output)

View File

@ -331,13 +331,20 @@ containing the given entries."
(service-type (name 'system)
(extensions '())
(compose identity)
(extend system-derivation)))
(extend system-derivation)
(description
"Build the operating system top-level directory, which in
turn refers to everything the operating system needs: its kernel, initrd,
system profile, boot script, and so on.")))
(define (compute-boot-script _ mexps)
(mlet %store-monad ((gexps (sequence %store-monad mexps)))
(gexp->file "boot"
;; Clean up and activate the system, then spawn shepherd.
#~(begin #$@gexps))))
(define (compute-boot-script _ gexps)
;; Reverse GEXPS so that extensions appear in the boot script in the right
;; order. That is, user extensions would come first, and extensions added
;; by 'essential-services' (e.g., running shepherd) are guaranteed to come
;; last.
(gexp->file "boot"
;; Clean up and activate the system, then spawn shepherd.
#~(begin #$@(reverse gexps))))
(define (boot-script-entry mboot)
"Return, as a monadic value, an entry for the boot script in the system
@ -346,64 +353,74 @@ directory."
(return `(("boot" ,boot)))))
(define boot-service-type
;; The service of this type is extended by being passed gexps as monadic
;; values. It aggregates them in a single script, as a monadic value, which
;; becomes its 'parameters'. It is the only service that extends nothing.
;; The service of this type is extended by being passed gexps. It
;; aggregates them in a single script, as a monadic value, which becomes its
;; value.
(service-type (name 'boot)
(extensions
(list (service-extension system-service-type
boot-script-entry)))
(compose identity)
(extend compute-boot-script)))
(extend compute-boot-script)
(description
"Produce the operating system's boot script, which is spawned
by the initrd once the root file system is mounted.")))
(define %boot-service
;; The service that produces the boot script.
(service boot-service-type #t))
(define (cleanup-gexp _)
"Return as a monadic value a gexp to clean up /tmp and similar places upon
boot."
(with-monad %store-monad
(with-imported-modules '((guix build utils))
(return #~(begin
(use-modules (guix build utils))
"Return a gexp to clean up /tmp and similar places upon boot."
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
;; Clean out /tmp and /var/run.
;;
;; XXX This needs to happen before service activations, so it
;; has to be here, but this also implicitly assumes that /tmp
;; and /var/run are on the root partition.
(letrec-syntax ((fail-safe (syntax-rules ()
((_ exp rest ...)
(begin
(catch 'system-error
(lambda () exp)
(const #f))
(fail-safe rest ...)))
((_)
#t))))
;; Ignore I/O errors so the system can boot.
(fail-safe
;; Remove stale Shadow lock files as they would lead to
;; failures of 'useradd' & co.
(delete-file "/etc/group.lock")
(delete-file "/etc/passwd.lock")
(delete-file "/etc/.pwd.lock") ;from 'lckpwdf'
;; Clean out /tmp and /var/run.
;;
;; XXX This needs to happen before service activations, so it
;; has to be here, but this also implicitly assumes that /tmp
;; and /var/run are on the root partition.
(letrec-syntax ((fail-safe (syntax-rules ()
((_ exp rest ...)
(begin
(catch 'system-error
(lambda () exp)
(const #f))
(fail-safe rest ...)))
((_)
#t))))
;; Ignore I/O errors so the system can boot.
(fail-safe
;; Remove stale Shadow lock files as they would lead to
;; failures of 'useradd' & co.
(delete-file "/etc/group.lock")
(delete-file "/etc/passwd.lock")
(delete-file "/etc/.pwd.lock") ;from 'lckpwdf'
(delete-file-recursively "/tmp")
(delete-file-recursively "/var/run")
(mkdir "/tmp")
(chmod "/tmp" #o1777)
(mkdir "/var/run")
(chmod "/var/run" #o755)
(delete-file-recursively "/run/udev/watch.old"))))))))
;; Force file names to be decoded as UTF-8. See
;; <https://bugs.gnu.org/26353>.
(setenv "GUIX_LOCPATH"
#+(file-append glibc-utf8-locales "/lib/locale"))
(setlocale LC_CTYPE "en_US.utf8")
(delete-file-recursively "/tmp")
(delete-file-recursively "/var/run")
(mkdir "/tmp")
(chmod "/tmp" #o1777)
(mkdir "/var/run")
(chmod "/var/run" #o755)
(delete-file-recursively "/run/udev/watch.old"))))))
(define cleanup-service-type
;; Service that cleans things up in /tmp and similar.
(service-type (name 'cleanup)
(extensions
(list (service-extension boot-service-type
cleanup-gexp)))))
cleanup-gexp)))
(description
"Delete files from @file{/tmp}, @file{/var/run}, and other
temporary locations at boot time.")))
(define* (activation-service->script service)
"Return as a monadic value the activation script for SERVICE, a service of
@ -412,44 +429,39 @@ ACTIVATION-SCRIPT-TYPE."
(define (activation-script gexps)
"Return the system's activation script, which evaluates GEXPS."
(define (service-activations)
;; Return the activation scripts for SERVICES.
(mapm %store-monad
(cut gexp->file "activate-service" <>)
gexps))
(define actions
(map (cut scheme-file "activate-service" <>) gexps))
(mlet* %store-monad ((actions (service-activations)))
(gexp->file "activate"
(with-imported-modules (source-module-closure
'((gnu build activation)
(guix build utils)))
#~(begin
(use-modules (gnu build activation)
(guix build utils))
(scheme-file "activate"
(with-imported-modules (source-module-closure
'((gnu build activation)
(guix build utils)))
#~(begin
(use-modules (gnu build activation)
(guix build utils))
;; Make sure the user accounting database exists. If it
;; does not exist, 'setutxent' does not create it and
;; thus there is no accounting at all.
(close-port (open-file "/var/run/utmpx" "a0"))
;; Make sure the user accounting database exists. If it
;; does not exist, 'setutxent' does not create it and
;; thus there is no accounting at all.
(close-port (open-file "/var/run/utmpx" "a0"))
;; Same for 'wtmp', which is populated by mingetty et
;; al.
(mkdir-p "/var/log")
(close-port (open-file "/var/log/wtmp" "a0"))
;; Same for 'wtmp', which is populated by mingetty et
;; al.
(mkdir-p "/var/log")
(close-port (open-file "/var/log/wtmp" "a0"))
;; Set up /run/current-system. Among other things this
;; sets up locales, which the activation snippets
;; executed below may expect.
(activate-current-system)
;; Set up /run/current-system. Among other things this
;; sets up locales, which the activation snippets
;; executed below may expect.
(activate-current-system)
;; Run the services' activation snippets.
;; TODO: Use 'load-compiled'.
(for-each primitive-load '#$actions))))))
;; Run the services' activation snippets.
;; TODO: Use 'load-compiled'.
(for-each primitive-load '#$actions)))))
(define (gexps->activation-gexp gexps)
"Return a gexp that runs the activation script containing GEXPS."
(mlet %store-monad ((script (activation-script gexps)))
(return #~(primitive-load #$script))))
#~(primitive-load #$(activation-script gexps)))
(define (second-argument a b) b)
@ -459,7 +471,10 @@ ACTIVATION-SCRIPT-TYPE."
(list (service-extension boot-service-type
gexps->activation-gexp)))
(compose identity)
(extend second-argument)))
(extend second-argument)
(description
"Run @dfn{activation} code at boot time and upon
@command{guix system reconfigure} completion.")))
(define %activation-service
;; The activation service produces the activation script from the gexps it
@ -507,7 +522,10 @@ ACTIVATION-SCRIPT-TYPE."
(lambda (files)
#~(activate-special-files '#$files)))))
(compose concatenate)
(extend append)))
(extend append)
(description
"Add special files to the root file system---e.g.,
@file{/usr/bin/env}.")))
(define (extra-special-file file target)
"Use TARGET as the \"special file\" FILE. For example, TARGET might be
@ -541,7 +559,8 @@ directory."
#~(activate-etc #$etc))))
(service-extension system-service-type etc-entry)))
(compose concatenate)
(extend append)))
(extend append)
(description "Populate the @file{/etc} directory.")))
(define (etc-service files)
"Return a new service of ETC-SERVICE-TYPE that populates /etc with FILES.
@ -556,7 +575,10 @@ FILES must be a list of name/file-like object pairs."
#~(activate-setuid-programs
(list #$@programs))))))
(compose concatenate)
(extend append)))
(extend append)
(description
"Populate @file{/run/setuid-programs} with the specified
executables, making them setuid-root.")))
(define (packages->profile-entry packages)
"Return a system entry for the profile containing PACKAGES."
@ -573,7 +595,11 @@ FILES must be a list of name/file-like object pairs."
(list (service-extension system-service-type
packages->profile-entry)))
(compose concatenate)
(extend append)))
(extend append)
(description
"This is the @dfn{system profile}, available as
@file{/run/current-system/profile}. It contains packages that the sysadmin
wants to be globally available to all the system users.")))
(define (firmware->activation-gexp firmware)
"Return a gexp to make the packages listed in FIRMWARE loadable by the
@ -589,7 +615,11 @@ kernel."
(list (service-extension activation-service-type
firmware->activation-gexp)))
(compose concatenate)
(extend append)))
(extend append)
(description
"Make ``firmware'' files loadable by the operating system
kernel. Firmware may then be uploaded to some of the machine's devices, such
as Wifi cards.")))
(define (gc-roots->system-entry roots)
"Return an entry in the system's output containing symlinks to ROOTS."
@ -616,7 +646,10 @@ kernel."
(list (service-extension system-service-type
gc-roots->system-entry)))
(compose concatenate)
(extend append)))
(extend append)
(description
"Register garbage-collector roots---i.e., store items that
will not be reclaimed by the garbage collector.")))
;;;

View File

@ -6,7 +6,7 @@
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software: you can redistribute it and/or modify
;;; 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.

View File

@ -3,7 +3,7 @@
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software: you can redistribute it and/or modify
;;; 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.

View File

@ -22,7 +22,6 @@
#:use-module (guix sets)
#:use-module (guix gexp)
#:use-module (guix store)
#:use-module (guix monads)
#:use-module (guix records)
#:use-module (guix derivations) ;imported-modules, etc.
#:use-module (gnu services)
@ -66,26 +65,25 @@
(define (shepherd-boot-gexp services)
(with-monad %store-monad
(return #~(begin
;; Keep track of the booted system.
(false-if-exception (delete-file "/run/booted-system"))
(symlink (readlink "/run/current-system")
"/run/booted-system")
#~(begin
;; Keep track of the booted system.
(false-if-exception (delete-file "/run/booted-system"))
(symlink (readlink "/run/current-system")
"/run/booted-system")
;; Close any remaining open file descriptors to be on the safe
;; side. This must be the very last thing we do, because
;; Guile has internal FDs such as 'sleep_pipe' that need to be
;; alive.
(let loop ((fd 3))
(when (< fd 1024)
(false-if-exception (close-fdes fd))
(loop (+ 1 fd))))
;; Close any remaining open file descriptors to be on the safe
;; side. This must be the very last thing we do, because
;; Guile has internal FDs such as 'sleep_pipe' that need to be
;; alive.
(let loop ((fd 3))
(when (< fd 1024)
(false-if-exception (close-fdes fd))
(loop (+ 1 fd))))
;; Start shepherd.
(execl #$(file-append shepherd "/bin/shepherd")
"shepherd" "--config"
#$(shepherd-configuration-file services))))))
;; Start shepherd.
(execl #$(file-append shepherd "/bin/shepherd")
"shepherd" "--config"
#$(shepherd-configuration-file services))))
(define shepherd-root-service-type
(service-type

View File

@ -470,13 +470,13 @@ a container or that of a \"bare metal\" system."
(cons* (service system-service-type entries)
%boot-service
;; %SHEPHERD-ROOT-SERVICE must come first so that the gexp that
;; %SHEPHERD-ROOT-SERVICE must come last so that the gexp that
;; execs shepherd comes last in the boot script (XXX). Likewise,
;; the cleanup service must come last so that its gexp runs before
;; the cleanup service must come first so that its gexp runs before
;; activation code.
%shepherd-root-service
%activation-service
(service cleanup-service-type #f)
%activation-service
%shepherd-root-service
(pam-root-service (operating-system-pam-services os))
(account-service (append (operating-system-accounts os)
@ -819,7 +819,6 @@ we're running in the final root. When CONTAINER? is true, skip all
hardware-related operations as necessary when booting a Linux container."
(let* ((services (operating-system-services os #:container? container?))
(boot (fold-services services #:target-type boot-service-type)))
;; BOOT is the script as a monadic value.
(service-value boot)))
(define (operating-system-user-accounts os)

View File

@ -30,6 +30,8 @@
#:use-module (gnu services mcron)
#:use-module (gnu services shepherd)
#:use-module (gnu services networking)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages ocr)
#:use-module (gnu packages package-management)
@ -37,11 +39,13 @@
#:use-module (gnu packages tmux)
#:use-module (guix gexp)
#:use-module (guix store)
#:use-module (guix monads)
#:use-module (guix packages)
#:use-module (srfi srfi-1)
#:export (run-basic-test
%test-basic-os
%test-halt
%test-cleanup
%test-mcron
%test-nss-mdns))
@ -471,6 +475,72 @@ in a loop. See <http://bugs.gnu.org/26931>.")
(guix combinators)))))
(run-halt-test (virtual-machine os))))))
;;;
;;; Cleanup of /tmp, /var/run, etc.
;;;
(define %cleanup-os
(simple-operating-system
(simple-service 'dirty-things
boot-service-type
(let ((script (plain-file
"create-utf8-file.sh"
(string-append
"echo $0: dirtying /tmp...\n"
"set -e; set -x\n"
"touch /witness\n"
"exec touch /tmp/λαμβδα"))))
(with-imported-modules '((guix build utils))
#~(begin
(setenv "PATH"
#$(file-append coreutils "/bin"))
(invoke #$(file-append bash "/bin/sh")
#$script)))))))
(define (run-cleanup-test name)
(define os
(marionette-operating-system %cleanup-os
#:imported-modules '((gnu services herd)
(guix combinators))))
(define test
(with-imported-modules '((gnu build marionette))
#~(begin
(use-modules (gnu build marionette)
(srfi srfi-64)
(ice-9 match))
(define marionette
(make-marionette (list #$(virtual-machine os))))
(mkdir #$output)
(chdir #$output)
(test-begin "cleanup")
(test-assert "dirty service worked"
(marionette-eval '(file-exists? "/witness") marionette))
(test-equal "/tmp cleaned up"
'("." "..")
(marionette-eval '(begin
(use-modules (ice-9 ftw))
(scandir "/tmp"))
marionette))
(test-end)
(exit (= (test-runner-fail-count (test-runner-current)) 0)))))
(gexp->derivation "cleanup" test))
(define %test-cleanup
;; See <https://bugs.gnu.org/26353>.
(system-test
(name "cleanup")
(description "Make sure the 'cleanup' service can remove files with
non-ASCII names from /tmp.")
(value (run-cleanup-test name))))
;;;
;;; Mcron.

View File

@ -551,10 +551,26 @@ list of services."
;; TRANSLATORS: Please preserve the two-space indentation.
(format #t (G_ " label: ~a~%") label)
(format #t (G_ " bootloader: ~a~%") bootloader-name)
(format #t (G_ " root device: ~a~%")
(if (uuid? root-device)
(uuid->string root-device)
root-device))
;; TRANSLATORS: The '~[', '~;', and '~]' sequences in this string must
;; be preserved. They denote conditionals, such that the result will
;; look like:
;; root device: UUID: 12345-678
;; or:
;; root device: label: "my-root"
;; or just:
;; root device: /dev/sda3
(format #t (G_ " root device: ~[UUID: ~a~;label: ~s~;~a~]~%")
(cond ((uuid? root-device) 0)
((file-system-label? root-device) 1)
(else 2))
(cond ((uuid? root-device)
(uuid->string root-device))
((file-system-label? root-device)
(file-system-label->string root-device))
(else
root-device)))
(format #t (G_ " kernel: ~a~%") kernel))))
(define* (list-generations pattern #:optional (profile %system-profile))