Merge branch 'master' into core-updates
Conflicts: etc/news.scm gnu/local.mk gnu/packages/bootloaders.scm gnu/packages/linphone.scm gnu/packages/linux.scm gnu/packages/tls.scm gnu/system.scm
This commit is contained in:
		
						commit
						030f6f489f
					
				
					 69 changed files with 3399 additions and 504 deletions
				
			
		| 
						 | 
					@ -142,7 +142,7 @@ as well as images, OS examples, and translations."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          (for-each (lambda (texi)
 | 
					          (for-each (lambda (texi)
 | 
				
			||||||
                      (install-file texi #$output))
 | 
					                      (install-file texi #$output))
 | 
				
			||||||
                    (append (find-files #$documentation "\\.(texi|scm)$")
 | 
					                    (append (find-files #$documentation "\\.(texi|scm|json)$")
 | 
				
			||||||
                            (find-files #$(translated-texi-manuals source)
 | 
					                            (find-files #$(translated-texi-manuals source)
 | 
				
			||||||
                                        "\\.texi$")))
 | 
					                                        "\\.texi$")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,6 +12,7 @@ Copyright @copyright{} 2019 Ricardo Wurmus@*
 | 
				
			||||||
Copyright @copyright{} 2019 Efraim Flashner@*
 | 
					Copyright @copyright{} 2019 Efraim Flashner@*
 | 
				
			||||||
Copyright @copyright{} 2019 Pierre Neidhardt@*
 | 
					Copyright @copyright{} 2019 Pierre Neidhardt@*
 | 
				
			||||||
Copyright @copyright{} 2020 Oleg Pykhalov@*
 | 
					Copyright @copyright{} 2020 Oleg Pykhalov@*
 | 
				
			||||||
 | 
					Copyright @copyright{} 2020 Matthew Brooks@*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
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
 | 
				
			||||||
| 
						 | 
					@ -1322,6 +1323,7 @@ reference.
 | 
				
			||||||
@menu
 | 
					@menu
 | 
				
			||||||
* Customizing the Kernel::       Creating and using a custom Linux kernel on Guix System.
 | 
					* Customizing the Kernel::       Creating and using a custom Linux kernel on Guix System.
 | 
				
			||||||
* Customizing a Window Manager:: Handle customization of a Window manager on Guix System.
 | 
					* Customizing a Window Manager:: Handle customization of a Window manager on Guix System.
 | 
				
			||||||
 | 
					* Setting up a bind mount:: Setting up a bind mount in the file-systems definition.
 | 
				
			||||||
@end menu
 | 
					@end menu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@node Customizing the Kernel
 | 
					@node Customizing the Kernel
 | 
				
			||||||
| 
						 | 
					@ -1614,6 +1616,55 @@ Then you need to add the following code to a StumpWM configuration file
 | 
				
			||||||
(set-font (make-instance 'xft:font :family "DejaVu Sans Mono" :subfamily "Book" :size 11))
 | 
					(set-font (make-instance 'xft:font :family "DejaVu Sans Mono" :subfamily "Book" :size 11))
 | 
				
			||||||
@end lisp
 | 
					@end lisp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@node Setting up a bind mount
 | 
				
			||||||
 | 
					@section Setting up a bind mount
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					To bind mount a file system, one must first set up some definitions
 | 
				
			||||||
 | 
					before the @code{operating-system} section of the system definition. In
 | 
				
			||||||
 | 
					this example we will bind mount a folder from a spinning disk drive to
 | 
				
			||||||
 | 
					@code{/tmp}, to save wear and tear on the primary SSD, without
 | 
				
			||||||
 | 
					dedicating an entire partition to be mounted as @code{/tmp}.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					First, the source drive that hosts the folder we wish to bind mount
 | 
				
			||||||
 | 
					should be defined, so that the bind mount can depend on it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@lisp
 | 
				
			||||||
 | 
					(define source-drive ;; "source-drive" can be named anything you want.
 | 
				
			||||||
 | 
					   (file-system
 | 
				
			||||||
 | 
					    (device (uuid "UUID goes here"))
 | 
				
			||||||
 | 
					    (mount-point "/path-to-spinning-disk-goes-here")
 | 
				
			||||||
 | 
					    (type "ext4"))) ;; Make sure to set this to the appropriate type for your drive.
 | 
				
			||||||
 | 
					@end lisp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The source folder must also be defined, so that guix will know it's not
 | 
				
			||||||
 | 
					a regular block device, but a folder.
 | 
				
			||||||
 | 
					@lisp
 | 
				
			||||||
 | 
					(define (%source-directory) "/path-to-spinning-disk-goes-here/tmp") ;; "source-directory" can be named any valid variable name.
 | 
				
			||||||
 | 
					@end lisp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Finally, inside the @code{file-systems} definition, we must add the
 | 
				
			||||||
 | 
					mount itself.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@lisp
 | 
				
			||||||
 | 
					(file-systems (cons*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                ...<other drives omitted for clarity>...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                source-drive ;; Must match the name you gave the source drive in the earlier definition.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                (file-system
 | 
				
			||||||
 | 
					                 (device (%source-directory)) ;; Make sure "source-directory" matches your earlier definition.
 | 
				
			||||||
 | 
					                 (mount-point "/tmp")
 | 
				
			||||||
 | 
					                 (type "none") ;; We are mounting a folder, not a partition, so this type needs to be "none"
 | 
				
			||||||
 | 
					                 (flags '(bind-mount))
 | 
				
			||||||
 | 
					                 (dependencies (list source-drive)) ;; Ensure "source-drive" matches what you've named the variable for the drive.
 | 
				
			||||||
 | 
					                 )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                 ...<other drives omitted for clarity>...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                ))
 | 
				
			||||||
 | 
					@end lisp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@c *********************************************************************
 | 
					@c *********************************************************************
 | 
				
			||||||
@node Advanced package management
 | 
					@node Advanced package management
 | 
				
			||||||
@chapter Advanced package management
 | 
					@chapter Advanced package management
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										121
									
								
								doc/guix.texi
									
										
									
									
									
								
							
							
						
						
									
										121
									
								
								doc/guix.texi
									
										
									
									
									
								
							| 
						 | 
					@ -1691,7 +1691,7 @@ package in Guix looks for fonts in @file{$HOME/.guix-profile}
 | 
				
			||||||
by default.  Thus, to allow graphical applications installed with Guix
 | 
					by default.  Thus, to allow graphical applications installed with Guix
 | 
				
			||||||
to display fonts, you have to install fonts with Guix as well.
 | 
					to display fonts, you have to install fonts with Guix as well.
 | 
				
			||||||
Essential font packages include @code{gs-fonts}, @code{font-dejavu}, and
 | 
					Essential font packages include @code{gs-fonts}, @code{font-dejavu}, and
 | 
				
			||||||
@code{font-gnu-freefont-ttf}.
 | 
					@code{font-gnu-freefont}.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@cindex @code{fc-cache}
 | 
					@cindex @code{fc-cache}
 | 
				
			||||||
@cindex font cache
 | 
					@cindex font cache
 | 
				
			||||||
| 
						 | 
					@ -7483,6 +7483,10 @@ value in the absolute file name of @var{file} within the @var{output}
 | 
				
			||||||
directory of @var{package}.  When @var{file} is omitted, return the name
 | 
					directory of @var{package}.  When @var{file} is omitted, return the name
 | 
				
			||||||
of the @var{output} directory of @var{package}.  When @var{target} is
 | 
					of the @var{output} directory of @var{package}.  When @var{target} is
 | 
				
			||||||
true, use it as a cross-compilation target triplet.
 | 
					true, use it as a cross-compilation target triplet.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Note that this procedure does @emph{not} build @var{package}.  Thus, the
 | 
				
			||||||
 | 
					result might or might not designate an existing file.  We recommend not
 | 
				
			||||||
 | 
					using this procedure unless you know what you are doing.
 | 
				
			||||||
@end deffn
 | 
					@end deffn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@deffn {Monadic Procedure} package->derivation @var{package} [@var{system}]
 | 
					@deffn {Monadic Procedure} package->derivation @var{package} [@var{system}]
 | 
				
			||||||
| 
						 | 
					@ -7951,7 +7955,8 @@ The resulting file holds references to all the dependencies of @var{exp}
 | 
				
			||||||
or a subset thereof.
 | 
					or a subset thereof.
 | 
				
			||||||
@end deffn
 | 
					@end deffn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@deffn {Scheme Procedure} scheme-file @var{name} @var{exp} [#:splice? #f]
 | 
					@deffn {Scheme Procedure} scheme-file @var{name} @var{exp} @
 | 
				
			||||||
 | 
					          [#:splice? #f] [#:set-load-path? #t]
 | 
				
			||||||
Return an object representing the Scheme file @var{name} that contains
 | 
					Return an object representing the Scheme file @var{name} that contains
 | 
				
			||||||
@var{exp}.
 | 
					@var{exp}.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12845,8 +12850,12 @@ A directory path where the @command{guix-daemon} will perform builds.
 | 
				
			||||||
@deffn {Scheme Procedure} udev-service [#:udev @var{eudev} #:rules @code{'()}]
 | 
					@deffn {Scheme Procedure} udev-service [#:udev @var{eudev} #:rules @code{'()}]
 | 
				
			||||||
Run @var{udev}, which populates the @file{/dev} directory dynamically.
 | 
					Run @var{udev}, which populates the @file{/dev} directory dynamically.
 | 
				
			||||||
udev rules can be provided as a list of files through the @var{rules}
 | 
					udev rules can be provided as a list of files through the @var{rules}
 | 
				
			||||||
variable.  The procedures @code{udev-rule} and @code{file->udev-rule} from
 | 
					variable.  The procedures @code{udev-rule}, @code{udev-rules-service}
 | 
				
			||||||
@code{(gnu services base)} simplify the creation of such rule files.
 | 
					and @code{file->udev-rule} from @code{(gnu services base)} simplify the
 | 
				
			||||||
 | 
					creation of such rule files.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The @command{herd rules udev} command, as root, returns the name of the
 | 
				
			||||||
 | 
					directory containing all the active udev rules.
 | 
				
			||||||
@end deffn
 | 
					@end deffn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@deffn {Scheme Procedure} udev-rule [@var{file-name} @var{contents}]
 | 
					@deffn {Scheme Procedure} udev-rule [@var{file-name} @var{contents}]
 | 
				
			||||||
| 
						 | 
					@ -12865,23 +12874,27 @@ upon detecting a USB device with a given product identifier.
 | 
				
			||||||
                   "ATTR@{product@}==\"Example\", "
 | 
					                   "ATTR@{product@}==\"Example\", "
 | 
				
			||||||
                   "RUN+=\"/path/to/script\"")))
 | 
					                   "RUN+=\"/path/to/script\"")))
 | 
				
			||||||
@end lisp
 | 
					@end lisp
 | 
				
			||||||
 | 
					 | 
				
			||||||
The @command{herd rules udev} command, as root, returns the name of the
 | 
					 | 
				
			||||||
directory containing all the active udev rules.
 | 
					 | 
				
			||||||
@end deffn
 | 
					@end deffn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Here we show how the default @var{udev-service} can be extended with it.
 | 
					@deffn {Scheme Procedure} udev-rules-service [@var{name} @var{rules}] @
 | 
				
			||||||
 | 
					               [#:groups @var{groups}]
 | 
				
			||||||
 | 
					Return a service that extends @code{udev-service-type } with @var{rules}
 | 
				
			||||||
 | 
					and @code{account-service-type} with @var{groups} as system groups.
 | 
				
			||||||
 | 
					This works by creating a singleton service type
 | 
				
			||||||
 | 
					@code{@var{name}-udev-rules}, of which the returned service is an
 | 
				
			||||||
 | 
					instance.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Here we show how it can be used to extend @code{udev-service-type} with the
 | 
				
			||||||
 | 
					previously defined rule @code{%example-udev-rule}.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@lisp
 | 
					@lisp
 | 
				
			||||||
(operating-system
 | 
					(operating-system
 | 
				
			||||||
 ;; @dots{}
 | 
					 ;; @dots{}
 | 
				
			||||||
 (services
 | 
					 (services
 | 
				
			||||||
 (modify-services %desktop-services
 | 
					   (cons (udev-rules-service 'usb-thing %example-udev-rule)
 | 
				
			||||||
   (udev-service-type config =>
 | 
					         %desktop-services)))
 | 
				
			||||||
     (udev-configuration (inherit config)
 | 
					 | 
				
			||||||
      (rules (append (udev-configuration-rules config)
 | 
					 | 
				
			||||||
                     (list %example-udev-rule))))))))
 | 
					 | 
				
			||||||
@end lisp
 | 
					@end lisp
 | 
				
			||||||
 | 
					@end deffn
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@deffn {Scheme Procedure} file->udev-rule [@var{file-name} @var{file}]
 | 
					@deffn {Scheme Procedure} file->udev-rule [@var{file-name} @var{file}]
 | 
				
			||||||
Return a udev file named @var{file-name} containing the rules defined
 | 
					Return a udev file named @var{file-name} containing the rules defined
 | 
				
			||||||
| 
						 | 
					@ -12918,10 +12931,10 @@ The following example shows how to use the @var{android-udev-rules}
 | 
				
			||||||
package so that the Android tool @command{adb} can detect devices
 | 
					package so that the Android tool @command{adb} can detect devices
 | 
				
			||||||
without root privileges.  It also details how to create the
 | 
					without root privileges.  It also details how to create the
 | 
				
			||||||
@code{adbusers} group, which is required for the proper functioning of
 | 
					@code{adbusers} group, which is required for the proper functioning of
 | 
				
			||||||
the rules defined within the @var{android-udev-rules} package.  To
 | 
					the rules defined within the @code{android-udev-rules} package.  To
 | 
				
			||||||
create such a group, we must define it both as part of the
 | 
					create such a group, we must define it both as part of the
 | 
				
			||||||
@var{supplementary-groups} of our @var{user-account} declaration, as
 | 
					@code{supplementary-groups} of our @code{user-account} declaration, as
 | 
				
			||||||
well as in the @var{groups} field of the @var{operating-system} record.
 | 
					well as in the @var{groups} of the @code{udev-rules-service} procedure.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@lisp
 | 
					@lisp
 | 
				
			||||||
(use-modules (gnu packages android)  ;for android-udev-rules
 | 
					(use-modules (gnu packages android)  ;for android-udev-rules
 | 
				
			||||||
| 
						 | 
					@ -12935,19 +12948,11 @@ well as in the @var{groups} field of the @var{operating-system} record.
 | 
				
			||||||
                (supplementary-groups
 | 
					                (supplementary-groups
 | 
				
			||||||
                 '("adbusers"   ;for adb
 | 
					                 '("adbusers"   ;for adb
 | 
				
			||||||
                   "wheel" "netdev" "audio" "video")))))
 | 
					                   "wheel" "netdev" "audio" "video")))))
 | 
				
			||||||
 | 
					 | 
				
			||||||
  (groups (cons (user-group (system? #t) (name "adbusers"))
 | 
					 | 
				
			||||||
                %base-groups))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  ;; @dots{}
 | 
					  ;; @dots{}
 | 
				
			||||||
 | 
					 | 
				
			||||||
  (services
 | 
					  (services
 | 
				
			||||||
   (modify-services %desktop-services
 | 
					    (cons (udev-rules-service 'android android-udev-rules
 | 
				
			||||||
     (udev-service-type
 | 
					                              #:groups '("adbusers"))
 | 
				
			||||||
      config =>
 | 
					          %desktop-services)))
 | 
				
			||||||
      (udev-configuration (inherit config)
 | 
					 | 
				
			||||||
                          (rules (cons android-udev-rules
 | 
					 | 
				
			||||||
                                       (udev-configuration-rules config))))))))
 | 
					 | 
				
			||||||
@end lisp
 | 
					@end lisp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@defvr {Scheme Variable} urandom-seed-service-type
 | 
					@defvr {Scheme Variable} urandom-seed-service-type
 | 
				
			||||||
| 
						 | 
					@ -13633,6 +13638,68 @@ List of additional command-line arguments to pass to the daemon.
 | 
				
			||||||
@end table
 | 
					@end table
 | 
				
			||||||
@end deftp
 | 
					@end deftp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@cindex hostapd service, for Wi-Fi access points
 | 
				
			||||||
 | 
					@cindex Wi-Fi access points, hostapd service
 | 
				
			||||||
 | 
					@defvr {Scheme Variable} hostapd-service-type
 | 
				
			||||||
 | 
					This is the service type to run the @uref{https://w1.fi/hostapd/,
 | 
				
			||||||
 | 
					hostapd} daemon to set up WiFi (IEEE 802.11) access points and
 | 
				
			||||||
 | 
					authentication servers.  Its associated value must be a
 | 
				
			||||||
 | 
					@code{hostapd-configuration} as shown below:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@lisp
 | 
				
			||||||
 | 
					;; Use wlan1 to run the access point for "My Network".
 | 
				
			||||||
 | 
					(service hostapd-service-type
 | 
				
			||||||
 | 
					         (hostapd-configuration
 | 
				
			||||||
 | 
					          (interface "wlan1")
 | 
				
			||||||
 | 
					          (ssid "My Network")
 | 
				
			||||||
 | 
					          (channel 12)))
 | 
				
			||||||
 | 
					@end lisp
 | 
				
			||||||
 | 
					@end defvr
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@deftp {Data Type} hostapd-configuration
 | 
				
			||||||
 | 
					This data type represents the configuration of the hostapd service, with
 | 
				
			||||||
 | 
					the following fields:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@table @asis
 | 
				
			||||||
 | 
					@item @code{package} (default: @code{hostapd})
 | 
				
			||||||
 | 
					The hostapd package to use.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@item @code{interface} (default: @code{"wlan0"})
 | 
				
			||||||
 | 
					The network interface to run the WiFi access point.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@item @code{ssid}
 | 
				
			||||||
 | 
					The SSID (@dfn{service set identifier}), a string that identifies this
 | 
				
			||||||
 | 
					network.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@item @code{broadcast-ssid?} (default: @code{#t})
 | 
				
			||||||
 | 
					Whether to broadcast this SSID.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@item @code{channel} (default: @code{1})
 | 
				
			||||||
 | 
					The WiFi channel to use.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@item @code{driver} (default: @code{"nl80211"})
 | 
				
			||||||
 | 
					The driver interface type.  @code{"nl80211"} is used with all Linux
 | 
				
			||||||
 | 
					mac80211 drivers.  Use @code{"none"} if building hostapd as a standalone
 | 
				
			||||||
 | 
					RADIUS server that does # not control any wireless/wired driver.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@item @code{extra-settings} (default: @code{""})
 | 
				
			||||||
 | 
					Extra settings to append as-is to the hostapd configuration file.  See
 | 
				
			||||||
 | 
					@uref{https://w1.fi/cgit/hostap/plain/hostapd/hostapd.conf} for the
 | 
				
			||||||
 | 
					configuration file reference.
 | 
				
			||||||
 | 
					@end table
 | 
				
			||||||
 | 
					@end deftp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@defvr {Scheme Variable} simulated-wifi-service-type
 | 
				
			||||||
 | 
					This is the type of a service to simulate WiFi networking, which can be
 | 
				
			||||||
 | 
					useful in virtual machines for testing purposes.  The service loads the
 | 
				
			||||||
 | 
					Linux kernel
 | 
				
			||||||
 | 
					@uref{https://www.kernel.org/doc/html/latest/networking/mac80211_hwsim/mac80211_hwsim.html,
 | 
				
			||||||
 | 
					@code{mac80211_hwsim} module} and starts hostapd to create a pseudo WiFi
 | 
				
			||||||
 | 
					network that can be seen on @code{wlan0}, by default.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The service's value is a @code{hostapd-configuration} record.
 | 
				
			||||||
 | 
					@end defvr
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@cindex iptables
 | 
					@cindex iptables
 | 
				
			||||||
@defvr {Scheme Variable} iptables-service-type
 | 
					@defvr {Scheme Variable} iptables-service-type
 | 
				
			||||||
This is the service type to set up an iptables configuration.  iptables is a
 | 
					This is the service type to set up an iptables configuration.  iptables is a
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										19
									
								
								etc/news.scm
									
										
									
									
									
								
							
							
						
						
									
										19
									
								
								etc/news.scm
									
										
									
									
									
								
							| 
						 | 
					@ -11,6 +11,25 @@
 | 
				
			||||||
(channel-news
 | 
					(channel-news
 | 
				
			||||||
 (version 0)
 | 
					 (version 0)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 (entry (commit "e1e6491226347d9fb93ff484d78cef98848a510a")
 | 
				
			||||||
 | 
					        (title (en "Guix Cookbook now available as Info"))
 | 
				
			||||||
 | 
					        ;; TRANSLATORS: Adjust the URL and the 'info' command to refer to the
 | 
				
			||||||
 | 
					        ;; translated manual if it's available.
 | 
				
			||||||
 | 
					        (body (en "The new Guix Cookbook is now fetched by @command{guix pull}
 | 
				
			||||||
 | 
					and thus readily available in the Info format.  It aims to provide tutorials
 | 
				
			||||||
 | 
					and detailed examples covering a variety of use cases.  You can access it by
 | 
				
			||||||
 | 
					typing:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@example
 | 
				
			||||||
 | 
					info guix-cookbook
 | 
				
			||||||
 | 
					@end example
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The Cookbook is currently available in English and German.  You can also find
 | 
				
			||||||
 | 
					it @uref{https://guix.gnu.org/cookbook/en/, on-line}.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Your contributions are welcome: @uref{https://guix.gnu.org/contact/, get in
 | 
				
			||||||
 | 
					touch with the developers} to share your recipes!")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 (entry (commit "2ca7af43fe17d9acf082dce85d137a27a8ac4887")
 | 
					 (entry (commit "2ca7af43fe17d9acf082dce85d137a27a8ac4887")
 | 
				
			||||||
        (title (en "Further reduced binary seed bootstrap"))
 | 
					        (title (en "Further reduced binary seed bootstrap"))
 | 
				
			||||||
        (body
 | 
					        (body
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,6 +2,7 @@
 | 
				
			||||||
;;; Copyright © 2017 David Craven <david@craven.ch>
 | 
					;;; Copyright © 2017 David Craven <david@craven.ch>
 | 
				
			||||||
;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
					;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
 | 
					;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -37,6 +38,7 @@
 | 
				
			||||||
            u-boot-pine64-plus-bootloader
 | 
					            u-boot-pine64-plus-bootloader
 | 
				
			||||||
            u-boot-pine64-lts-bootloader
 | 
					            u-boot-pine64-lts-bootloader
 | 
				
			||||||
            u-boot-pinebook-bootloader
 | 
					            u-boot-pinebook-bootloader
 | 
				
			||||||
 | 
					            u-boot-pinebook-pro-rk3399-bootloader
 | 
				
			||||||
            u-boot-puma-rk3399-bootloader
 | 
					            u-boot-puma-rk3399-bootloader
 | 
				
			||||||
            u-boot-rock64-rk3328-bootloader
 | 
					            u-boot-rock64-rk3328-bootloader
 | 
				
			||||||
            u-boot-rockpro64-rk3399-bootloader
 | 
					            u-boot-rockpro64-rk3399-bootloader
 | 
				
			||||||
| 
						 | 
					@ -123,6 +125,8 @@
 | 
				
			||||||
        (write-file-on-device u-boot (stat:size (stat u-boot))
 | 
					        (write-file-on-device u-boot (stat:size (stat u-boot))
 | 
				
			||||||
                              device (* 16384 512)))))
 | 
					                              device (* 16384 512)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define install-pinebook-pro-rk3399-u-boot install-rockpro64-rk3399-u-boot)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -243,3 +247,10 @@
 | 
				
			||||||
   (inherit u-boot-bootloader)
 | 
					   (inherit u-boot-bootloader)
 | 
				
			||||||
   (package u-boot-rockpro64-rk3399)
 | 
					   (package u-boot-rockpro64-rk3399)
 | 
				
			||||||
   (installer install-rockpro64-rk3399-u-boot)))
 | 
					   (installer install-rockpro64-rk3399-u-boot)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define u-boot-pinebook-pro-rk3399-bootloader
 | 
				
			||||||
 | 
					  ;; SD and eMMC use the same format
 | 
				
			||||||
 | 
					  (bootloader
 | 
				
			||||||
 | 
					   (inherit u-boot-bootloader)
 | 
				
			||||||
 | 
					   (package u-boot-pinebook-pro-rk3399)
 | 
				
			||||||
 | 
					   (installer install-pinebook-pro-rk3399-u-boot)))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										15
									
								
								gnu/local.mk
									
										
									
									
									
								
							
							
						
						
									
										15
									
								
								gnu/local.mk
									
										
									
									
									
								
							| 
						 | 
					@ -29,7 +29,10 @@
 | 
				
			||||||
# Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
 | 
					# Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
 | 
				
			||||||
# Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
					# Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
				
			||||||
# Copyright © 2020 R Veera Kumar <vkor@vkten.in>
 | 
					# Copyright © 2020 R Veera Kumar <vkor@vkten.in>
 | 
				
			||||||
# Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz
 | 
					# Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
 | 
				
			||||||
 | 
					# Copyright © 2020 Michael Rohleder <mike@rohleder.de>
 | 
				
			||||||
 | 
					# Copyright © 2020 Felix Gruber <felgru@posteo.net>
 | 
				
			||||||
 | 
					# Copyright © 2020 Ryan Prior <rprior@protonmail.com>
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# This file is part of GNU Guix.
 | 
					# This file is part of GNU Guix.
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
| 
						 | 
					@ -520,6 +523,7 @@ GNU_SYSTEM_MODULES =				\
 | 
				
			||||||
  %D%/packages/video.scm			\
 | 
					  %D%/packages/video.scm			\
 | 
				
			||||||
  %D%/packages/vim.scm				\
 | 
					  %D%/packages/vim.scm				\
 | 
				
			||||||
  %D%/packages/virtualization.scm		\
 | 
					  %D%/packages/virtualization.scm		\
 | 
				
			||||||
 | 
					  %D%/packages/visidata.scm			\
 | 
				
			||||||
  %D%/packages/vnc.scm				\
 | 
					  %D%/packages/vnc.scm				\
 | 
				
			||||||
  %D%/packages/vpn.scm				\
 | 
					  %D%/packages/vpn.scm				\
 | 
				
			||||||
  %D%/packages/vulkan.scm			\
 | 
					  %D%/packages/vulkan.scm			\
 | 
				
			||||||
| 
						 | 
					@ -854,6 +858,7 @@ dist_patch_DATA =						\
 | 
				
			||||||
  %D%/packages/patches/doxygen-1.8.17-runtests.patch		\
 | 
					  %D%/packages/patches/doxygen-1.8.17-runtests.patch		\
 | 
				
			||||||
  %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch	\
 | 
					  %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch	\
 | 
				
			||||||
  %D%/packages/patches/dstat-skip-devices-without-io.patch	\
 | 
					  %D%/packages/patches/dstat-skip-devices-without-io.patch	\
 | 
				
			||||||
 | 
					  %D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch	\
 | 
				
			||||||
  %D%/packages/patches/dvd+rw-tools-add-include.patch 		\
 | 
					  %D%/packages/patches/dvd+rw-tools-add-include.patch 		\
 | 
				
			||||||
  %D%/packages/patches/eigen-stabilise-sparseqr-test.patch	\
 | 
					  %D%/packages/patches/eigen-stabilise-sparseqr-test.patch	\
 | 
				
			||||||
  %D%/packages/patches/einstein-build.patch			\
 | 
					  %D%/packages/patches/einstein-build.patch			\
 | 
				
			||||||
| 
						 | 
					@ -862,7 +867,6 @@ dist_patch_DATA =						\
 | 
				
			||||||
  %D%/packages/patches/elm-compiler-disable-reactor.patch	\
 | 
					  %D%/packages/patches/elm-compiler-disable-reactor.patch	\
 | 
				
			||||||
  %D%/packages/patches/elm-compiler-fix-map-key.patch		\
 | 
					  %D%/packages/patches/elm-compiler-fix-map-key.patch		\
 | 
				
			||||||
  %D%/packages/patches/emacs27-exec-path.patch			\
 | 
					  %D%/packages/patches/emacs27-exec-path.patch			\
 | 
				
			||||||
  %D%/packages/patches/emacs-dired-toggle-sudo-emacs-26.patch   \
 | 
					 | 
				
			||||||
  %D%/packages/patches/emacs-exec-path.patch			\
 | 
					  %D%/packages/patches/emacs-exec-path.patch			\
 | 
				
			||||||
  %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
 | 
					  %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
 | 
				
			||||||
  %D%/packages/patches/emacs-json-reformat-fix-tests.patch	\
 | 
					  %D%/packages/patches/emacs-json-reformat-fix-tests.patch	\
 | 
				
			||||||
| 
						 | 
					@ -1162,6 +1166,7 @@ dist_patch_DATA =						\
 | 
				
			||||||
  %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
 | 
					  %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
 | 
				
			||||||
  %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
 | 
					  %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
 | 
				
			||||||
  %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
 | 
					  %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
 | 
				
			||||||
 | 
					  %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
 | 
				
			||||||
  %D%/packages/patches/libreoffice-poppler-compat.patch		\
 | 
					  %D%/packages/patches/libreoffice-poppler-compat.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	\
 | 
				
			||||||
| 
						 | 
					@ -1509,6 +1514,12 @@ dist_patch_DATA =						\
 | 
				
			||||||
  %D%/packages/patches/tomb-fix-errors-on-open.patch		\
 | 
					  %D%/packages/patches/tomb-fix-errors-on-open.patch		\
 | 
				
			||||||
  %D%/packages/patches/tuxpaint-stamps-path.patch		\
 | 
					  %D%/packages/patches/tuxpaint-stamps-path.patch		\
 | 
				
			||||||
  %D%/packages/patches/u-boot-riscv64-fix-extlinux.patch	\
 | 
					  %D%/packages/patches/u-boot-riscv64-fix-extlinux.patch	\
 | 
				
			||||||
 | 
					  %D%/packages/patches/u-boot-DT-for-Pinebook-Pro.patch		\
 | 
				
			||||||
 | 
					  %D%/packages/patches/u-boot-add-boe-nv140fhmn49-display.patch	\
 | 
				
			||||||
 | 
					  %D%/packages/patches/u-boot-gpio-keys-binding-cons.patch	\
 | 
				
			||||||
 | 
					  %D%/packages/patches/u-boot-leds-common-binding-con.patch	\
 | 
				
			||||||
 | 
					  %D%/packages/patches/u-boot-support-Pinebook-Pro-laptop.patch	\
 | 
				
			||||||
 | 
					  %D%/packages/patches/u-boot-video-rockchip-fix-build.patch	\
 | 
				
			||||||
  %D%/packages/patches/ucx-tcp-iface-ioctl.patch		\
 | 
					  %D%/packages/patches/ucx-tcp-iface-ioctl.patch		\
 | 
				
			||||||
  %D%/packages/patches/udiskie-no-appindicator.patch		\
 | 
					  %D%/packages/patches/udiskie-no-appindicator.patch		\
 | 
				
			||||||
  %D%/packages/patches/unzip-CVE-2014-8139.patch		\
 | 
					  %D%/packages/patches/unzip-CVE-2014-8139.patch		\
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -201,7 +201,7 @@ and provides a \"top-like\" mode (monitoring).")
 | 
				
			||||||
(define-public shepherd
 | 
					(define-public shepherd
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "shepherd")
 | 
					    (name "shepherd")
 | 
				
			||||||
    (version "0.7.0")
 | 
					    (version "0.8.0")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
              (uri (string-append "mirror://gnu/shepherd/shepherd-"
 | 
					              (uri (string-append "mirror://gnu/shepherd/shepherd-"
 | 
				
			||||||
| 
						 | 
					@ -209,7 +209,7 @@ and provides a \"top-like\" mode (monitoring).")
 | 
				
			||||||
              (patches (search-patches "shepherd-hurd.patch"))
 | 
					              (patches (search-patches "shepherd-hurd.patch"))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "07j3vd0y8zab2nwbrwj0ahrfif1ldm5sjssn7m3dw4s307fsrfzx"))))
 | 
					                "02lbc8z5gd8v8wfi4yh1zww8mk03w0zcwnmk4l4p3vpjlvlb63ll"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     '(#:configure-flags '("--localstatedir=/var")))
 | 
					     '(#:configure-flags '("--localstatedir=/var")))
 | 
				
			||||||
| 
						 | 
					@ -247,6 +247,16 @@ interface and is based on GNU Guile.")
 | 
				
			||||||
(define-public guile3.0-shepherd
 | 
					(define-public guile3.0-shepherd
 | 
				
			||||||
  (deprecated-package "guile3.0-shepherd" shepherd))
 | 
					  (deprecated-package "guile3.0-shepherd" shepherd))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public guile2.0-shepherd
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (inherit shepherd)
 | 
				
			||||||
 | 
					    (name "guile2.0-shepherd")
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("pkg-config" ,pkg-config)
 | 
				
			||||||
 | 
					       ("guile" ,guile-2.0)))
 | 
				
			||||||
 | 
					    (inputs
 | 
				
			||||||
 | 
					     `(("guile" ,guile-2.0)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public cloud-utils
 | 
					(define-public cloud-utils
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "cloud-utils")
 | 
					    (name "cloud-utils")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -228,7 +228,7 @@ the real span of the lattice.")
 | 
				
			||||||
(define-public pari-gp
 | 
					(define-public pari-gp
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "pari-gp")
 | 
					    (name "pari-gp")
 | 
				
			||||||
    (version "2.11.3")
 | 
					    (version "2.11.4")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
              (uri (string-append
 | 
					              (uri (string-append
 | 
				
			||||||
| 
						 | 
					@ -236,7 +236,7 @@ the real span of the lattice.")
 | 
				
			||||||
                    version ".tar.gz"))
 | 
					                    version ".tar.gz"))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "1jd65h2psrmba2dx7rkf5qidf9ka0cwbsg20pd18k45ggr30l467"))))
 | 
					                "070bjw4kg7r6lqs1hfs08n5fmjv90cpwflp3wr04hbrmyz28zj5z"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
     `(("texlive" ,(texlive-union
 | 
					     `(("texlive" ,(texlive-union
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,6 +12,7 @@
 | 
				
			||||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
					;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 | 
					;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 | 
				
			||||||
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
					;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
				
			||||||
 | 
					;;; Copyright © 2018, 2019, 2020 Vagrant Cascadian <vagrant@debian.org>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -443,7 +444,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 "2020.04")
 | 
					    (version "2020.01")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
              (uri (string-append
 | 
					              (uri (string-append
 | 
				
			||||||
| 
						 | 
					@ -451,7 +452,7 @@ 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
 | 
				
			||||||
                "0wjkasnz87q86hx93inspdjfjsinmxi87bcvj30c773x0fpjlwzy"))))
 | 
					                "1w9ml4jl15q6ixpdqzspxjnl7d3rgxd7f99ms1xv5c8869h3qida"))))
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
     `(("bc" ,bc)
 | 
					     `(("bc" ,bc)
 | 
				
			||||||
       ("bison" ,bison)
 | 
					       ("bison" ,bison)
 | 
				
			||||||
| 
						 | 
					@ -878,6 +879,35 @@ to Novena upstream, does not load u-boot.img from the first partition.")
 | 
				
			||||||
       `(("firmware" ,arm-trusted-firmware-rk3399)
 | 
					       `(("firmware" ,arm-trusted-firmware-rk3399)
 | 
				
			||||||
         ,@(package-native-inputs base))))))
 | 
					         ,@(package-native-inputs base))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public u-boot-pinebook-pro-rk3399
 | 
				
			||||||
 | 
					  (let ((base (make-u-boot-package "pinebook-pro-rk3399" "aarch64-linux-gnu")))
 | 
				
			||||||
 | 
					    (package
 | 
				
			||||||
 | 
					     (inherit base)
 | 
				
			||||||
 | 
					     (source (origin
 | 
				
			||||||
 | 
					              (inherit (package-source u-boot))
 | 
				
			||||||
 | 
					              (patches
 | 
				
			||||||
 | 
					               (search-patches "u-boot-add-boe-nv140fhmn49-display.patch"
 | 
				
			||||||
 | 
					                               "u-boot-gpio-keys-binding-cons.patch"
 | 
				
			||||||
 | 
					                               "u-boot-leds-common-binding-con.patch"
 | 
				
			||||||
 | 
					                               "u-boot-DT-for-Pinebook-Pro.patch"
 | 
				
			||||||
 | 
					                               "u-boot-support-Pinebook-Pro-laptop.patch"
 | 
				
			||||||
 | 
					                               "u-boot-video-rockchip-fix-build.patch"))))
 | 
				
			||||||
 | 
					      (arguments
 | 
				
			||||||
 | 
					        (substitute-keyword-arguments (package-arguments base)
 | 
				
			||||||
 | 
					          ((#:phases phases)
 | 
				
			||||||
 | 
					           `(modify-phases ,phases
 | 
				
			||||||
 | 
					              (add-after 'unpack 'set-environment
 | 
				
			||||||
 | 
					                (lambda* (#:key inputs #:allow-other-keys)
 | 
				
			||||||
 | 
					                  (setenv "BL31" (string-append (assoc-ref inputs "firmware")
 | 
				
			||||||
 | 
					                                                "/bl31.elf"))
 | 
				
			||||||
 | 
					                  #t))
 | 
				
			||||||
 | 
					              ;; Phases do not succeed on the bl31 ELF.
 | 
				
			||||||
 | 
					              (delete 'strip)
 | 
				
			||||||
 | 
					              (delete 'validate-runpath)))))
 | 
				
			||||||
 | 
					      (native-inputs
 | 
				
			||||||
 | 
					       `(("firmware" ,arm-trusted-firmware-rk3399)
 | 
				
			||||||
 | 
					         ,@(package-native-inputs base))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public vboot-utils
 | 
					(define-public vboot-utils
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "vboot-utils")
 | 
					    (name "vboot-utils")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -248,8 +248,8 @@ from forcing GEXP-PROMISE."
 | 
				
			||||||
                      #:system system
 | 
					                      #:system system
 | 
				
			||||||
                      #:guile-for-build guile)))
 | 
					                      #:guile-for-build guile)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define %chromium-version "81.0.4044.113")
 | 
					(define %chromium-version "81.0.4044.122")
 | 
				
			||||||
(define %ungoogled-revision "b484ad4c0bdb696c86d941798ae6b0e2bd0db35d")
 | 
					(define %ungoogled-revision "31d6e60c96481599b42072b4489e4468280198e3")
 | 
				
			||||||
(define %debian-revision "debian/81.0.4044.92-1")
 | 
					(define %debian-revision "debian/81.0.4044.92-1")
 | 
				
			||||||
(define package-revision "0")
 | 
					(define package-revision "0")
 | 
				
			||||||
(define %package-version (string-append %chromium-version "-"
 | 
					(define %package-version (string-append %chromium-version "-"
 | 
				
			||||||
| 
						 | 
					@ -264,7 +264,7 @@ from forcing GEXP-PROMISE."
 | 
				
			||||||
                        %chromium-version ".tar.xz"))
 | 
					                        %chromium-version ".tar.xz"))
 | 
				
			||||||
    (sha256
 | 
					    (sha256
 | 
				
			||||||
     (base32
 | 
					     (base32
 | 
				
			||||||
      "0hsxxw7fm1p8g53msqb644v8vr4cpvjmpln444c2268rm43yik17"))))
 | 
					      "0ahqh3vmzbpai4xwn7qybgw9phc8ssjdvfc7384mxqk9swqgv7qg"))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define %ungoogled-origin
 | 
					(define %ungoogled-origin
 | 
				
			||||||
  (origin
 | 
					  (origin
 | 
				
			||||||
| 
						 | 
					@ -275,7 +275,7 @@ from forcing GEXP-PROMISE."
 | 
				
			||||||
                              (string-take %ungoogled-revision 7)))
 | 
					                              (string-take %ungoogled-revision 7)))
 | 
				
			||||||
    (sha256
 | 
					    (sha256
 | 
				
			||||||
     (base32
 | 
					     (base32
 | 
				
			||||||
      "071a33idn2zcix6z8skn7y85mhb9w5s0bh0fvrjm269y7cmjrh3l"))))
 | 
					      "1pj2vmzb2fagvypjsjn2kqf5n5k8vnhbisyb0snr6wqvpv09x0vv"))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define %debian-origin
 | 
					(define %debian-origin
 | 
				
			||||||
  (origin
 | 
					  (origin
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -26,6 +26,7 @@
 | 
				
			||||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 | 
					;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 | 
				
			||||||
;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
					;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
				
			||||||
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 | 
					;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -50,6 +51,7 @@
 | 
				
			||||||
  #:use-module (guix git-download)
 | 
					  #:use-module (guix git-download)
 | 
				
			||||||
  #:use-module (guix build-system cmake)
 | 
					  #:use-module (guix build-system cmake)
 | 
				
			||||||
  #:use-module (guix build-system gnu)
 | 
					  #:use-module (guix build-system gnu)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system python)
 | 
				
			||||||
  #:use-module (guix build-system trivial)
 | 
					  #:use-module (guix build-system trivial)
 | 
				
			||||||
  #:use-module (gnu packages)
 | 
					  #:use-module (gnu packages)
 | 
				
			||||||
  #:use-module (gnu packages assembly)
 | 
					  #:use-module (gnu packages assembly)
 | 
				
			||||||
| 
						 | 
					@ -1846,6 +1848,17 @@ The specification of the Brotli Compressed Data Format is defined in RFC 7932.")
 | 
				
			||||||
  ;; We used to provide an older version under the name "brotli".
 | 
					  ;; We used to provide an older version under the name "brotli".
 | 
				
			||||||
  (deprecated-package "brotli" google-brotli))
 | 
					  (deprecated-package "brotli" google-brotli))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public python-google-brotli
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (inherit google-brotli)
 | 
				
			||||||
 | 
					    (name "python-google-brotli")
 | 
				
			||||||
 | 
					    (build-system python-build-system)
 | 
				
			||||||
 | 
					    (arguments '())
 | 
				
			||||||
 | 
					    (synopsis "Python interface to google-brotli")
 | 
				
			||||||
 | 
					    (description "@code{python-google-brotli} provides a Python interface to
 | 
				
			||||||
 | 
					@code{google-brotli}, an implementation of the Brotli lossless compression
 | 
				
			||||||
 | 
					algorithm.")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public ucl
 | 
					(define-public ucl
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "ucl")
 | 
					    (name "ucl")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -14,13 +14,13 @@
 | 
				
			||||||
;;; Copyright © 2018 Laura Lazzati <laura.lazzati.15@gmail.com>
 | 
					;;; Copyright © 2018 Laura Lazzati <laura.lazzati.15@gmail.com>
 | 
				
			||||||
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
 | 
					;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
 | 
				
			||||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
 | 
					;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
 | 
				
			||||||
;;; Copyright © 2018 Eric Brown <brown@fastmail.com>
 | 
					 | 
				
			||||||
;;; Copyright © 2018, 2019 Brett Gilio <brettg@gnu.org>
 | 
					;;; Copyright © 2018, 2019 Brett Gilio <brettg@gnu.org>
 | 
				
			||||||
;;; Copyright © 2019 Nicolò Balzarotti <anothersms@gmail.com>
 | 
					;;; Copyright © 2019 Nicolò Balzarotti <anothersms@gmail.com>
 | 
				
			||||||
;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
 | 
					;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
 | 
				
			||||||
;;; Copyright © 2020 Todor Kondić <tk.code@protonmail.com>
 | 
					;;; Copyright © 2020 Todor Kondić <tk.code@protonmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Danjela Lura <danielaluraa@gmail.com>
 | 
					;;; Copyright © 2020 Danjela Lura <danielaluraa@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Naga Malleswari <nagamalli@riseup.net>
 | 
					;;; Copyright © 2020 Naga Malleswari <nagamalli@riseup.net>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Eric Brown <ecbrown@ericcbrown.com>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -21131,3 +21131,34 @@ vignettes from notebooks.  Those notebooks (@code{.ipynb} files) are files
 | 
				
			||||||
containing rich text, code, and its output.  Code cells can be edited and
 | 
					containing rich text, code, and its output.  Code cells can be edited and
 | 
				
			||||||
evaluated interactively.")
 | 
					evaluated interactively.")
 | 
				
			||||||
    (license license:gpl3)))
 | 
					    (license license:gpl3)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public r-bridgesampling
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "r-bridgesampling")
 | 
				
			||||||
 | 
					    (version "1.0-0")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri (cran-uri "bridgesampling" version))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32
 | 
				
			||||||
 | 
					         "1awhvv0v42w2q6llqi1wqpaiv5zx74cqzigdsvphy2jfp8ajw64y"))))
 | 
				
			||||||
 | 
					    (properties
 | 
				
			||||||
 | 
					     `((upstream-name . "bridgesampling")))
 | 
				
			||||||
 | 
					    (build-system r-build-system)
 | 
				
			||||||
 | 
					    (propagated-inputs
 | 
				
			||||||
 | 
					     `(("r-brobdingnag" ,r-brobdingnag)
 | 
				
			||||||
 | 
					       ("r-coda" ,r-coda)
 | 
				
			||||||
 | 
					       ("r-matrix" ,r-matrix)
 | 
				
			||||||
 | 
					       ("r-mvtnorm" ,r-mvtnorm)
 | 
				
			||||||
 | 
					       ("r-scales" ,r-scales)
 | 
				
			||||||
 | 
					       ("r-stringr" ,r-stringr)))
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("r-knitr" ,r-knitr)))
 | 
				
			||||||
 | 
					    (home-page "https://github.com/quentingronau/bridgesampling")
 | 
				
			||||||
 | 
					    (synopsis "Bridge sampling for marginal likelihoods and Bayes factors")
 | 
				
			||||||
 | 
					    (description
 | 
				
			||||||
 | 
					     "This package provides functions for estimating marginal likelihoods,
 | 
				
			||||||
 | 
					Bayes factors, posterior model probabilities, and normalizing constants in
 | 
				
			||||||
 | 
					general, via different versions of bridge sampling.")
 | 
				
			||||||
 | 
					    (license license:gpl2+)))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1247,19 +1247,20 @@ data in a single database.  RocksDB is partially based on @code{LevelDB}.")
 | 
				
			||||||
    (name "sparql-query")
 | 
					    (name "sparql-query")
 | 
				
			||||||
    (version "1.1")
 | 
					    (version "1.1")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method git-fetch)
 | 
				
			||||||
              (uri (string-append "https://github.com/tialaramex/"
 | 
					              (uri (git-reference
 | 
				
			||||||
                                  name "/archive/" version ".tar.gz"))
 | 
					                     (url "https://github.com/tialaramex/sparql-query")
 | 
				
			||||||
 | 
					                     (commit version)))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32 "0yq3k20472rv8npcc420q9ab6idy584g5y0q501d360k5q0ggr8w"))
 | 
					               (base32 "0a84a89idpjhj9w2y3fmvzv7ldps1cva1kxvfmh897k02kaniwxk"))
 | 
				
			||||||
              (file-name (string-append name "-" version ".tar.gz"))))
 | 
					              (file-name (git-file-name name version))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (inputs
 | 
					    (inputs
 | 
				
			||||||
     `(("readline" ,readline)
 | 
					     `(("curl" ,curl)
 | 
				
			||||||
       ("ncurses" ,ncurses)
 | 
					 | 
				
			||||||
       ("glib" ,glib)
 | 
					       ("glib" ,glib)
 | 
				
			||||||
       ("libxml2" ,libxml2)
 | 
					       ("libxml2" ,libxml2)
 | 
				
			||||||
       ("curl" ,curl)))
 | 
					       ("ncurses" ,ncurses)
 | 
				
			||||||
 | 
					       ("readline" ,readline)))
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
     `(("pkg-config" ,pkg-config)))
 | 
					     `(("pkg-config" ,pkg-config)))
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,6 +47,7 @@
 | 
				
			||||||
  #:use-module (gnu packages docbook)
 | 
					  #:use-module (gnu packages docbook)
 | 
				
			||||||
  #:use-module (gnu packages documentation)
 | 
					  #:use-module (gnu packages documentation)
 | 
				
			||||||
  #:use-module (gnu packages elf)
 | 
					  #:use-module (gnu packages elf)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages file-systems)
 | 
				
			||||||
  #:use-module (gnu packages fontutils)
 | 
					  #:use-module (gnu packages fontutils)
 | 
				
			||||||
  #:use-module (gnu packages gettext)
 | 
					  #:use-module (gnu packages gettext)
 | 
				
			||||||
  #:use-module (gnu packages glib)
 | 
					  #:use-module (gnu packages glib)
 | 
				
			||||||
| 
						 | 
					@ -64,6 +65,7 @@
 | 
				
			||||||
  #:use-module (gnu packages python)
 | 
					  #:use-module (gnu packages python)
 | 
				
			||||||
  #:use-module (gnu packages python-xyz)
 | 
					  #:use-module (gnu packages python-xyz)
 | 
				
			||||||
  #:use-module (gnu packages readline)
 | 
					  #:use-module (gnu packages readline)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages samba)
 | 
				
			||||||
  #:use-module (gnu packages sphinx)
 | 
					  #:use-module (gnu packages sphinx)
 | 
				
			||||||
  #:use-module (gnu packages sqlite)
 | 
					  #:use-module (gnu packages sqlite)
 | 
				
			||||||
  #:use-module (gnu packages swig)
 | 
					  #:use-module (gnu packages swig)
 | 
				
			||||||
| 
						 | 
					@ -84,6 +86,52 @@
 | 
				
			||||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
					  #:use-module ((guix licenses) #:prefix license:)
 | 
				
			||||||
  #:use-module (guix packages))
 | 
					  #:use-module (guix packages))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public udevil
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "udevil")
 | 
				
			||||||
 | 
					    (version "0.4.4")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method git-fetch)
 | 
				
			||||||
 | 
					       (uri
 | 
				
			||||||
 | 
					        (git-reference
 | 
				
			||||||
 | 
					         (url "https://github.com/IgnorantGuru/udevil.git")
 | 
				
			||||||
 | 
					         (commit version)))
 | 
				
			||||||
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "0x9mjr9abvbxzfa9mrip5264iz1qxvsl01k3ybz95q4a7xl4jcb3"))))
 | 
				
			||||||
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:configure-flags
 | 
				
			||||||
 | 
					       (list "--disable-systemd"
 | 
				
			||||||
 | 
					             (string-append "--sysconfdir="
 | 
				
			||||||
 | 
					                            (assoc-ref %outputs "out")
 | 
				
			||||||
 | 
					                            "/etc"))
 | 
				
			||||||
 | 
					       #:phases
 | 
				
			||||||
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-after 'unpack 'remove-root-reference
 | 
				
			||||||
 | 
					           (lambda _
 | 
				
			||||||
 | 
					             (substitute* "src/Makefile.in"
 | 
				
			||||||
 | 
					               (("-o root -g root") ""))
 | 
				
			||||||
 | 
					             #t)))))
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("intltool" ,intltool)
 | 
				
			||||||
 | 
					       ("pkg-config" ,pkg-config)))
 | 
				
			||||||
 | 
					    (inputs
 | 
				
			||||||
 | 
					     `(("cifs-utils" ,cifs-utils)
 | 
				
			||||||
 | 
					       ("curlftpfs" ,curlftpfs)
 | 
				
			||||||
 | 
					       ("eudev" ,eudev)
 | 
				
			||||||
 | 
					       ("fakeroot" ,fakeroot)
 | 
				
			||||||
 | 
					       ("glib" ,glib)
 | 
				
			||||||
 | 
					       ("sshfs" ,sshfs)))
 | 
				
			||||||
 | 
					    (synopsis "Device and file system manager")
 | 
				
			||||||
 | 
					    (description "udevil is a command line program that mounts and unmounts
 | 
				
			||||||
 | 
					removable devices without a password, shows device info, and monitors device
 | 
				
			||||||
 | 
					changes.  It can also mount ISO files, NFS, SMB, FTP, SSH and WebDAV URLs, and
 | 
				
			||||||
 | 
					tmpfs/ramfs filesystems.")
 | 
				
			||||||
 | 
					    (home-page "https://ignorantguru.github.io/udevil/")
 | 
				
			||||||
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public parted
 | 
					(define-public parted
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "parted")
 | 
					    (name "parted")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5383,6 +5383,34 @@ The goal of this game is to create a tile with value 2048.  The size of the
 | 
				
			||||||
board and goal value can be customized.")
 | 
					board and goal value can be customized.")
 | 
				
			||||||
    (license license:gpl3+)))
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public emacs-4clojure
 | 
				
			||||||
 | 
					  ;; There is no release.  Base version is extracted from Version keyword in
 | 
				
			||||||
 | 
					  ;; the main file.
 | 
				
			||||||
 | 
					  (let ((commit "4eccf8c7d4341a36c269451838114b27836699f9")
 | 
				
			||||||
 | 
					        (revision "1"))
 | 
				
			||||||
 | 
					    (package
 | 
				
			||||||
 | 
					      (name "emacs-4clojure")
 | 
				
			||||||
 | 
					      (version (git-version "0.2.1" revision commit))
 | 
				
			||||||
 | 
					      (source
 | 
				
			||||||
 | 
					       (origin
 | 
				
			||||||
 | 
					         (method git-fetch)
 | 
				
			||||||
 | 
					         (uri (git-reference
 | 
				
			||||||
 | 
					               (url "https://github.com/emacsorphanage/4clojure.git")
 | 
				
			||||||
 | 
					               (commit commit)))
 | 
				
			||||||
 | 
					         (file-name (git-file-name name version))
 | 
				
			||||||
 | 
					         (sha256
 | 
				
			||||||
 | 
					          (base32 "19x653lzc1dxil4ix257hciidbdmbhaxhs6qhlkwi9ygjrlrgvnk"))))
 | 
				
			||||||
 | 
					      (build-system emacs-build-system)
 | 
				
			||||||
 | 
					      (propagated-inputs
 | 
				
			||||||
 | 
					       `(("emacs-request" ,emacs-request)))
 | 
				
			||||||
 | 
					      (home-page "https://github.com/emacsorphanage/4clojure/")
 | 
				
			||||||
 | 
					      (synopsis "Open and evaluate 4clojure questions in Emacs")
 | 
				
			||||||
 | 
					      (description "Emacs 4clojure interacts with
 | 
				
			||||||
 | 
					@url{http://www.4clojure.com, 4clojure} problems.  You can open a specific
 | 
				
			||||||
 | 
					question and move to the next or previous one.  You can also verify your
 | 
				
			||||||
 | 
					answers.")
 | 
				
			||||||
 | 
					      (license license:gpl3+))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public emacs-base16-theme
 | 
					(define-public emacs-base16-theme
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "emacs-base16-theme")
 | 
					    (name "emacs-base16-theme")
 | 
				
			||||||
| 
						 | 
					@ -9281,28 +9309,27 @@ information inside the Dired buffer.")
 | 
				
			||||||
      (license license:gpl3+))))
 | 
					      (license license:gpl3+))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public emacs-dired-toggle-sudo
 | 
					(define-public emacs-dired-toggle-sudo
 | 
				
			||||||
 | 
					  (let ((commit "13bbe52c54893f5aa3e56228450ffdd0c9e1d169")
 | 
				
			||||||
 | 
					        (revision "0"))
 | 
				
			||||||
    (package
 | 
					    (package
 | 
				
			||||||
      (name "emacs-dired-toggle-sudo")
 | 
					      (name "emacs-dired-toggle-sudo")
 | 
				
			||||||
    (version "1.0")
 | 
					      (version (git-version "1.0" revision commit))
 | 
				
			||||||
      (source
 | 
					      (source
 | 
				
			||||||
       (origin
 | 
					       (origin
 | 
				
			||||||
         (method git-fetch)
 | 
					         (method git-fetch)
 | 
				
			||||||
         (uri (git-reference
 | 
					         (uri (git-reference
 | 
				
			||||||
               (url "https://github.com/renard/dired-toggle-sudo")
 | 
					               (url "https://github.com/renard/dired-toggle-sudo")
 | 
				
			||||||
             (commit (string-append "v" version))))
 | 
					               (commit commit)))
 | 
				
			||||||
         (file-name (git-file-name name version))
 | 
					         (file-name (git-file-name name version))
 | 
				
			||||||
         (sha256
 | 
					         (sha256
 | 
				
			||||||
          (base32
 | 
					          (base32
 | 
				
			||||||
         "0ajj8d6k5in2hclcrqckinfh80ylddplva0ryfbkzsjkfq167cv2"))
 | 
					           "1fw1pb1z6krqd1pfxxhr6rrfr9ckkcb0zsjzbjk0i2i1q5cg6car"))))
 | 
				
			||||||
       (patches
 | 
					 | 
				
			||||||
        (search-patches
 | 
					 | 
				
			||||||
         "emacs-dired-toggle-sudo-emacs-26.patch"))))
 | 
					 | 
				
			||||||
      (build-system emacs-build-system)
 | 
					      (build-system emacs-build-system)
 | 
				
			||||||
      (home-page "https://github.com/renard/dired-toggle-sudo")
 | 
					      (home-page "https://github.com/renard/dired-toggle-sudo")
 | 
				
			||||||
      (synopsis "Browse directory with @code{sudo} privileges")
 | 
					      (synopsis "Browse directory with @code{sudo} privileges")
 | 
				
			||||||
      (description "This package allows for the use of @code{dired} with
 | 
					      (description "This package allows for the use of @code{dired} with
 | 
				
			||||||
@code{sudo} privileges.")
 | 
					@code{sudo} privileges.")
 | 
				
			||||||
    (license license:wtfpl2)))
 | 
					      (license license:wtfpl2))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public emacs-diredfl
 | 
					(define-public emacs-diredfl
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -20261,6 +20288,29 @@ commands in @code{evil-mode}.")
 | 
				
			||||||
Emacs windows and tmux panes.")
 | 
					Emacs windows and tmux panes.")
 | 
				
			||||||
    (license license:expat)))
 | 
					    (license license:expat)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public emacs-xclip
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "emacs-xclip")
 | 
				
			||||||
 | 
					    (version "1.10")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri (string-append "https://elpa.gnu.org/packages/"
 | 
				
			||||||
 | 
					                           "xclip-" version ".el"))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "0i3i9kwfg8qmhcmqhhnrb1kljgwkccv63s9q1mjwqfjldyfh8j8i"))))
 | 
				
			||||||
 | 
					    (build-system emacs-build-system)
 | 
				
			||||||
 | 
					    (home-page "http://elpa.gnu.org/packages/xclip.html")
 | 
				
			||||||
 | 
					    (synopsis "Copy and paste GUI clipboard from Emacs in text terminal")
 | 
				
			||||||
 | 
					    (description
 | 
				
			||||||
 | 
					     "This package allows Emacs to copy to and paste from the GUI clipboard
 | 
				
			||||||
 | 
					when running in text terminal.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					It can use external command-line tools for that, e.g., @command{xclip} or
 | 
				
			||||||
 | 
					@command{xsel}, which you may need to install in order for the package to
 | 
				
			||||||
 | 
					work.")
 | 
				
			||||||
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public emacs-xterm-color
 | 
					(define-public emacs-xterm-color
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "emacs-xterm-color")
 | 
					    (name "emacs-xterm-color")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -19,7 +19,7 @@
 | 
				
			||||||
;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
 | 
					;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
 | 
				
			||||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 | 
					;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
 | 
				
			||||||
;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 | 
					;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 | 
				
			||||||
;;; Copyright © 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
 | 
					;;; Copyright © 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
 | 
				
			||||||
;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
 | 
					;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
 | 
				
			||||||
;;; Copyright © 2018 Charlie Ritter <chewzerita@posteo.net>
 | 
					;;; Copyright © 2018 Charlie Ritter <chewzerita@posteo.net>
 | 
				
			||||||
;;; Copyright © 2018 Gabriel Hondet <gabrielhondet@gmail.com>
 | 
					;;; Copyright © 2018 Gabriel Hondet <gabrielhondet@gmail.com>
 | 
				
			||||||
| 
						 | 
					@ -32,6 +32,7 @@
 | 
				
			||||||
;;; Copyright © 2020 Amin Bandali <bandali@gnu.org>
 | 
					;;; Copyright © 2020 Amin Bandali <bandali@gnu.org>
 | 
				
			||||||
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
 | 
					;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
 | 
				
			||||||
;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
 | 
					;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -64,9 +65,11 @@
 | 
				
			||||||
  #:use-module (gnu packages fontutils)
 | 
					  #:use-module (gnu packages fontutils)
 | 
				
			||||||
  #:use-module (gnu packages gettext)
 | 
					  #:use-module (gnu packages gettext)
 | 
				
			||||||
  #:use-module (gnu packages glib)
 | 
					  #:use-module (gnu packages glib)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages gtk)
 | 
				
			||||||
  #: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 python-xyz)
 | 
				
			||||||
  #:use-module (gnu packages xorg))
 | 
					  #:use-module (gnu packages xorg))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public font-ibm-plex
 | 
					(define-public font-ibm-plex
 | 
				
			||||||
| 
						 | 
					@ -230,9 +233,9 @@ The Lato 2.010 family supports more than 100 Latin-based languages, over
 | 
				
			||||||
50 Cyrillic-based languages as well as Greek and IPA phonetics.")
 | 
					50 Cyrillic-based languages as well as Greek and IPA phonetics.")
 | 
				
			||||||
    (license license:silofl1.1)))
 | 
					    (license license:silofl1.1)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public font-gnu-freefont-ttf
 | 
					(define-public font-gnu-freefont
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "font-gnu-freefont-ttf")
 | 
					    (name "font-gnu-freefont")
 | 
				
			||||||
    (version "20120503")
 | 
					    (version "20120503")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
             (method url-fetch)
 | 
					             (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -249,18 +252,41 @@ The Lato 2.010 family supports more than 100 Latin-based languages, over
 | 
				
			||||||
                   (lambda _
 | 
					                   (lambda _
 | 
				
			||||||
                     (let ((doc-dir  (string-append %output "/share/doc/"
 | 
					                     (let ((doc-dir  (string-append %output "/share/doc/"
 | 
				
			||||||
                                                    ,name "-" ,version))
 | 
					                                                    ,name "-" ,version))
 | 
				
			||||||
                           (font-dir (string-append %output
 | 
					                           (ttf-font-dir (string-append %output
 | 
				
			||||||
                                                    "/share/fonts/truetype")))
 | 
					                                                        "/share/fonts/ttf"))
 | 
				
			||||||
 | 
					                           (otf-font-dir (string-append %output
 | 
				
			||||||
 | 
					                                                        "/share/fonts/otf"))
 | 
				
			||||||
 | 
					                           (woff-font-dir (string-append %output
 | 
				
			||||||
 | 
					                                                         "/share/fonts/woff")))
 | 
				
			||||||
                       (mkdir-p doc-dir)
 | 
					                       (mkdir-p doc-dir)
 | 
				
			||||||
                       (substitute* "Makefile"
 | 
					                       (substitute* "Makefile"
 | 
				
			||||||
                         (("\\$\\(TMPDIR\\)") doc-dir)
 | 
					                         (("\\$\\(TMPDIR\\)") doc-dir)
 | 
				
			||||||
                         (("sfd/\\*.ttf") ""))
 | 
					                         (("sfd/\\*.ttf") "")
 | 
				
			||||||
                       (system* "make" "ttftar")
 | 
					                         (("sfd/\\*.otf") "")
 | 
				
			||||||
                       (mkdir-p font-dir)
 | 
					                         (("sfd/\\*.woff") ""))
 | 
				
			||||||
 | 
					                       ;; XXX The FreeFont Makefile tries to use the current
 | 
				
			||||||
 | 
					                       ;; time and date as names for generated files, and fails
 | 
				
			||||||
 | 
					                       ;; silently. But the fonts are still installed, so we
 | 
				
			||||||
 | 
					                       ;; leave the issue alone for now.
 | 
				
			||||||
 | 
					                       ;; See <https://bugs.gnu.org/40783>
 | 
				
			||||||
 | 
					                       (system* "make" "ttftar" "otftar" "wofftar")
 | 
				
			||||||
 | 
					                       (mkdir-p ttf-font-dir)
 | 
				
			||||||
 | 
					                       (mkdir-p otf-font-dir)
 | 
				
			||||||
 | 
					                       (mkdir-p woff-font-dir)
 | 
				
			||||||
                       (for-each (lambda (file)
 | 
					                       (for-each (lambda (file)
 | 
				
			||||||
                                   (install-file file font-dir))
 | 
					                                   (install-file file ttf-font-dir))
 | 
				
			||||||
                                 (filter
 | 
					                                 (filter
 | 
				
			||||||
                                   (lambda (file) (string-suffix? "ttf" file))
 | 
					                                   (lambda (file) (string-suffix? "ttf" file))
 | 
				
			||||||
 | 
					                                   (find-files "." "")))
 | 
				
			||||||
 | 
					                       (for-each (lambda (file)
 | 
				
			||||||
 | 
					                                   (install-file file otf-font-dir))
 | 
				
			||||||
 | 
					                                 (filter
 | 
				
			||||||
 | 
					                                   (lambda (file) (string-suffix? "otf" file))
 | 
				
			||||||
 | 
					                                   (find-files "." "")))
 | 
				
			||||||
 | 
					                       (for-each (lambda (file)
 | 
				
			||||||
 | 
					                                   (install-file file woff-font-dir))
 | 
				
			||||||
 | 
					                                 (filter
 | 
				
			||||||
 | 
					                                   (lambda (file) (string-suffix? "woff" file))
 | 
				
			||||||
                                   (find-files "." "")))))))
 | 
					                                   (find-files "." "")))))))
 | 
				
			||||||
       #:test-target "tests"))
 | 
					       #:test-target "tests"))
 | 
				
			||||||
    ;; replace python 3 with python 2
 | 
					    ;; replace python 3 with python 2
 | 
				
			||||||
| 
						 | 
					@ -1670,3 +1696,43 @@ always uses Farsi digits, and does not include Latin glyphs from Roboto.
 | 
				
			||||||
           (license:x11-style           ; ...the Bitstream Vera typeface
 | 
					           (license:x11-style           ; ...the Bitstream Vera typeface
 | 
				
			||||||
            "file://LICENSE" "Bitstream Vera License")
 | 
					            "file://LICENSE" "Bitstream Vera License")
 | 
				
			||||||
           license:asl2.0))))           ; Latin glyphs from Roboto
 | 
					           license:asl2.0))))           ; Latin glyphs from Roboto
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public font-meera-inimai
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "font-meera-inimai")
 | 
				
			||||||
 | 
					    (version "2.0")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method git-fetch)
 | 
				
			||||||
 | 
					       (uri (git-reference
 | 
				
			||||||
 | 
					             (url "https://gitlab.com/smc/meera-inimai")
 | 
				
			||||||
 | 
					             (commit "0f39cdd7dbf1b6d1bed7df85834d33789dce20a7")))
 | 
				
			||||||
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32
 | 
				
			||||||
 | 
					         "1x5mhrpx24imh0r4l83mkaiszxgwi1q4ppyyvq63h3ddwk20cwdg"))))
 | 
				
			||||||
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("fontforge" ,fontforge)
 | 
				
			||||||
 | 
					       ("harfbuzz" ,harfbuzz "bin")
 | 
				
			||||||
 | 
					       ("python" ,python-minimal)
 | 
				
			||||||
 | 
					       ("python-fonttools" ,python-fonttools)
 | 
				
			||||||
 | 
					       ("python-google-brotli" ,python-google-brotli)))
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:make-flags (list "PY=python3"
 | 
				
			||||||
 | 
					                          (string-append "DESTDIR=" %output)
 | 
				
			||||||
 | 
					                          "fontpath=/share/fonts/truetype")
 | 
				
			||||||
 | 
					       #:test-target "test"
 | 
				
			||||||
 | 
					       #:phases
 | 
				
			||||||
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (delete 'configure))))
 | 
				
			||||||
 | 
					    (home-page "https://gitlab.com/smc/meera-inimai")
 | 
				
			||||||
 | 
					    (synopsis "Meera Inimai Tamil font")
 | 
				
			||||||
 | 
					    (description "Meera Inimai is a Unicode font for the Tamil Script.  Meera
 | 
				
			||||||
 | 
					Inimai is a san-serif typeface.  It is best used as a screen font for body
 | 
				
			||||||
 | 
					text.  It is also useful for body text of printed pamphlets or single page
 | 
				
			||||||
 | 
					designs.  Meera Inimai can be thought of as similar to Helvetica and its
 | 
				
			||||||
 | 
					variation Arial.  Tamil characters are inherently vertically-elliptical.  The
 | 
				
			||||||
 | 
					orthography of Roman glyphs of Meera Inimai are also based on this
 | 
				
			||||||
 | 
					characteristic so that they sit smoothly with the Tamil glyphs.")
 | 
				
			||||||
 | 
					    (license license:silofl1.1)))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -55,7 +55,7 @@
 | 
				
			||||||
       ("intltool" ,intltool)))
 | 
					       ("intltool" ,intltool)))
 | 
				
			||||||
    (inputs
 | 
					    (inputs
 | 
				
			||||||
     `(("cairo" ,cairo)
 | 
					     `(("cairo" ,cairo)
 | 
				
			||||||
       ("font-gnu-freefont-ttf" ,font-gnu-freefont-ttf)
 | 
					       ("font-gnu-freefont" ,font-gnu-freefont)
 | 
				
			||||||
       ("geocode-glib" ,geocode-glib)
 | 
					       ("geocode-glib" ,geocode-glib)
 | 
				
			||||||
       ("gexiv2" ,gexiv2)
 | 
					       ("gexiv2" ,gexiv2)
 | 
				
			||||||
       ("ghostscript" ,ghostscript)
 | 
					       ("ghostscript" ,ghostscript)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -27,7 +27,7 @@
 | 
				
			||||||
;;; Copyright © 2017, 2018 nee <nee-git@hidamari.blue>
 | 
					;;; Copyright © 2017, 2018 nee <nee-git@hidamari.blue>
 | 
				
			||||||
;;; Copyright © 2017 Chris Marusich <cmmarusich@gmail.com>
 | 
					;;; Copyright © 2017 Chris Marusich <cmmarusich@gmail.com>
 | 
				
			||||||
;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
 | 
					;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
 | 
				
			||||||
;;; Copyright © 2017 Brendan Tildesley <mail@brendan.scot>
 | 
					;;; Copyright © 2017, 2020 Brendan Tildesley <mail@brendan.scot>
 | 
				
			||||||
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 | 
					;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
 | 
				
			||||||
;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
 | 
					;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
 | 
				
			||||||
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
 | 
					;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
 | 
				
			||||||
| 
						 | 
					@ -162,9 +162,11 @@
 | 
				
			||||||
  #:use-module (gnu packages spice)
 | 
					  #:use-module (gnu packages spice)
 | 
				
			||||||
  #:use-module (gnu packages sqlite)
 | 
					  #:use-module (gnu packages sqlite)
 | 
				
			||||||
  #:use-module (gnu packages ssh)
 | 
					  #:use-module (gnu packages ssh)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages swig)
 | 
				
			||||||
  #:use-module (gnu packages tex)
 | 
					  #:use-module (gnu packages tex)
 | 
				
			||||||
  #:use-module (gnu packages time)
 | 
					  #:use-module (gnu packages time)
 | 
				
			||||||
  #:use-module (gnu packages tls)
 | 
					  #:use-module (gnu packages tls)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages valgrind)
 | 
				
			||||||
  #:use-module (gnu packages version-control)
 | 
					  #:use-module (gnu packages version-control)
 | 
				
			||||||
  #:use-module (gnu packages video)
 | 
					  #:use-module (gnu packages video)
 | 
				
			||||||
  #:use-module (gnu packages virtualization)
 | 
					  #:use-module (gnu packages virtualization)
 | 
				
			||||||
| 
						 | 
					@ -9985,6 +9987,135 @@ to.")
 | 
				
			||||||
              ;; snowball
 | 
					              ;; snowball
 | 
				
			||||||
              license:bsd-2))))
 | 
					              license:bsd-2))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public libratbag
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "libratbag")
 | 
				
			||||||
 | 
					    (version "0.13")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method git-fetch)
 | 
				
			||||||
 | 
					       (uri (git-reference
 | 
				
			||||||
 | 
					             (url "https://github.com/libratbag/libratbag.git")
 | 
				
			||||||
 | 
					             (commit (string-append "v" version))))
 | 
				
			||||||
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "18y8mfr63d91278m1kcid0wvrxa1sgjs8na9af1ks2n28ssvciwq"))))
 | 
				
			||||||
 | 
					    (build-system meson-build-system)
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:configure-flags
 | 
				
			||||||
 | 
					       (list "-Dsystemd=false"
 | 
				
			||||||
 | 
					             "-Dlogind-provider=elogind")
 | 
				
			||||||
 | 
					       #:phases
 | 
				
			||||||
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-after 'install 'wrap
 | 
				
			||||||
 | 
					           (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
				
			||||||
 | 
					             (let* ((out (assoc-ref outputs "out"))
 | 
				
			||||||
 | 
					                    (site (string-append
 | 
				
			||||||
 | 
					                           "/lib/python"
 | 
				
			||||||
 | 
					                           ,(version-major+minor (package-version python))
 | 
				
			||||||
 | 
					                           "/site-packages"))
 | 
				
			||||||
 | 
					                    (evdev (string-append
 | 
				
			||||||
 | 
					                            (assoc-ref inputs "python-evdev") site))
 | 
				
			||||||
 | 
					                    (pygo (string-append
 | 
				
			||||||
 | 
					                           (assoc-ref inputs "python-pygobject") site))
 | 
				
			||||||
 | 
					                    (python-wrap
 | 
				
			||||||
 | 
					                     `("PYTHONPATH" = (,evdev ,pygo))))
 | 
				
			||||||
 | 
					               (wrap-program (string-append out "/bin/" "ratbagctl")
 | 
				
			||||||
 | 
					                 python-wrap)
 | 
				
			||||||
 | 
					               #t))))))
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("check" ,check)
 | 
				
			||||||
 | 
					       ("pkg-config" ,pkg-config)
 | 
				
			||||||
 | 
					       ("swig" ,swig)
 | 
				
			||||||
 | 
					       ("valgrind" ,valgrind)))
 | 
				
			||||||
 | 
					    (inputs
 | 
				
			||||||
 | 
					     `(("glib" ,glib)
 | 
				
			||||||
 | 
					       ("json-glib" ,json-glib)
 | 
				
			||||||
 | 
					       ("libevdev" ,libevdev)
 | 
				
			||||||
 | 
					       ("libsystemd" ,elogind)
 | 
				
			||||||
 | 
					       ("libunistring" ,libunistring)
 | 
				
			||||||
 | 
					       ("python-evdev" ,python-evdev)
 | 
				
			||||||
 | 
					       ("python-pygobject" ,python-pygobject)
 | 
				
			||||||
 | 
					       ("udev" ,eudev)))
 | 
				
			||||||
 | 
					    (home-page "https://github.com/libratbag/libratbag")
 | 
				
			||||||
 | 
					    (synopsis "DBus daemon and utility for configuring gaming mice")
 | 
				
			||||||
 | 
					    (description "libratbag provides @command{ratbagd}, a DBus daemon to
 | 
				
			||||||
 | 
					configure input devices, mainly gaming mice.  The daemon provides a generic
 | 
				
			||||||
 | 
					way to access the various features exposed by these mice and abstracts away
 | 
				
			||||||
 | 
					hardware-specific and kernel-specific quirks.  There is also the
 | 
				
			||||||
 | 
					@command{ratbagctl} command line interface for configuring devices.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					libratbag currently supports devices from Logitech, Etekcity, GSkill, Roccat,
 | 
				
			||||||
 | 
					Steelseries.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The ratbagd DBus service can be enabled by adding the following service to
 | 
				
			||||||
 | 
					your operating-system definition:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (simple-service 'ratbagd dbus-root-service-type (list libratbag))")
 | 
				
			||||||
 | 
					    (license license:expat)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public piper
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "piper")
 | 
				
			||||||
 | 
					    (version "0.4")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method git-fetch)
 | 
				
			||||||
 | 
					       (uri (git-reference
 | 
				
			||||||
 | 
					             (url "https://github.com/libratbag/piper.git")
 | 
				
			||||||
 | 
					             (commit version)))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "17h06j8lxpbfygq8fzycl7lml4vv7r05bsyhh3gga2hp0zms4mvg"))))
 | 
				
			||||||
 | 
					    (build-system meson-build-system)
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("gettext" ,gettext-minimal)
 | 
				
			||||||
 | 
					       ("glib:bin" ,glib "bin")
 | 
				
			||||||
 | 
					       ("gobject-introspection" ,gobject-introspection)
 | 
				
			||||||
 | 
					       ("pkg-config" ,pkg-config)
 | 
				
			||||||
 | 
					       ("python-flake8" ,python-flake8)))
 | 
				
			||||||
 | 
					    (inputs
 | 
				
			||||||
 | 
					     `(("adwaita-icon-theme" ,adwaita-icon-theme)
 | 
				
			||||||
 | 
					       ("gtk" ,gtk+)
 | 
				
			||||||
 | 
					       ("gtk:bin" ,gtk+ "bin")
 | 
				
			||||||
 | 
					       ("librsvg" ,librsvg)
 | 
				
			||||||
 | 
					       ("python-evdev" ,python-evdev)
 | 
				
			||||||
 | 
					       ("python-lxml" ,python-lxml)
 | 
				
			||||||
 | 
					       ("python-pycairo" ,python-pycairo)
 | 
				
			||||||
 | 
					       ("python-pygobject" ,python-pygobject)))
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:imported-modules ((guix build python-build-system)
 | 
				
			||||||
 | 
					                           ,@%meson-build-system-modules)
 | 
				
			||||||
 | 
					       #:modules (((guix build python-build-system) #:prefix python:)
 | 
				
			||||||
 | 
					                  (guix build meson-build-system)
 | 
				
			||||||
 | 
					                  (guix build utils))
 | 
				
			||||||
 | 
					       #:phases
 | 
				
			||||||
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-after 'unpack 'dont-update-gtk-icon-cache
 | 
				
			||||||
 | 
					           (lambda _
 | 
				
			||||||
 | 
					             (substitute* "meson.build"
 | 
				
			||||||
 | 
					               (("meson.add_install_script('meson_install.sh')") ""))
 | 
				
			||||||
 | 
					             #t))
 | 
				
			||||||
 | 
					         ;; TODO: Switch to wrap-script when it is fixed.
 | 
				
			||||||
 | 
					         (add-after 'install 'wrap-python
 | 
				
			||||||
 | 
					           (assoc-ref python:%standard-phases 'wrap))
 | 
				
			||||||
 | 
					         (add-after 'wrap-python 'wrap
 | 
				
			||||||
 | 
					           (lambda* (#:key outputs #:allow-other-keys)
 | 
				
			||||||
 | 
					             (wrap-program
 | 
				
			||||||
 | 
					                 (string-append (assoc-ref outputs "out" )"/bin/piper")
 | 
				
			||||||
 | 
					               `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
 | 
				
			||||||
 | 
					             #t)))))
 | 
				
			||||||
 | 
					    (home-page "https://github.com/libratbag/piper/")
 | 
				
			||||||
 | 
					    (synopsis "Configure bindings and LEDs on gaming mice")
 | 
				
			||||||
 | 
					    (description "Piper is a GTK+ application for configuring gaming mice with
 | 
				
			||||||
 | 
					onboard configuration for key bindings via libratbag.  Piper requires
 | 
				
			||||||
 | 
					a @command{ratbagd} daemon running with root privileges.  It can be run
 | 
				
			||||||
 | 
					manually as root, but is preferably configured as a DBus service that can
 | 
				
			||||||
 | 
					launch on demand.  This can be configured by enabling the following service,
 | 
				
			||||||
 | 
					provided there is a DBus service present:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  (simple-service 'ratbagd dbus-root-service-type (list libratbag))")
 | 
				
			||||||
 | 
					    (license license:gpl2)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public parlatype
 | 
					(define-public parlatype
 | 
				
			||||||
  ;; This is one commit away from 2.0, because the latter introduced
 | 
					  ;; This is one commit away from 2.0, because the latter introduced
 | 
				
			||||||
  ;; a regression in ASR.
 | 
					  ;; a regression in ASR.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,6 @@
 | 
				
			||||||
;;; GNU Guix --- Functional package management for GNU
 | 
					;;; GNU Guix --- Functional package management for GNU
 | 
				
			||||||
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 | 
					;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 | 
				
			||||||
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
					;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 | 
				
			||||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
					;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
				
			||||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
					;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
 | 
					;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
 | 
				
			||||||
| 
						 | 
					@ -154,7 +154,7 @@ between two other data points.")
 | 
				
			||||||
(define-public gama
 | 
					(define-public gama
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "gama")
 | 
					    (name "gama")
 | 
				
			||||||
    (version "2.07")
 | 
					    (version "2.08")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
      (origin
 | 
					      (origin
 | 
				
			||||||
        (method url-fetch)
 | 
					        (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -162,7 +162,7 @@ between two other data points.")
 | 
				
			||||||
                            version ".tar.gz"))
 | 
					                            version ".tar.gz"))
 | 
				
			||||||
        (sha256
 | 
					        (sha256
 | 
				
			||||||
         (base32
 | 
					         (base32
 | 
				
			||||||
          "0nmc6mkd55nryfffq5k9c09dhkbq6bfs06af8ammhbh5jzdn3s36"))))
 | 
					          "0fic6a3a83hgj3gj85bin3wd6ghgi2qg76d6jfwckamab0hlv7wx"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (arguments '(#:parallel-tests? #f)) ; race condition
 | 
					    (arguments '(#:parallel-tests? #f)) ; race condition
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,7 +9,7 @@
 | 
				
			||||||
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
 | 
					;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
 | 
				
			||||||
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 | 
					;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 | 
				
			||||||
;;; Coypright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 | 
					;;; Coypright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 | 
				
			||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 | 
					;;; Copyright © 2016, 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
 | 
				
			||||||
;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 | 
					;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 | 
				
			||||||
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 | 
					;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
 | 
				
			||||||
;;; Copyright © 2016 Patrick Hetu <patrick.hetu@auf.org>
 | 
					;;; Copyright © 2016 Patrick Hetu <patrick.hetu@auf.org>
 | 
				
			||||||
| 
						 | 
					@ -1763,29 +1763,23 @@ Parcellite and adds bugfixes and features.")
 | 
				
			||||||
(define-public graphene
 | 
					(define-public graphene
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "graphene")
 | 
					    (name "graphene")
 | 
				
			||||||
    (version "1.6.0")
 | 
					    (version "1.10.0")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
              (uri (string-append
 | 
					              (uri (string-append "https://github.com/ebassi/graphene/releases/"
 | 
				
			||||||
                    "https://github.com/ebassi/graphene/archive/"
 | 
					                                  "download/" version
 | 
				
			||||||
                    version ".tar.gz"))
 | 
					                                  "/graphene-" version ".tar.xz"))
 | 
				
			||||||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
					 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32 "1zd2daj7y590wnzn4jw0niyc4fnzgxrcl9i7nwhy8b25ks2hz5wq"))))
 | 
					               (base32 "16b4hz73bnrgv5v8n96dczkd6xp9qc06lrl43zln3jnl3psrfva0"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system meson-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:configure-flags '("--enable-introspection=yes")))
 | 
					     `(#:configure-flags '("-Dinstalled_tests=false")))
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
     `(("autoconf" ,autoconf)
 | 
					     `(("gobject-introspection" ,gobject-introspection)
 | 
				
			||||||
       ("which" ,which)
 | 
					       ("pkg-config" ,pkg-config)))
 | 
				
			||||||
       ("pkg-config" ,pkg-config)
 | 
					 | 
				
			||||||
       ("automake" ,automake)
 | 
					 | 
				
			||||||
       ("libtool" ,libtool)))
 | 
					 | 
				
			||||||
    (inputs
 | 
					    (inputs
 | 
				
			||||||
     `(("python" ,python)
 | 
					     `(("python" ,python)
 | 
				
			||||||
       ("python-2" ,python-2)
 | 
					       ("glib" ,glib)))
 | 
				
			||||||
       ("glib" ,glib)
 | 
					 | 
				
			||||||
       ("gobject-introspection" ,gobject-introspection)))
 | 
					 | 
				
			||||||
    (home-page "https://ebassi.github.io/graphene/")
 | 
					    (home-page "https://ebassi.github.io/graphene/")
 | 
				
			||||||
    (synopsis "Thin layer of graphic data types")
 | 
					    (synopsis "Thin layer of graphic data types")
 | 
				
			||||||
    (description "This library provides graphic types and their relative API;
 | 
					    (description "This library provides graphic types and their relative API;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -417,6 +417,7 @@ and then run @command{scm example.scm}.")
 | 
				
			||||||
library for GNU Guile based on the actor model.
 | 
					library for GNU Guile based on the actor model.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Note that 8sync is only available for Guile 2.2.")
 | 
					Note that 8sync is only available for Guile 2.2.")
 | 
				
			||||||
 | 
					    (properties '((upstream-name . "8sync")))
 | 
				
			||||||
    (license license:lgpl3+)))
 | 
					    (license license:lgpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public guile-daemon
 | 
					(define-public guile-daemon
 | 
				
			||||||
| 
						 | 
					@ -2250,11 +2251,6 @@ is no support for parsing block and inline level HTML.")
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     '(#:phases (modify-phases %standard-phases
 | 
					     '(#:phases (modify-phases %standard-phases
 | 
				
			||||||
                  (add-after 'unpack 'fix-finding-guile
 | 
					 | 
				
			||||||
                    (lambda _
 | 
					 | 
				
			||||||
                      (substitute* "configure"
 | 
					 | 
				
			||||||
                        (("2\\.0") "3.0 2.2 2.0"))
 | 
					 | 
				
			||||||
                      #t))
 | 
					 | 
				
			||||||
                  (add-before 'check 'adjust-tests
 | 
					                  (add-before 'check 'adjust-tests
 | 
				
			||||||
                    (lambda _
 | 
					                    (lambda _
 | 
				
			||||||
                      (substitute* "tests/job-specifier.scm"
 | 
					                      (substitute* "tests/job-specifier.scm"
 | 
				
			||||||
| 
						 | 
					@ -3242,21 +3238,19 @@ over, or update a value in arbitrary data structures.")
 | 
				
			||||||
      (license license:gpl3+))))
 | 
					      (license license:gpl3+))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public guile-xapian
 | 
					(define-public guile-xapian
 | 
				
			||||||
  (let ((commit "ede26b808188eb4d14c6b4181c933dfc09c0a22e")
 | 
					 | 
				
			||||||
        (revision "0"))
 | 
					 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "guile-xapian")
 | 
					    (name "guile-xapian")
 | 
				
			||||||
      (version (git-version "0" revision commit))
 | 
					    (version "0.1.0")
 | 
				
			||||||
    (home-page "https://git.systemreboot.net/guile-xapian")
 | 
					    (home-page "https://git.systemreboot.net/guile-xapian")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method git-fetch)
 | 
					       (method git-fetch)
 | 
				
			||||||
       (uri (git-reference (url home-page)
 | 
					       (uri (git-reference (url home-page)
 | 
				
			||||||
                             (commit commit)))
 | 
					                           (commit (string-append "v" version))))
 | 
				
			||||||
       (file-name (git-file-name name version))
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
           "07a9fmqi3pm6mbbpzi01mjwrqwnljs2rnc3603sq49dz4lf663gb"))))
 | 
					         "16k61f1jn3g48jaf3730b9l0izr5j933jzyri73nmcnjd09gm35i"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     '(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings
 | 
					     '(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings
 | 
				
			||||||
| 
						 | 
					@ -3277,7 +3271,7 @@ search engine library.  Xapian is a highly adaptable toolkit which allows
 | 
				
			||||||
developers to easily add advanced indexing and search facilities to their own
 | 
					developers to easily add advanced indexing and search facilities to their own
 | 
				
			||||||
applications.  It has built-in support for several families of weighting
 | 
					applications.  It has built-in support for several families of weighting
 | 
				
			||||||
models and also supports a rich set of boolean query operators.")
 | 
					models and also supports a rich set of boolean query operators.")
 | 
				
			||||||
      (license license:gpl2+))))
 | 
					    (license license:gpl2+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public guile3.0-xapian
 | 
					(define-public guile3.0-xapian
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9123,12 +9123,14 @@ those in Perl and JavaScript.")
 | 
				
			||||||
    (name "java-fest-util")
 | 
					    (name "java-fest-util")
 | 
				
			||||||
    (version "1.2.5")
 | 
					    (version "1.2.5")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method git-fetch)
 | 
				
			||||||
              (uri (string-append "https://github.com/alexruiz/fest-util/"
 | 
					              (uri (git-reference
 | 
				
			||||||
                                  "archive/fest-util-" version ".tar.gz"))
 | 
					                     (url "https://github.com/alexruiz/fest-util/")
 | 
				
			||||||
 | 
					                     (commit (string-append "fest-util-" version))))
 | 
				
			||||||
 | 
					              (file-name (git-file-name name version))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "05g6hljz5mdaakk8d7g32klbhz9bdwp3qlj6rdaggdidxs3x1sb8"))))
 | 
					                "02kgal7v85snyyvcsxvn4qphid455f4smh2wri1il8d9asw0djbz"))))
 | 
				
			||||||
    (build-system ant-build-system)
 | 
					    (build-system ant-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:jar-name "java-fest-util.jar"
 | 
					     `(#:jar-name "java-fest-util.jar"
 | 
				
			||||||
| 
						 | 
					@ -9146,12 +9148,14 @@ those in Perl and JavaScript.")
 | 
				
			||||||
    (name "java-fest-test")
 | 
					    (name "java-fest-test")
 | 
				
			||||||
    (version "2.1.0")
 | 
					    (version "2.1.0")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method git-fetch)
 | 
				
			||||||
              (uri (string-append "https://github.com/alexruiz/fest-test/"
 | 
					              (uri (git-reference
 | 
				
			||||||
                                  "archive/fest-test-" version ".tar.gz"))
 | 
					                     (url "https://github.com/alexruiz/fest-test/")
 | 
				
			||||||
 | 
					                     (commit (string-append "fest-test-" version))))
 | 
				
			||||||
 | 
					              (file-name (git-file-name name version))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "1rxfbw6l9vc65iy1x3fb617qc6y4w2k430pgf1mfbxfdlxbm0f7g"))))
 | 
					                "0mg1d2jfh7kbx2c40dchbjr6d8pv59snsyb13mfxsr7xk5n69qbn"))))
 | 
				
			||||||
    (build-system ant-build-system)
 | 
					    (build-system ant-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:jar-name "java-fest-test.jar"
 | 
					     `(#:jar-name "java-fest-test.jar"
 | 
				
			||||||
| 
						 | 
					@ -9169,12 +9173,14 @@ those in Perl and JavaScript.")
 | 
				
			||||||
    (name "java-fest-assert")
 | 
					    (name "java-fest-assert")
 | 
				
			||||||
    (version "2.0M10")
 | 
					    (version "2.0M10")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method git-fetch)
 | 
				
			||||||
              (uri (string-append "https://github.com/alexruiz/fest-assert-2.x/"
 | 
					              (uri (git-reference
 | 
				
			||||||
                                  "archive/fest-assert-core-" version ".tar.gz"))
 | 
					                     (url "https://github.com/alexruiz/fest-assert-2.x/")
 | 
				
			||||||
 | 
					                     (commit (string-append "fest-assert-core-" version))))
 | 
				
			||||||
 | 
					              (file-name (git-file-name name version))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "1bi0iqavikzww6rxvz5jyg7y6bflv95s6ibryxx0xfcxrrw6i5lw"))))
 | 
					                "1cp8zzyag3s85fz2w68sda9zzaal1y5f9wl8g72wkm12an40w6by"))))
 | 
				
			||||||
    (build-system ant-build-system)
 | 
					    (build-system ant-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:jar-name "java-fest-assert.jar"
 | 
					     `(#:jar-name "java-fest-assert.jar"
 | 
				
			||||||
| 
						 | 
					@ -9445,13 +9451,14 @@ by technical operatives or consultants working with enterprise platforms.")
 | 
				
			||||||
    (name "java-lz4")
 | 
					    (name "java-lz4")
 | 
				
			||||||
    (version "1.4.0")
 | 
					    (version "1.4.0")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method git-fetch)
 | 
				
			||||||
              (uri (string-append "https://github.com/lz4/lz4-java/archive/"
 | 
					              (uri (git-reference
 | 
				
			||||||
                                  version ".tar.gz"))
 | 
					                     (url "https://github.com/lz4/lz4-java")
 | 
				
			||||||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
					                     (commit version)))
 | 
				
			||||||
 | 
					              (file-name (git-file-name name version))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "096dm57p2lzqk28n0j2p52x2j3cvnsd2dfqn43n7vbwrkjsy7y54"))))
 | 
					                "0ydjakhv3cz34mfvv14qrh2ksdxifgjwwagjy7r46qr3f68hnf6y"))))
 | 
				
			||||||
    (build-system ant-build-system)
 | 
					    (build-system ant-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:jar-name "lz4.jar"
 | 
					     `(#:jar-name "lz4.jar"
 | 
				
			||||||
| 
						 | 
					@ -9460,6 +9467,10 @@ by technical operatives or consultants working with enterprise platforms.")
 | 
				
			||||||
       #:tests? #f; FIXME: requires more dependencies
 | 
					       #:tests? #f; FIXME: requires more dependencies
 | 
				
			||||||
       #:phases
 | 
					       #:phases
 | 
				
			||||||
       (modify-phases %standard-phases
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-after 'unpack 'make-files-writable
 | 
				
			||||||
 | 
					           (lambda _
 | 
				
			||||||
 | 
					             (for-each make-file-writable (find-files "."))
 | 
				
			||||||
 | 
					             #t))
 | 
				
			||||||
         (add-before 'configure 'generate-source
 | 
					         (add-before 'configure 'generate-source
 | 
				
			||||||
           (lambda _
 | 
					           (lambda _
 | 
				
			||||||
             (with-directory-excursion "src/build/source_templates"
 | 
					             (with-directory-excursion "src/build/source_templates"
 | 
				
			||||||
| 
						 | 
					@ -9478,13 +9489,15 @@ algorithms and xxHash hashing algorithm.")
 | 
				
			||||||
    (name "java-bouncycastle")
 | 
					    (name "java-bouncycastle")
 | 
				
			||||||
    (version "1.60")
 | 
					    (version "1.60")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method git-fetch)
 | 
				
			||||||
              (uri (string-append "https://github.com/bcgit/bc-java/archive/r"
 | 
					              (uri (git-reference
 | 
				
			||||||
                                  (substring version 0 1) "v"
 | 
					                     (url "http://git.bouncycastle.org/repositories/bc-java")
 | 
				
			||||||
                                  (substring version 2 4) ".tar.gz"))
 | 
					                     ;(url "https://github.com/bcgit/bc-java")
 | 
				
			||||||
 | 
					                     (commit (string-append "r1rv" (substring version 2 4)))))
 | 
				
			||||||
 | 
					              (file-name (git-file-name name version))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "0v434513y708qc87k4xz13p2kzydc736lk3ks67df9mg11s7hchv"))
 | 
					                "1m921a1ac2dl797ffzg3d4j97ch308f25spb4jgsj3npfmmys5gb"))
 | 
				
			||||||
              (modules '((guix build utils)))
 | 
					              (modules '((guix build utils)))
 | 
				
			||||||
              (snippet
 | 
					              (snippet
 | 
				
			||||||
               '(begin
 | 
					               '(begin
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -51,6 +51,7 @@
 | 
				
			||||||
  #:use-module (guix download)
 | 
					  #:use-module (guix download)
 | 
				
			||||||
  #:use-module (guix build-system cmake)
 | 
					  #:use-module (guix build-system cmake)
 | 
				
			||||||
  #:use-module (guix build-system qt)
 | 
					  #:use-module (guix build-system qt)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system glib-or-gtk)
 | 
				
			||||||
  #:use-module (guix build-system gnu))
 | 
					  #:use-module (guix build-system gnu))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public bcunit
 | 
					(define-public bcunit
 | 
				
			||||||
| 
						 | 
					@ -422,8 +423,17 @@ including media capture, encoding and decoding, and rendering.")
 | 
				
			||||||
             "-DENABLE_STATIC=NO"       ; Not required
 | 
					             "-DENABLE_STATIC=NO"       ; Not required
 | 
				
			||||||
             "-DENABLE_STRICT=NO"
 | 
					             "-DENABLE_STRICT=NO"
 | 
				
			||||||
             "-DENABLE_GTK_UI=YES")     ; for legacy UI
 | 
					             "-DENABLE_GTK_UI=YES")     ; for legacy UI
 | 
				
			||||||
 | 
					       #:imported-modules (,@%cmake-build-system-modules
 | 
				
			||||||
 | 
					                           (guix build glib-or-gtk-build-system))
 | 
				
			||||||
 | 
					       #:modules ((guix build cmake-build-system)
 | 
				
			||||||
 | 
					                  ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
 | 
				
			||||||
 | 
					                  (guix build utils))
 | 
				
			||||||
       #:phases
 | 
					       #:phases
 | 
				
			||||||
       (modify-phases %standard-phases
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-after 'install 'glib-or-gtk-compile-schemas
 | 
				
			||||||
 | 
					           (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
 | 
				
			||||||
 | 
					         (add-after 'install 'glib-or-gtk-wrap
 | 
				
			||||||
 | 
					           (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
 | 
				
			||||||
         (add-after 'unpack 'patch
 | 
					         (add-after 'unpack 'patch
 | 
				
			||||||
           (lambda _
 | 
					           (lambda _
 | 
				
			||||||
             (substitute* "gtk/main.c"
 | 
					             (substitute* "gtk/main.c"
 | 
				
			||||||
| 
						 | 
					@ -443,6 +453,7 @@ including media capture, encoding and decoding, and rendering.")
 | 
				
			||||||
       ("belcard" ,belcard)
 | 
					       ("belcard" ,belcard)
 | 
				
			||||||
       ("bellesip" ,belle-sip)
 | 
					       ("bellesip" ,belle-sip)
 | 
				
			||||||
       ("bzrtp", bzrtp)
 | 
					       ("bzrtp", bzrtp)
 | 
				
			||||||
 | 
					       ("hicolor-icon-theme" ,hicolor-icon-theme) ; Hard-coded for GTK UI
 | 
				
			||||||
       ("glib" ,glib)
 | 
					       ("glib" ,glib)
 | 
				
			||||||
       ("gtk2" ,gtk+-2)
 | 
					       ("gtk2" ,gtk+-2)
 | 
				
			||||||
       ("mediastreamer2" ,mediastreamer2)
 | 
					       ("mediastreamer2" ,mediastreamer2)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,7 +28,7 @@
 | 
				
			||||||
;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 | 
					;;; Copyright © 2017 nee <nee-git@hidamari.blue>
 | 
				
			||||||
;;; Copyright © 2017 Dave Love <fx@gnu.org>
 | 
					;;; Copyright © 2017 Dave Love <fx@gnu.org>
 | 
				
			||||||
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 | 
					;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 | 
				
			||||||
;;; Copyright © 2018 Brendan Tildesley <mail@brendan.scot>
 | 
					;;; Copyright © 2018, 2020 Brendan Tildesley <mail@brendan.scot>
 | 
				
			||||||
;;; Copyright © 2018 Manuel Graf <graf@init.at>
 | 
					;;; Copyright © 2018 Manuel Graf <graf@init.at>
 | 
				
			||||||
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
 | 
					;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
 | 
				
			||||||
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
 | 
					;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
 | 
				
			||||||
| 
						 | 
					@ -369,26 +369,26 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
 | 
				
			||||||
    (sha256 hash)))
 | 
					    (sha256 hash)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public linux-libre-5.6-version "5.6.5")
 | 
					(define-public linux-libre-5.6-version "5.6.6")
 | 
				
			||||||
(define-public linux-libre-5.6-pristine-source
 | 
					(define-public linux-libre-5.6-pristine-source
 | 
				
			||||||
  (let ((version linux-libre-5.6-version)
 | 
					  (let ((version linux-libre-5.6-version)
 | 
				
			||||||
        (hash (base32 "1rjjkcmzsj9azggh960qnk2x44ns475b8nbd4nxazrz1rgdx76zp")))
 | 
					        (hash (base32 "1m3blvkma08v5y11jh0vhf4sr7jbcylkh15bssb5dgp40p8cx134")))
 | 
				
			||||||
   (make-linux-libre-source version
 | 
					   (make-linux-libre-source version
 | 
				
			||||||
                            (%upstream-linux-source version hash)
 | 
					                            (%upstream-linux-source version hash)
 | 
				
			||||||
                            deblob-scripts-5.6)))
 | 
					                            deblob-scripts-5.6)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public linux-libre-5.4-version "5.4.33")
 | 
					(define-public linux-libre-5.4-version "5.4.34")
 | 
				
			||||||
(define-public linux-libre-5.4-pristine-source
 | 
					(define-public linux-libre-5.4-pristine-source
 | 
				
			||||||
  (let ((version linux-libre-5.4-version)
 | 
					  (let ((version linux-libre-5.4-version)
 | 
				
			||||||
        (hash (base32 "0q9q48ij6vppfcrdf7fr24pvpwsd13pxjkdni6rnjq9a60hrcmxm")))
 | 
					        (hash (base32 "1ljcsrw9jknw2d9hb0yfr1pwy85l8z4rqycgd0kad9mb9lrw2glh")))
 | 
				
			||||||
   (make-linux-libre-source version
 | 
					   (make-linux-libre-source version
 | 
				
			||||||
                            (%upstream-linux-source version hash)
 | 
					                            (%upstream-linux-source version hash)
 | 
				
			||||||
                            deblob-scripts-5.4)))
 | 
					                            deblob-scripts-5.4)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public linux-libre-4.19-version "4.19.116")
 | 
					(define-public linux-libre-4.19-version "4.19.117")
 | 
				
			||||||
(define-public linux-libre-4.19-pristine-source
 | 
					(define-public linux-libre-4.19-pristine-source
 | 
				
			||||||
  (let ((version linux-libre-4.19-version)
 | 
					  (let ((version linux-libre-4.19-version)
 | 
				
			||||||
        (hash (base32 "0r3vdc3npl1bn06w9v6wsq7d5mm7bnhm9wsz36pb9ar3xhimvrlf")))
 | 
					        (hash (base32 "12xc1pwhwq4vp67hmn7hdynl4ik76cni79356hpzf1lbiqlrya6n")))
 | 
				
			||||||
    (make-linux-libre-source version
 | 
					    (make-linux-libre-source version
 | 
				
			||||||
                             (%upstream-linux-source version hash)
 | 
					                             (%upstream-linux-source version hash)
 | 
				
			||||||
                             deblob-scripts-4.19)))
 | 
					                             deblob-scripts-4.19)))
 | 
				
			||||||
| 
						 | 
					@ -3030,6 +3030,43 @@ device nodes from /dev/, handles hotplug events and loads drivers at boot
 | 
				
			||||||
time.")
 | 
					time.")
 | 
				
			||||||
    (license license:gpl2+)))
 | 
					    (license license:gpl2+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public python-evdev
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "python-evdev")
 | 
				
			||||||
 | 
					    (version "1.3.0")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri (pypi-uri "evdev" version))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "0kb3636yaw9l8xi8s184w0r0n9ic5dw3b8hx048jf9fpzss4kimi"))))
 | 
				
			||||||
 | 
					    (build-system python-build-system)
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("kernel-headers" ,linux-libre-headers)))
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:tests? #f                      ;no rule for tests
 | 
				
			||||||
 | 
					       #:phases
 | 
				
			||||||
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-before 'build 'fix-hard-coded-directory
 | 
				
			||||||
 | 
					           (lambda* (#:key inputs #:allow-other-keys)
 | 
				
			||||||
 | 
					             (substitute* "setup.py"
 | 
				
			||||||
 | 
					               (("/usr/include/linux")
 | 
				
			||||||
 | 
					                (string-append
 | 
				
			||||||
 | 
					                 (assoc-ref inputs "kernel-headers") "/include/linux")))
 | 
				
			||||||
 | 
					             #t)))))
 | 
				
			||||||
 | 
					    (home-page "https://github.com/gvalkov/python-evdev")
 | 
				
			||||||
 | 
					    (synopsis "Bindings to the Linux input handling subsystem")
 | 
				
			||||||
 | 
					    (description
 | 
				
			||||||
 | 
					     "Python-evdev provides bindings to the generic input event interface in
 | 
				
			||||||
 | 
					Linux.  The @code{evdev} interface serves the purpose of passing events
 | 
				
			||||||
 | 
					generated in the kernel directly to userspace through character devices that
 | 
				
			||||||
 | 
					are typically located in @file{/dev/input/}.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This package also comes with bindings to @code{uinput}, the userspace input
 | 
				
			||||||
 | 
					subsystem.  @code{uinput} allows userspace programs to create and handle input
 | 
				
			||||||
 | 
					devices that can inject events directly into the input subsystem.")
 | 
				
			||||||
 | 
					    (license license:bsd-3)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public lvm2
 | 
					(define-public lvm2
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "lvm2")
 | 
					    (name "lvm2")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -717,7 +717,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
 | 
				
			||||||
(define-public mu
 | 
					(define-public mu
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "mu")
 | 
					    (name "mu")
 | 
				
			||||||
    (version "1.2.0")
 | 
					    (version "1.4")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
              (uri (string-append "https://github.com/djcb/mu/releases/"
 | 
					              (uri (string-append "https://github.com/djcb/mu/releases/"
 | 
				
			||||||
| 
						 | 
					@ -725,7 +725,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
 | 
				
			||||||
                                  "mu-" version ".tar.xz"))
 | 
					                                  "mu-" version ".tar.xz"))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "0fh5bxvhjqv1p9z783lym8y1k3p4jcc3wg6wf7zl8s6w8krcfd7n"))))
 | 
					                "1ay68rhlngnp2zm6wdmzgr1fsal3spz61swcxlaz5y215qvgjfpy"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
     `(("pkg-config" ,pkg-config)
 | 
					     `(("pkg-config" ,pkg-config)
 | 
				
			||||||
| 
						 | 
					@ -760,13 +760,14 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
 | 
				
			||||||
                            "guile/mu/Makefile.in")
 | 
					                            "guile/mu/Makefile.in")
 | 
				
			||||||
               (("share/guile/site/2.0/") "share/guile/site/2.2/"))
 | 
					               (("share/guile/site/2.0/") "share/guile/site/2.2/"))
 | 
				
			||||||
             #t))
 | 
					             #t))
 | 
				
			||||||
         (add-after 'patch-configure 'fix-date-tests
 | 
					         (add-after 'unpack 'patch-bin-sh-in-tests
 | 
				
			||||||
           ;; Loosen test tolerances to prevent failures caused by daylight
 | 
					 | 
				
			||||||
           ;; saving time (DST).  See: https://github.com/djcb/mu/issues/1214.
 | 
					 | 
				
			||||||
           (lambda _
 | 
					           (lambda _
 | 
				
			||||||
             (substitute* "lib/parser/test-utils.cc"
 | 
					             (substitute* '("guile/tests/test-mu-guile.c"
 | 
				
			||||||
               (("\\* 60 \\* 60, 1 },")
 | 
					                            "mu/test-mu-cmd.c"
 | 
				
			||||||
                "* 60 * 60, 3600 + 1 },"))
 | 
					                            "mu/test-mu-cmd-cfind.c"
 | 
				
			||||||
 | 
					                            "mu/test-mu-query.c"
 | 
				
			||||||
 | 
					                            "mu/test-mu-threads.c")
 | 
				
			||||||
 | 
					               (("/bin/sh") (which "sh")))
 | 
				
			||||||
             #t))
 | 
					             #t))
 | 
				
			||||||
         (add-before 'install 'fix-ffi
 | 
					         (add-before 'install 'fix-ffi
 | 
				
			||||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
					           (lambda* (#:key outputs #:allow-other-keys)
 | 
				
			||||||
| 
						 | 
					@ -798,53 +799,6 @@ messages you need; in addition, it allows you to view messages, extract
 | 
				
			||||||
attachments, create new maildirs, and so on.")
 | 
					attachments, create new maildirs, and so on.")
 | 
				
			||||||
    (license gpl3+)))
 | 
					    (license gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define mumimu
 | 
					 | 
				
			||||||
  ;; This is a fork of mu for use in Mumi that stores message bug IDs in its
 | 
					 | 
				
			||||||
  ;; database.  It also renames the library to "mumimu" to avoid confusion.
 | 
					 | 
				
			||||||
  (let ((commit "6b42431052c7cc9a2e147938e1b67f14a93e4ee5")
 | 
					 | 
				
			||||||
        (revision "2"))
 | 
					 | 
				
			||||||
    (package
 | 
					 | 
				
			||||||
      (inherit mu)
 | 
					 | 
				
			||||||
      (name "mumimu")
 | 
					 | 
				
			||||||
      (version (git-version (package-version mu) revision commit))
 | 
					 | 
				
			||||||
      (source (origin
 | 
					 | 
				
			||||||
                (method git-fetch)
 | 
					 | 
				
			||||||
                (uri (git-reference
 | 
					 | 
				
			||||||
                      (url "https://git.elephly.net/software/mumimu.git")
 | 
					 | 
				
			||||||
                      (commit commit)))
 | 
					 | 
				
			||||||
                (file-name (git-file-name name version))
 | 
					 | 
				
			||||||
                (sha256
 | 
					 | 
				
			||||||
                 (base32
 | 
					 | 
				
			||||||
                  "044scxmjrckidqx935yza3aqnjyzrmhyvgx2gs2jyf68hl2qzb89"))))
 | 
					 | 
				
			||||||
      (arguments
 | 
					 | 
				
			||||||
       (substitute-keyword-arguments (package-arguments mu)
 | 
					 | 
				
			||||||
         ((#:tests? anything '())
 | 
					 | 
				
			||||||
          #f)
 | 
					 | 
				
			||||||
         ((#:phases phases)
 | 
					 | 
				
			||||||
          `(modify-phases ,phases
 | 
					 | 
				
			||||||
             (replace 'patch-configure
 | 
					 | 
				
			||||||
               (lambda _ (delete-file "autogen.sh") #t))
 | 
					 | 
				
			||||||
             (replace 'fix-ffi
 | 
					 | 
				
			||||||
               (lambda* (#:key outputs #:allow-other-keys)
 | 
					 | 
				
			||||||
                 (substitute* "guile/mumimu.scm"
 | 
					 | 
				
			||||||
                   (("\"libguile-mu\"")
 | 
					 | 
				
			||||||
                    (format #f "\"~a/lib/libguile-mumimu\""
 | 
					 | 
				
			||||||
                            (assoc-ref outputs "out"))))
 | 
					 | 
				
			||||||
                 #t))
 | 
					 | 
				
			||||||
             (delete 'install-emacs-autoloads)))
 | 
					 | 
				
			||||||
         ((#:configure-flags flags)
 | 
					 | 
				
			||||||
          '("--disable-gtk"
 | 
					 | 
				
			||||||
            "--disable-webkit"
 | 
					 | 
				
			||||||
            "--disable-mu4e"))))
 | 
					 | 
				
			||||||
      (native-inputs
 | 
					 | 
				
			||||||
       `(("pkg-config" ,pkg-config)
 | 
					 | 
				
			||||||
         ("autoconf" ,autoconf)
 | 
					 | 
				
			||||||
         ("automake" ,automake)
 | 
					 | 
				
			||||||
         ("libtool" ,libtool)
 | 
					 | 
				
			||||||
         ("glib" ,glib "bin")
 | 
					 | 
				
			||||||
         ("tzdata" ,tzdata-for-tests)
 | 
					 | 
				
			||||||
         ("texinfo" ,texinfo))))))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(define-public alot
 | 
					(define-public alot
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "alot")
 | 
					    (name "alot")
 | 
				
			||||||
| 
						 | 
					@ -3006,8 +2960,8 @@ replacement for the @code{urlview} program.")
 | 
				
			||||||
    (license gpl2+)))
 | 
					    (license gpl2+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public mumi
 | 
					(define-public mumi
 | 
				
			||||||
  (let ((commit "c85015dac8110bd7a4c37375b9eb05ebeadedf74")
 | 
					  (let ((commit "9175199e9039b9a1dbc5e1eafa05b9c618416f3b")
 | 
				
			||||||
        (revision "15"))
 | 
					        (revision "16"))
 | 
				
			||||||
    (package
 | 
					    (package
 | 
				
			||||||
      (name "mumi")
 | 
					      (name "mumi")
 | 
				
			||||||
      (version (git-version "0.0.0" revision commit))
 | 
					      (version (git-version "0.0.0" revision commit))
 | 
				
			||||||
| 
						 | 
					@ -3019,7 +2973,7 @@ replacement for the @code{urlview} program.")
 | 
				
			||||||
                (file-name (git-file-name name version))
 | 
					                (file-name (git-file-name name version))
 | 
				
			||||||
                (sha256
 | 
					                (sha256
 | 
				
			||||||
                 (base32
 | 
					                 (base32
 | 
				
			||||||
                  "05nma73kqnva6ci92aq8jb3718ry5dz3sd64ibpxn5w77z5kpwr7"))))
 | 
					                  "1v0i9h3dw0irc92flmk3wk72l0kiymf82fashklbyhk7mr968zx3"))))
 | 
				
			||||||
      (build-system gnu-build-system)
 | 
					      (build-system gnu-build-system)
 | 
				
			||||||
      (arguments
 | 
					      (arguments
 | 
				
			||||||
       `(#:modules ((guix build gnu-build-system)
 | 
					       `(#:modules ((guix build gnu-build-system)
 | 
				
			||||||
| 
						 | 
					@ -3056,10 +3010,10 @@ replacement for the @code{urlview} program.")
 | 
				
			||||||
         ("guile-sqlite3" ,guile-sqlite3)
 | 
					         ("guile-sqlite3" ,guile-sqlite3)
 | 
				
			||||||
         ("guile-syntax-highlight" ,guile-syntax-highlight)
 | 
					         ("guile-syntax-highlight" ,guile-syntax-highlight)
 | 
				
			||||||
         ("guile-webutils" ,guile-webutils)
 | 
					         ("guile-webutils" ,guile-webutils)
 | 
				
			||||||
 | 
					         ("guile-xapian" ,guile-xapian)
 | 
				
			||||||
         ("gnutls" ,gnutls)         ;needed to talk to https://debbugs.gnu.org
 | 
					         ("gnutls" ,gnutls)         ;needed to talk to https://debbugs.gnu.org
 | 
				
			||||||
         ("guile" ,guile-2.2)
 | 
					         ("guile" ,guile-2.2)
 | 
				
			||||||
         ("mailutils" ,mailutils)
 | 
					         ("mailutils" ,mailutils)))
 | 
				
			||||||
         ("mumimu" ,mumimu)))   ;'mumimu' executable recorded in (mumi config)
 | 
					 | 
				
			||||||
      (native-inputs
 | 
					      (native-inputs
 | 
				
			||||||
       `(("autoconf" ,autoconf)
 | 
					       `(("autoconf" ,autoconf)
 | 
				
			||||||
         ("automake" ,automake)
 | 
					         ("automake" ,automake)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4694,7 +4694,7 @@ linear algebra primitives specifically targeting graph analytics.")
 | 
				
			||||||
(define-public dune-common
 | 
					(define-public dune-common
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-common")
 | 
					    (name "dune-common")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -4702,7 +4702,7 @@ linear algebra primitives specifically targeting graph analytics.")
 | 
				
			||||||
                           version "/dune-common-" version ".tar.gz"))
 | 
					                           version "/dune-common-" version ".tar.gz"))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "019wcr1qf7jwyxx1y5y290wdlglylskvbb2m01ljkzcza2xnlmhw"))))
 | 
					         "140q1zh44cr5yrjwg4b5ga803rkqv55vk30l2cqm29aklj1wb0rw"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -4732,7 +4732,7 @@ Differences} (FD).")
 | 
				
			||||||
(define-public dune-geometry
 | 
					(define-public dune-geometry
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-geometry")
 | 
					    (name "dune-geometry")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -4740,7 +4740,7 @@ Differences} (FD).")
 | 
				
			||||||
                           version "/dune-geometry-" version ".tar.gz"))
 | 
					                           version "/dune-geometry-" version ".tar.gz"))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "0hlaaxjyv9j05blasvb67sy02hd0w4g9znf68gdh3l731dd1aqbn"))))
 | 
					         "1cicvlwbyyw76npicnblxckyvhbfn3ip8isydiv3hlrlz8zcg5nr"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -4772,15 +4772,17 @@ This package contains the basic DUNE geometry classes.")
 | 
				
			||||||
(define-public dune-uggrid
 | 
					(define-public dune-uggrid
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-uggrid")
 | 
					    (name "dune-uggrid")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method git-fetch)
 | 
				
			||||||
       (uri (string-append "https://dune-project.org/download/"
 | 
					       (uri (git-reference
 | 
				
			||||||
                           version "/dune-uggrid-" version ".tar.gz"))
 | 
					         (url "https://gitlab.dune-project.org/staging/dune-uggrid.git")
 | 
				
			||||||
 | 
					         (commit (string-append "v" version))))
 | 
				
			||||||
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "05l7a1gb78mny49anyxk6rjvn66rhgm30y72v5cjg0m5kfgr1a1f"))))
 | 
					         "192miqgmfj6jwk969gydzpbv9ki7jg5nky3ydnrwa2nq29b5xkh0"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -4807,7 +4809,7 @@ This package contains the DUNE UG grid classes.")
 | 
				
			||||||
(define-public dune-grid
 | 
					(define-public dune-grid
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-grid")
 | 
					    (name "dune-grid")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -4815,7 +4817,7 @@ This package contains the DUNE UG grid classes.")
 | 
				
			||||||
                           version "/dune-grid-" version ".tar.gz"))
 | 
					                           version "/dune-grid-" version ".tar.gz"))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "1jp4vscm9yb9xg0lh7apzccfkhvgbnk652yahigmh3cvzpl4acd0"))))
 | 
					         "17fjz30qazjgl11sryyxnw9klai4yz1ji4bs68013xcxc5hdv27s"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -4850,7 +4852,7 @@ This package contains the basic DUNE grid classes.")
 | 
				
			||||||
(define-public dune-istl
 | 
					(define-public dune-istl
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-istl")
 | 
					    (name "dune-istl")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -4858,7 +4860,8 @@ This package contains the basic DUNE grid classes.")
 | 
				
			||||||
                           version "/dune-istl-" version ".tar.gz"))
 | 
					                           version "/dune-istl-" version ".tar.gz"))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "0l2gyrvys5w6wsmk0ckbb7295s80b7yk7qrl7x66akv2jv1nzq2w"))))
 | 
					         "0gl3wgz5rs6sb4m83440ny45sbx7z7lnbi3gx6r9nm3rvy5j33f9"))
 | 
				
			||||||
 | 
					       (patches (search-patches "dune-istl-2.7-fix-non-mpi-tests.patch"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -4908,7 +4911,7 @@ aggregation-based algebraic multigrid.")
 | 
				
			||||||
(define-public dune-localfunctions
 | 
					(define-public dune-localfunctions
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-localfunctions")
 | 
					    (name "dune-localfunctions")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -4916,7 +4919,7 @@ aggregation-based algebraic multigrid.")
 | 
				
			||||||
                           version "/dune-localfunctions-" version ".tar.gz"))
 | 
					                           version "/dune-localfunctions-" version ".tar.gz"))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "19c6zjinwwpy8jh4v4prhphyd438rapd4x80fj93apmwgw04nrhl"))))
 | 
					         "1yih59h6vngii696bx1c2vil02lriij4kz0nc583mjn9kiaqxfqd"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -4963,15 +4966,17 @@ assemble global function spaces on finite-element grids.")
 | 
				
			||||||
(define-public dune-alugrid
 | 
					(define-public dune-alugrid
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-alugrid")
 | 
					    (name "dune-alugrid")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0-git-81d35682")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method url-fetch)
 | 
					       (method git-fetch)
 | 
				
			||||||
       (uri (string-append "https://dune-project.org/download/"
 | 
					       (uri (git-reference
 | 
				
			||||||
                           version "/dune-alugrid-" version ".tar.gz"))
 | 
					             (url "https://gitlab.dune-project.org/extensions/dune-alugrid.git")
 | 
				
			||||||
 | 
					             (commit "81d356827c84454b971937db02c02b90bbcd7fe5")))
 | 
				
			||||||
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "1l9adgyjpra8mvwm445s0lpjshnb63jag85fb2hisbjn6bm320yj"))))
 | 
					         "0z54lwfp53prcrs94k8gwh047l9z642jll3l56xlyfr69z0b2zz1"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -5011,17 +5016,17 @@ cubes.")
 | 
				
			||||||
(define-public dune-subgrid
 | 
					(define-public dune-subgrid
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-subgrid")
 | 
					    (name "dune-subgrid")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0-git-2103a363")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method git-fetch)
 | 
					       (method git-fetch)
 | 
				
			||||||
       (uri (git-reference
 | 
					       (uri (git-reference
 | 
				
			||||||
         (url "https://git.imp.fu-berlin.de/agnumpde/dune-subgrid")
 | 
					         (url "https://git.imp.fu-berlin.de/agnumpde/dune-subgrid")
 | 
				
			||||||
         (commit "releases/2.6-1")))
 | 
					         (commit "2103a363f32e8d7b60e66eee7ddecf969f6cf762")))
 | 
				
			||||||
       (file-name (git-file-name name version))
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
          "1gcv35rx3knqd54r4pp9rzd639db4j8w2r2ibq43w1mgwdcqhs64"))))
 | 
					          "1wsjlypd3835c3arqjkw836cxx5q67zy447wa65q634lf6f6v9ia"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -5051,7 +5056,7 @@ provides the full grid interface including adaptive mesh refinement.")
 | 
				
			||||||
(define-public dune-typetree
 | 
					(define-public dune-typetree
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-typetree")
 | 
					    (name "dune-typetree")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method git-fetch)
 | 
					       (method git-fetch)
 | 
				
			||||||
| 
						 | 
					@ -5061,7 +5066,7 @@ provides the full grid interface including adaptive mesh refinement.")
 | 
				
			||||||
       (file-name (git-file-name name version))
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "0mnv6w2f22lz3j4bdpdjq55vjm8xxfx9v4vvhg9bd36xpsbjpjp9"))))
 | 
					         "1rhv25yg0q1hw50c8wlfqhgwrjl4mh62zq9v14ilwgzbfgxmpiy7"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -5090,7 +5095,7 @@ operating on statically typed trees of objects.")
 | 
				
			||||||
(define-public dune-functions
 | 
					(define-public dune-functions
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-functions")
 | 
					    (name "dune-functions")
 | 
				
			||||||
    (version "2.6.0")
 | 
					    (version "2.7.0")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method git-fetch)
 | 
					       (method git-fetch)
 | 
				
			||||||
| 
						 | 
					@ -5100,7 +5105,7 @@ operating on statically typed trees of objects.")
 | 
				
			||||||
       (file-name (git-file-name name version))
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "1an8gb477n8j0kzpbrv7nr1snh8pxip0gsxq6w63jc83gg3dj200"))))
 | 
					         "1na4gcih0kin37ksj2xj07ds04v7zx53pjdhm1hzy55jjfqdjk8h"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					@ -5140,17 +5145,17 @@ implemented as callable objects, and bases of finite element spaces.")
 | 
				
			||||||
(define-public dune-pdelab
 | 
					(define-public dune-pdelab
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dune-pdelab")
 | 
					    (name "dune-pdelab")
 | 
				
			||||||
    (version "2.6.0-rc1")
 | 
					    (version "2.7.0-git-476fe437")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
       (method git-fetch)
 | 
					       (method git-fetch)
 | 
				
			||||||
       (uri (git-reference
 | 
					       (uri (git-reference
 | 
				
			||||||
             (url "https://gitlab.dune-project.org/pdelab/dune-pdelab")
 | 
					             (url "https://gitlab.dune-project.org/pdelab/dune-pdelab")
 | 
				
			||||||
             (commit (string-append "v" version))))
 | 
					             (commit "476fe43763fa6f459c5e4658e2a2b4b5582db834")))
 | 
				
			||||||
       (file-name (git-file-name name version))
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32
 | 
					        (base32
 | 
				
			||||||
         "07g0s9448z65vjrq88g5rv3340iifil85k170n8kbqchsvi4ny5v"))))
 | 
					         "0cs36piqzn6rq0j2ih3ab3q3q9yg199wk72k5qi86pkzh7i7fdn1"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments '(#:tests? #f)) ; XXX: the tests cannot be compiled
 | 
					    (arguments '(#:tests? #f)) ; XXX: the tests cannot be compiled
 | 
				
			||||||
    (inputs
 | 
					    (inputs
 | 
				
			||||||
| 
						 | 
					@ -5473,7 +5478,9 @@ researchers and developers alike to get started on SAT.")
 | 
				
			||||||
             (commit (string-append "v" version))))
 | 
					             (commit (string-append "v" version))))
 | 
				
			||||||
       (file-name (git-file-name name version))
 | 
					       (file-name (git-file-name name version))
 | 
				
			||||||
       (sha256
 | 
					       (sha256
 | 
				
			||||||
        (base32 "1vbaza9c7159xf2ym90l0xkyj2mp6c3hbghhsqn29yvz08fda9df"))))
 | 
					        (base32 "1vbaza9c7159xf2ym90l0xkyj2mp6c3hbghhsqn29yvz08fda9df"))
 | 
				
			||||||
 | 
					       (patches
 | 
				
			||||||
 | 
					        (search-patches "libqalculate-3.8.0-libcurl-ssl-fix.patch"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
     `(("pkg-config" ,pkg-config)
 | 
					     `(("pkg-config" ,pkg-config)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -105,7 +105,9 @@
 | 
				
			||||||
  #:use-module (gnu packages perl)
 | 
					  #:use-module (gnu packages perl)
 | 
				
			||||||
  #:use-module (gnu packages perl-check)
 | 
					  #:use-module (gnu packages perl-check)
 | 
				
			||||||
  #:use-module (gnu packages pkg-config)
 | 
					  #:use-module (gnu packages pkg-config)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages polkit)
 | 
				
			||||||
  #:use-module (gnu packages pretty-print)
 | 
					  #:use-module (gnu packages pretty-print)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages pulseaudio)
 | 
				
			||||||
  #:use-module (gnu packages python)
 | 
					  #:use-module (gnu packages python)
 | 
				
			||||||
  #:use-module (gnu packages python-web)
 | 
					  #:use-module (gnu packages python-web)
 | 
				
			||||||
  #:use-module (gnu packages python-xyz)
 | 
					  #:use-module (gnu packages python-xyz)
 | 
				
			||||||
| 
						 | 
					@ -122,6 +124,56 @@
 | 
				
			||||||
  #:use-module (gnu packages xml)
 | 
					  #:use-module (gnu packages xml)
 | 
				
			||||||
  #:use-module (ice-9 match))
 | 
					  #:use-module (ice-9 match))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public blueman
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "blueman")
 | 
				
			||||||
 | 
					    (version "2.1.2")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri
 | 
				
			||||||
 | 
					        (string-append "https://github.com/blueman-project/blueman/releases/"
 | 
				
			||||||
 | 
					                       "download/2.1.2/blueman-2.1.2.tar.gz"))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "0wamxdw36c8i3aqwmja5q70fajqwd7inpkvlpkldd54wdxbcd38d"))))
 | 
				
			||||||
 | 
					    (build-system glib-or-gtk-build-system)
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:configure-flags
 | 
				
			||||||
 | 
					       (list
 | 
				
			||||||
 | 
					        "--enable-polkit"
 | 
				
			||||||
 | 
					        "--disable-appindicator"         ; Deprecated
 | 
				
			||||||
 | 
					        "--with-systemdsystemunitdir=no" ; Not required
 | 
				
			||||||
 | 
					        "--with-systemduserunitdir=no")))  ; Not required
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("cython" ,python-cython)
 | 
				
			||||||
 | 
					       ("glib:bin" ,glib "bin")
 | 
				
			||||||
 | 
					       ("gtk+:bin" ,gtk+ "bin")
 | 
				
			||||||
 | 
					       ("intltool" ,intltool)
 | 
				
			||||||
 | 
					       ("libtool" ,libtool)
 | 
				
			||||||
 | 
					       ("pkg-config" ,pkg-config)))
 | 
				
			||||||
 | 
					    (inputs
 | 
				
			||||||
 | 
					     `(("adwaita-icon-theme" ,adwaita-icon-theme)
 | 
				
			||||||
 | 
					       ("bluez" ,bluez)
 | 
				
			||||||
 | 
					       ("dbus" ,dbus)
 | 
				
			||||||
 | 
					       ("gdkpixbuf" ,gdk-pixbuf)
 | 
				
			||||||
 | 
					       ("glib" ,glib)
 | 
				
			||||||
 | 
					       ("gtk+" ,gtk+)
 | 
				
			||||||
 | 
					       ("iproute2" ,iproute)
 | 
				
			||||||
 | 
					       ("net-tools" ,net-tools)
 | 
				
			||||||
 | 
					       ("pango" ,pango)
 | 
				
			||||||
 | 
					       ("polkit" ,polkit)
 | 
				
			||||||
 | 
					       ("pulseaudio" ,pulseaudio)
 | 
				
			||||||
 | 
					       ("pycairo" ,python-pycairo)
 | 
				
			||||||
 | 
					       ("pygobject" ,python-pygobject)
 | 
				
			||||||
 | 
					       ("python" ,python-wrapper)
 | 
				
			||||||
 | 
					       ("libnm" ,libnma)))
 | 
				
			||||||
 | 
					    (synopsis "GTK+ Bluetooth manager")
 | 
				
			||||||
 | 
					    (description "Blueman is a Bluetooth management utility using the Bluez
 | 
				
			||||||
 | 
					D-Bus backend.  It is designed to be easy to use for most common Bluetooth
 | 
				
			||||||
 | 
					tasks.")
 | 
				
			||||||
 | 
					    (home-page "https://github.com/blueman-project/blueman")
 | 
				
			||||||
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; The gnu.org ‘home’ for this GNU project is a directory listing with 1.6.0 as
 | 
					;; The gnu.org ‘home’ for this GNU project is a directory listing with 1.6.0 as
 | 
				
			||||||
;; the latest version.  The author's git repository, mentioned in the 1.6.0
 | 
					;; the latest version.  The author's git repository, mentioned in the 1.6.0
 | 
				
			||||||
;; README and otherwise legit-looking, contains a proper 1.7.0 release tarball
 | 
					;; README and otherwise legit-looking, contains a proper 1.7.0 release tarball
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
;;; GNU Guix --- Functional package management for GNU
 | 
					;;; GNU Guix --- Functional package management for GNU
 | 
				
			||||||
;;; Copyright © 2013, 2014, 2020 Eric Bavier <bavier@posteo.net>
 | 
					;;; Copyright © 2013, 2014, 2020 Eric Bavier <bavier@posteo.net>
 | 
				
			||||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 | 
					;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 | 
				
			||||||
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 | 
					;;; Copyright © 2015, 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
 | 
				
			||||||
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
 | 
					;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
 | 
				
			||||||
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
 | 
					;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
 | 
				
			||||||
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 | 
					;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 | 
				
			||||||
| 
						 | 
					@ -54,14 +54,14 @@
 | 
				
			||||||
(define-public parallel
 | 
					(define-public parallel
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "parallel")
 | 
					    (name "parallel")
 | 
				
			||||||
    (version "20200322")
 | 
					    (version "20200422")
 | 
				
			||||||
    (source
 | 
					    (source
 | 
				
			||||||
     (origin
 | 
					     (origin
 | 
				
			||||||
      (method url-fetch)
 | 
					      (method url-fetch)
 | 
				
			||||||
      (uri (string-append "mirror://gnu/parallel/parallel-"
 | 
					      (uri (string-append "mirror://gnu/parallel/parallel-"
 | 
				
			||||||
                          version ".tar.bz2"))
 | 
					                          version ".tar.bz2"))
 | 
				
			||||||
      (sha256
 | 
					      (sha256
 | 
				
			||||||
       (base32 "0kg95glnfg25i1w7qg2vr5v4671vigsazmz4qdf223l64khq8x10"))))
 | 
					       (base32 "0c2mr2rzsz0y24q4mbm2zmc2fz6bcda4gbc4qgg59sirrj8vzpjb"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:phases
 | 
					     `(#:phases
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										82
									
								
								gnu/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										82
									
								
								gnu/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,82 @@
 | 
				
			||||||
 | 
					Fix build of dune-istl's tests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Patch copied from upstream source repository:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					https://gitlab.dune-project.org/core/dune-istl/-/commit/9eee3462df5a64881c08574f9291e76db398de0a
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					From 9eee3462df5a64881c08574f9291e76db398de0a Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Felix Gruber <felgru@posteo.net>
 | 
				
			||||||
 | 
					Date: Sat, 4 Apr 2020 15:27:09 +0200
 | 
				
			||||||
 | 
					Subject: [PATCH] make tests succeed when MPI is disabled
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					When MPI is not available or explicitly disabled with the CMake build
 | 
				
			||||||
 | 
					option -DCMAKE_IDSABLE_FIND_PACKAGE_MPI=TRUE, some tests were unable to
 | 
				
			||||||
 | 
					build.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The tests created from solverfactorytest.cc.in and part of
 | 
				
			||||||
 | 
					scalarproductstest.cc use Dune::OwnerOverlapCopyCommunication which is
 | 
				
			||||||
 | 
					defined behind `#if HAVE_MPI` and is thus not available in a non-MPI
 | 
				
			||||||
 | 
					build. I've thus disabled those tests when MPI is unavailable.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The matrixmarkettest did not work without MPI, as it contained some code
 | 
				
			||||||
 | 
					using the wrong template parameters when HAVE_MPI was not set. Those
 | 
				
			||||||
 | 
					template paramters have been fixed now.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I've confirmed, that after my changes `make build_tests` succeeds to
 | 
				
			||||||
 | 
					build all tests and that those tests run without failure.
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 dune/istl/test/CMakeLists.txt        | 3 ++-
 | 
				
			||||||
 | 
					 dune/istl/test/matrixmarkettest.cc   | 2 +-
 | 
				
			||||||
 | 
					 dune/istl/test/scalarproductstest.cc | 2 ++
 | 
				
			||||||
 | 
					 3 files changed, 5 insertions(+), 2 deletions(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/dune/istl/test/CMakeLists.txt b/dune/istl/test/CMakeLists.txt
 | 
				
			||||||
 | 
					index ffd87969..2c7b2387 100644
 | 
				
			||||||
 | 
					--- a/dune/istl/test/CMakeLists.txt
 | 
				
			||||||
 | 
					+++ b/dune/istl/test/CMakeLists.txt
 | 
				
			||||||
 | 
					@@ -77,7 +77,8 @@ set(DUNE_TEST_FACTORY_BLOCK_SIZES
 | 
				
			||||||
 | 
					 function(add_factory_test BLOCK)
 | 
				
			||||||
 | 
					   STRING(REGEX REPLACE "[^a-zA-Z0-9]" "" BLOCK_CLEAN ${BLOCK})
 | 
				
			||||||
 | 
					   configure_file(solverfactorytest.cc.in solverfactorytest_${BLOCK_CLEAN}.cc)
 | 
				
			||||||
 | 
					-  dune_add_test(SOURCES ${CMAKE_CURRENT_BINARY_DIR}/solverfactorytest_${BLOCK_CLEAN}.cc)
 | 
				
			||||||
 | 
					+  dune_add_test(SOURCES ${CMAKE_CURRENT_BINARY_DIR}/solverfactorytest_${BLOCK_CLEAN}.cc
 | 
				
			||||||
 | 
					+                CMAKE_GUARD HAVE_MPI)
 | 
				
			||||||
 | 
					 endfunction(add_factory_test)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 foreach(FIELD_TYPE ${DUNE_TEST_FACTORY_FIELD_TYPES})
 | 
				
			||||||
 | 
					diff --git a/dune/istl/test/matrixmarkettest.cc b/dune/istl/test/matrixmarkettest.cc
 | 
				
			||||||
 | 
					index b335afe6..ce30e8ae 100644
 | 
				
			||||||
 | 
					--- a/dune/istl/test/matrixmarkettest.cc
 | 
				
			||||||
 | 
					+++ b/dune/istl/test/matrixmarkettest.cc
 | 
				
			||||||
 | 
					@@ -52,7 +52,7 @@ int testMatrixMarket(int N)
 | 
				
			||||||
 | 
					   storeMatrixMarket(mat, std::string("testmat"), comm);
 | 
				
			||||||
 | 
					   storeMatrixMarket(bv, std::string("testvec"), comm, false);
 | 
				
			||||||
 | 
					 #else
 | 
				
			||||||
 | 
					-  typedef Dune::MatrixAdapter<BCRSMat,BVector,BVector> Operator;
 | 
				
			||||||
 | 
					+  typedef Dune::MatrixAdapter<Matrix,Vector,Vector> Operator;
 | 
				
			||||||
 | 
					   Operator op(mat);
 | 
				
			||||||
 | 
					   op.apply(bv, cv);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/dune/istl/test/scalarproductstest.cc b/dune/istl/test/scalarproductstest.cc
 | 
				
			||||||
 | 
					index 452b1d89..f46ce2a9 100644
 | 
				
			||||||
 | 
					--- a/dune/istl/test/scalarproductstest.cc
 | 
				
			||||||
 | 
					+++ b/dune/istl/test/scalarproductstest.cc
 | 
				
			||||||
 | 
					@@ -115,6 +115,7 @@ int main(int argc, char** argv)
 | 
				
			||||||
 | 
					     scalarProductTest<ScalarProduct, Vector>(scalarProduct,numBlocks);
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					+#if HAVE_MPI
 | 
				
			||||||
 | 
					   // Test the ParallelScalarProduct class
 | 
				
			||||||
 | 
					   {
 | 
				
			||||||
 | 
					     using Vector = BlockVector<FieldVector<double,BlockSize> >;
 | 
				
			||||||
 | 
					@@ -139,6 +140,7 @@ int main(int argc, char** argv)
 | 
				
			||||||
 | 
					     ScalarProduct scalarProduct(communicator,SolverCategory::nonoverlapping);
 | 
				
			||||||
 | 
					     scalarProductTest<ScalarProduct, Vector>(scalarProduct,numBlocks);
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   return t.exit();
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					--
 | 
				
			||||||
 | 
					2.25.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,49 +0,0 @@
 | 
				
			||||||
From 3c0f4b27a079b90dc632f5061a81ce28cef24801 Mon Sep 17 00:00:00 2001
 | 
					 | 
				
			||||||
From: eryx67 <eryx67@gmail.com>
 | 
					 | 
				
			||||||
Date: Thu, 29 Nov 2018 10:30:20 +0500
 | 
					 | 
				
			||||||
Subject: [PATCH] fix for latest emacs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 dired-toggle-sudo.el | 11 +++++++----
 | 
					 | 
				
			||||||
 1 file changed, 7 insertions(+), 4 deletions(-)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
diff --git a/dired-toggle-sudo.el b/dired-toggle-sudo.el
 | 
					 | 
				
			||||||
index 386921b..fe5898e 100644
 | 
					 | 
				
			||||||
--- a/dired-toggle-sudo.el
 | 
					 | 
				
			||||||
+++ b/dired-toggle-sudo.el
 | 
					 | 
				
			||||||
@@ -37,17 +37,20 @@
 | 
					 | 
				
			||||||
 unless SUDO-USER is provided."
 | 
					 | 
				
			||||||
   (let* (;; Handle the case of local files. `tramp-dissect-file-name' does
 | 
					 | 
				
			||||||
 	 ;; not raise an error anymore.
 | 
					 | 
				
			||||||
-	 (path (if (tramp-tramp-file-p path) path (concat "/:" path)))
 | 
					 | 
				
			||||||
+	 ;;(path (if (tramp-tramp-file-p path) path (concat "/-::" path)))
 | 
					 | 
				
			||||||
 	 (file-vec (or (ignore-errors (tramp-dissect-file-name
 | 
					 | 
				
			||||||
 				       path))
 | 
					 | 
				
			||||||
 		       (tramp-dissect-file-name
 | 
					 | 
				
			||||||
-			(concat "/:" path) 1)))
 | 
					 | 
				
			||||||
+			(concat "/-::" path) 1)))
 | 
					 | 
				
			||||||
 	 (method  (tramp-file-name-method file-vec))
 | 
					 | 
				
			||||||
 	 (user (tramp-file-name-user file-vec))
 | 
					 | 
				
			||||||
 	 (host  (tramp-file-name-host file-vec))
 | 
					 | 
				
			||||||
+         (domain  (tramp-file-name-domain file-vec))
 | 
					 | 
				
			||||||
+         (port  (tramp-file-name-port file-vec))
 | 
					 | 
				
			||||||
 	 (localname (expand-file-name
 | 
					 | 
				
			||||||
 		     (tramp-file-name-localname file-vec))))
 | 
					 | 
				
			||||||
-    (when (string= system-name host)
 | 
					 | 
				
			||||||
+    (when (or (string= (system-name) host)
 | 
					 | 
				
			||||||
+              (string= "-" host))
 | 
					 | 
				
			||||||
       (setq host nil))
 | 
					 | 
				
			||||||
     (cond
 | 
					 | 
				
			||||||
      ;; remote directory -> sudo
 | 
					 | 
				
			||||||
@@ -67,7 +70,7 @@ unless SUDO-USER is provided."
 | 
					 | 
				
			||||||
       (setq method "sudo" user sudo-user)))
 | 
					 | 
				
			||||||
     (replace-regexp-in-string
 | 
					 | 
				
			||||||
      "^/:/" "/"
 | 
					 | 
				
			||||||
-     (tramp-make-tramp-file-name method user host localname))))
 | 
					 | 
				
			||||||
+     (tramp-make-tramp-file-name method domain user host port localname))))
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 (defun dired-toggle-sudo-find (fname)
 | 
					 | 
				
			||||||
   "Create a new buffer for file name FNAME."
 | 
					 | 
				
			||||||
-- 
 | 
					 | 
				
			||||||
2.22.0
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,53 @@
 | 
				
			||||||
 | 
					Author: R Veera Kumar 2020 <vkor@vkten.in>
 | 
				
			||||||
 | 
					Desc:
 | 
				
			||||||
 | 
					 1) Fixes download of exchange rates by specifying SSL CA certificates bundle
 | 
				
			||||||
 | 
					    file while using libcurl (Since libcurl in guix is compiled without using
 | 
				
			||||||
 | 
					    a default CA cert bundle file)
 | 
				
			||||||
 | 
					 2) Like above fix for using https site in another case
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff -uNr libqalculate-3.8.0/libqalculate/Calculator-definitions.cc libqalculate-3.8.0.new/libqalculate/Calculator-definitions.cc
 | 
				
			||||||
 | 
					--- libqalculate-3.8.0/libqalculate/Calculator-definitions.cc	2020-02-16 15:08:29.000000000 +0530
 | 
				
			||||||
 | 
					+++ libqalculate-3.8.0.new/libqalculate/Calculator-definitions.cc	2020-04-17 21:27:36.386039369 +0530
 | 
				
			||||||
 | 
					@@ -3610,6 +3610,7 @@
 | 
				
			||||||
 | 
					 	curl = curl_easy_init();
 | 
				
			||||||
 | 
					 	if(!curl) {return false;}
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(1).c_str());
 | 
				
			||||||
 | 
					+	curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE"));
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer);
 | 
				
			||||||
 | 
					@@ -3663,6 +3664,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 		sbuffer = "";
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(2).c_str());
 | 
				
			||||||
 | 
					+		curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE"));
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer);
 | 
				
			||||||
 | 
					@@ -3687,6 +3689,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 		sbuffer = "";
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(3).c_str());
 | 
				
			||||||
 | 
					+		curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE"));
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer);
 | 
				
			||||||
 | 
					@@ -3710,6 +3713,7 @@
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 		sbuffer = "";
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_URL, getExchangeRatesUrl(4).c_str());
 | 
				
			||||||
 | 
					+		curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE"));
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_TIMEOUT, (timeout > 4 && n <= 0) ? 4 : timeout);
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
 | 
				
			||||||
 | 
					 		curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer);
 | 
				
			||||||
 | 
					diff -uNr libqalculate-3.8.0/libqalculate/util.cc libqalculate-3.8.0.new/libqalculate/util.cc
 | 
				
			||||||
 | 
					--- libqalculate-3.8.0/libqalculate/util.cc	2019-12-14 22:56:45.000000000 +0530
 | 
				
			||||||
 | 
					+++ libqalculate-3.8.0.new/libqalculate/util.cc	2020-04-17 21:12:17.259674572 +0530
 | 
				
			||||||
 | 
					@@ -769,6 +769,7 @@
 | 
				
			||||||
 | 
					 	curl = curl_easy_init();
 | 
				
			||||||
 | 
					 	if(!curl) {return -1;}
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_URL, "https://qalculate.github.io/CURRENT_VERSIONS");
 | 
				
			||||||
 | 
					+	curl_easy_setopt(curl, CURLOPT_CAINFO, getenv("SSL_CERT_FILE"));
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_TIMEOUT, timeout);
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data);
 | 
				
			||||||
 | 
					 	curl_easy_setopt(curl, CURLOPT_WRITEDATA, &sbuffer);
 | 
				
			||||||
							
								
								
									
										1132
									
								
								gnu/packages/patches/u-boot-DT-for-Pinebook-Pro.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1132
									
								
								gnu/packages/patches/u-boot-DT-for-Pinebook-Pro.patch
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
					@ -0,0 +1,29 @@
 | 
				
			||||||
 | 
					From 00978950fed39b6104b6b4f141450a66cc3400fa Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					Date: Mon, 20 Apr 2020 20:27:32 +0100
 | 
				
			||||||
 | 
					Origin: https://patchwork.ozlabs.org/project/uboot/patch/20200420192736.962307-2-pbrobinson@gmail.com/
 | 
				
			||||||
 | 
					Subject: [PATCH 1/5] video: simple_panel: add boe,nv140fhmn49 display
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					add "boe,nv140fhmn49" display to compatible node.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					Cc: Anatolij Gustschin <agust@denx.de>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 drivers/video/simple_panel.c | 1 +
 | 
				
			||||||
 | 
					 1 file changed, 1 insertion(+)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/drivers/video/simple_panel.c b/drivers/video/simple_panel.c
 | 
				
			||||||
 | 
					index c3c0e84732..5722811117 100644
 | 
				
			||||||
 | 
					--- a/drivers/video/simple_panel.c
 | 
				
			||||||
 | 
					+++ b/drivers/video/simple_panel.c
 | 
				
			||||||
 | 
					@@ -105,6 +105,7 @@ static const struct udevice_id simple_panel_ids[] = {
 | 
				
			||||||
 | 
					 	{ .compatible = "auo,b133xtn01" },
 | 
				
			||||||
 | 
					 	{ .compatible = "auo,b116xw03" },
 | 
				
			||||||
 | 
					 	{ .compatible = "auo,b133htn01" },
 | 
				
			||||||
 | 
					+	{ .compatible = "boe,nv140fhmn49" },
 | 
				
			||||||
 | 
					 	{ .compatible = "lg,lb070wv8" },
 | 
				
			||||||
 | 
					 	{ }
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.20.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										37
									
								
								gnu/packages/patches/u-boot-gpio-keys-binding-cons.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								gnu/packages/patches/u-boot-gpio-keys-binding-cons.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,37 @@
 | 
				
			||||||
 | 
					From 451bd72bf966df7518682cb748a804634ea19424 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					Date: Mon, 20 Apr 2020 20:27:33 +0100
 | 
				
			||||||
 | 
					Origin: https://patchwork.ozlabs.org/project/uboot/patch/20200420192736.962307-3-pbrobinson@gmail.com/
 | 
				
			||||||
 | 
					Subject: [PATCH 2/5] dt-bindings: input: adopt Linux gpio-keys binding
 | 
				
			||||||
 | 
					 constants
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Sync the gpio-keys input bindings from linux 5.7-rc1.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 include/dt-bindings/input/gpio-keys.h | 13 +++++++++++++
 | 
				
			||||||
 | 
					 1 file changed, 13 insertions(+)
 | 
				
			||||||
 | 
					 create mode 100644 include/dt-bindings/input/gpio-keys.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/include/dt-bindings/input/gpio-keys.h b/include/dt-bindings/input/gpio-keys.h
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..8962df79e7
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/include/dt-bindings/input/gpio-keys.h
 | 
				
			||||||
 | 
					@@ -0,0 +1,13 @@
 | 
				
			||||||
 | 
					+/* SPDX-License-Identifier: GPL-2.0 */
 | 
				
			||||||
 | 
					+/*
 | 
				
			||||||
 | 
					+ * This header provides constants for gpio keys bindings.
 | 
				
			||||||
 | 
					+ */
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#ifndef _DT_BINDINGS_GPIO_KEYS_H
 | 
				
			||||||
 | 
					+#define _DT_BINDINGS_GPIO_KEYS_H
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#define EV_ACT_ANY		0x00	/* asserted or deasserted */
 | 
				
			||||||
 | 
					+#define EV_ACT_ASSERTED		0x01	/* asserted */
 | 
				
			||||||
 | 
					+#define EV_ACT_DEASSERTED	0x02	/* deasserted */
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#endif /* _DT_BINDINGS_GPIO_KEYS_H */
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.20.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										115
									
								
								gnu/packages/patches/u-boot-leds-common-binding-con.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										115
									
								
								gnu/packages/patches/u-boot-leds-common-binding-con.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,115 @@
 | 
				
			||||||
 | 
					From 282b6ca04abbe1302d04caa05be5fc5afb127141 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					Date: Mon, 20 Apr 2020 20:27:34 +0100
 | 
				
			||||||
 | 
					Origin: https://patchwork.ozlabs.org/project/uboot/patch/20200420192736.962307-4-pbrobinson@gmail.com/
 | 
				
			||||||
 | 
					Subject: [PATCH 3/5] dt-bindings: leds: adopt Linux leds common binding
 | 
				
			||||||
 | 
					 constants
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Sync the common leds bindings from linux 5.7-rc1.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 include/dt-bindings/leds/common.h | 91 +++++++++++++++++++++++++++++++
 | 
				
			||||||
 | 
					 1 file changed, 91 insertions(+)
 | 
				
			||||||
 | 
					 create mode 100644 include/dt-bindings/leds/common.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/include/dt-bindings/leds/common.h b/include/dt-bindings/leds/common.h
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..0ce7dfc00d
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/include/dt-bindings/leds/common.h
 | 
				
			||||||
 | 
					@@ -0,0 +1,91 @@
 | 
				
			||||||
 | 
					+/* SPDX-License-Identifier: GPL-2.0 */
 | 
				
			||||||
 | 
					+/*
 | 
				
			||||||
 | 
					+ * This header provides macros for the common LEDs device tree bindings.
 | 
				
			||||||
 | 
					+ *
 | 
				
			||||||
 | 
					+ * Copyright (C) 2015, Samsung Electronics Co., Ltd.
 | 
				
			||||||
 | 
					+ * Author: Jacek Anaszewski <j.anaszewski@samsung.com>
 | 
				
			||||||
 | 
					+ *
 | 
				
			||||||
 | 
					+ * Copyright (C) 2019 Jacek Anaszewski <jacek.anaszewski@gmail.com>
 | 
				
			||||||
 | 
					+ * Copyright (C) 2020 Pavel Machek <pavel@ucw.cz>
 | 
				
			||||||
 | 
					+ */
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#ifndef __DT_BINDINGS_LEDS_H
 | 
				
			||||||
 | 
					+#define __DT_BINDINGS_LEDS_H
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/* External trigger type */
 | 
				
			||||||
 | 
					+#define LEDS_TRIG_TYPE_EDGE	0
 | 
				
			||||||
 | 
					+#define LEDS_TRIG_TYPE_LEVEL	1
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/* Boost modes */
 | 
				
			||||||
 | 
					+#define LEDS_BOOST_OFF		0
 | 
				
			||||||
 | 
					+#define LEDS_BOOST_ADAPTIVE	1
 | 
				
			||||||
 | 
					+#define LEDS_BOOST_FIXED	2
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/* Standard LED colors */
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_WHITE	0
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_RED	1
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_GREEN	2
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_BLUE	3
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_AMBER	4
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_VIOLET	5
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_YELLOW	6
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_IR		7
 | 
				
			||||||
 | 
					+#define LED_COLOR_ID_MAX	8
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/* Standard LED functions */
 | 
				
			||||||
 | 
					+/* Keyboard LEDs, usually it would be input4::capslock etc. */
 | 
				
			||||||
 | 
					+/*   Obsolete equivalent: "shift-key-light" */
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_CAPSLOCK "capslock"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_SCROLLLOCK "scrolllock"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_NUMLOCK "numlock"
 | 
				
			||||||
 | 
					+/*   Obsolete equivalents: "tpacpi::thinklight" (IBM/Lenovo Thinkpads),
 | 
				
			||||||
 | 
					+     "lp5523:kb{1,2,3,4,5,6}" (Nokia N900) */
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_KBD_BACKLIGHT "kbd_backlight"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/* System LEDs, usually found on system body.
 | 
				
			||||||
 | 
					+   platform::mute (etc) is sometimes seen, :mute would be better */
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_POWER "power"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_DISK "disk"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/*   Obsolete: "platform:*:charging" (allwinner sun50i) */
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_CHARGING "charging"
 | 
				
			||||||
 | 
					+/*   Used RGB notification LEDs common on phones.
 | 
				
			||||||
 | 
					+     Obsolete equivalents: "status-led:{red,green,blue}" (Motorola Droid 4),
 | 
				
			||||||
 | 
					+     "lp5523:{r,g,b}" (Nokia N900) */
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_STATUS "status"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_MICMUTE "micmute"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_MUTE "mute"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/* Miscelleaus functions. Use functions above if you can. */
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_ACTIVITY "activity"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_ALARM "alarm"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_BACKLIGHT "backlight"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_BLUETOOTH "bluetooth"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_BOOT "boot"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_CPU "cpu"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_DEBUG "debug"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_DISK_ACTIVITY "disk-activity"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_DISK_ERR "disk-err"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_DISK_READ "disk-read"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_DISK_WRITE "disk-write"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_FAULT "fault"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_FLASH "flash"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_HEARTBEAT "heartbeat"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_INDICATOR "indicator"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_LAN "lan"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_MAIL "mail"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_MTD "mtd"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_PANIC "panic"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_PROGRAMMING "programming"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_RX "rx"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_SD "sd"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_STANDBY "standby"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_TORCH "torch"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_TX "tx"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_USB "usb"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_WAN "wan"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_WLAN "wlan"
 | 
				
			||||||
 | 
					+#define LED_FUNCTION_WPS "wps"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#endif /* __DT_BINDINGS_LEDS_H */
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.20.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										367
									
								
								gnu/packages/patches/u-boot-support-Pinebook-Pro-laptop.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										367
									
								
								gnu/packages/patches/u-boot-support-Pinebook-Pro-laptop.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,367 @@
 | 
				
			||||||
 | 
					From 60381e4add64dddbd07e78248b2b0f819eb2776e Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					Date: Mon, 20 Apr 2020 20:27:36 +0100
 | 
				
			||||||
 | 
					Origin: https://patchwork.ozlabs.org/project/uboot/patch/20200420192736.962307-6-pbrobinson@gmail.com/
 | 
				
			||||||
 | 
					Subject: [PATCH 5/5] Add initial support for the Pinebook Pro laptop from
 | 
				
			||||||
 | 
					 Pine64.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Specification:
 | 
				
			||||||
 | 
					- Rockchip RK3399
 | 
				
			||||||
 | 
					- 4GB Dual-Channel LPDDR4
 | 
				
			||||||
 | 
					- eMMC socket
 | 
				
			||||||
 | 
					- mSD card slot
 | 
				
			||||||
 | 
					- 128Mbit (16Mb) SPI Flash
 | 
				
			||||||
 | 
					- AP6256 for 11AC WiFi + BT5
 | 
				
			||||||
 | 
					- 14 inch 1920*1080 eDP MiPi display
 | 
				
			||||||
 | 
					- Camera
 | 
				
			||||||
 | 
					- USB 3.0, 2.0 ports
 | 
				
			||||||
 | 
					- Type-C port with alt-mode display (DP 1.2) and 15W charge
 | 
				
			||||||
 | 
					- DC 5V/3A
 | 
				
			||||||
 | 
					- optional PCIe slot for NVMe SSD drive
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 arch/arm/dts/rk3399-pinebook-pro-u-boot.dtsi  | 43 ++++++++++
 | 
				
			||||||
 | 
					 arch/arm/mach-rockchip/rk3399/Kconfig         |  8 ++
 | 
				
			||||||
 | 
					 board/pine64/pinebook-pro-rk3399/Kconfig      | 15 ++++
 | 
				
			||||||
 | 
					 board/pine64/pinebook-pro-rk3399/MAINTAINERS  |  8 ++
 | 
				
			||||||
 | 
					 board/pine64/pinebook-pro-rk3399/Makefile     |  1 +
 | 
				
			||||||
 | 
					 .../pinebook-pro-rk3399/pinebook-pro-rk3399.c | 76 +++++++++++++++++
 | 
				
			||||||
 | 
					 configs/pinebook-pro-rk3399_defconfig         | 84 +++++++++++++++++++
 | 
				
			||||||
 | 
					 include/configs/pinebook-pro-rk3399.h         | 29 +++++++
 | 
				
			||||||
 | 
					 8 files changed, 264 insertions(+)
 | 
				
			||||||
 | 
					 create mode 100644 arch/arm/dts/rk3399-pinebook-pro-u-boot.dtsi
 | 
				
			||||||
 | 
					 create mode 100644 board/pine64/pinebook-pro-rk3399/Kconfig
 | 
				
			||||||
 | 
					 create mode 100644 board/pine64/pinebook-pro-rk3399/MAINTAINERS
 | 
				
			||||||
 | 
					 create mode 100644 board/pine64/pinebook-pro-rk3399/Makefile
 | 
				
			||||||
 | 
					 create mode 100644 board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c
 | 
				
			||||||
 | 
					 create mode 100644 configs/pinebook-pro-rk3399_defconfig
 | 
				
			||||||
 | 
					 create mode 100644 include/configs/pinebook-pro-rk3399.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/arch/arm/dts/rk3399-pinebook-pro-u-boot.dtsi b/arch/arm/dts/rk3399-pinebook-pro-u-boot.dtsi
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..1a2e24d3ef
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/arch/arm/dts/rk3399-pinebook-pro-u-boot.dtsi
 | 
				
			||||||
 | 
					@@ -0,0 +1,43 @@
 | 
				
			||||||
 | 
					+// SPDX-License-Identifier: GPL-2.0+
 | 
				
			||||||
 | 
					+/*
 | 
				
			||||||
 | 
					+ * Copyright (C) 2019 Peter Robinson <pbrobinson at gmail.com>
 | 
				
			||||||
 | 
					+ */
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#include "rk3399-u-boot.dtsi"
 | 
				
			||||||
 | 
					+#include "rk3399-sdram-lpddr4-100.dtsi"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+/ {
 | 
				
			||||||
 | 
					+	aliases {
 | 
				
			||||||
 | 
					+		spi0 = &spi1;
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	chosen {
 | 
				
			||||||
 | 
					+		u-boot,spl-boot-order = "same-as-spl", &sdhci, &sdmmc;
 | 
				
			||||||
 | 
					+	};
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&i2c0 {
 | 
				
			||||||
 | 
					+	u-boot,dm-pre-reloc;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&rk808 {
 | 
				
			||||||
 | 
					+	u-boot,dm-pre-reloc;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&sdhci {
 | 
				
			||||||
 | 
					+	max-frequency = <25000000>;
 | 
				
			||||||
 | 
					+	u-boot,dm-pre-reloc;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&sdmmc {
 | 
				
			||||||
 | 
					+	max-frequency = <20000000>;
 | 
				
			||||||
 | 
					+	u-boot,dm-pre-reloc;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&spiflash {
 | 
				
			||||||
 | 
					+	u-boot,dm-pre-reloc;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+&vdd_log {
 | 
				
			||||||
 | 
					+	regulator-init-microvolt = <950000>;
 | 
				
			||||||
 | 
					+};
 | 
				
			||||||
 | 
					diff --git a/arch/arm/mach-rockchip/rk3399/Kconfig b/arch/arm/mach-rockchip/rk3399/Kconfig
 | 
				
			||||||
 | 
					index 927bb62a9f..254b9c5b4d 100644
 | 
				
			||||||
 | 
					--- a/arch/arm/mach-rockchip/rk3399/Kconfig
 | 
				
			||||||
 | 
					+++ b/arch/arm/mach-rockchip/rk3399/Kconfig
 | 
				
			||||||
 | 
					@@ -19,6 +19,13 @@ config TARGET_EVB_RK3399
 | 
				
			||||||
 | 
					 	  with full function and physical connectors support like Type-C ports,
 | 
				
			||||||
 | 
					 	  USB.0 host ports, LVDS, JTAG, MAC, SD card, HDMI, USB-to-serial...
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+config TARGET_PINEBOOK_PRO_RK3399
 | 
				
			||||||
 | 
					+	bool "Pinebook Pro"
 | 
				
			||||||
 | 
					+	help
 | 
				
			||||||
 | 
					+	  Pinebook Pro is a laptop based on the Rockchip rk3399 SoC
 | 
				
			||||||
 | 
					+	  with 4Gb RAM, onboard eMMC, USB-C, a USB3 and USB2 port,
 | 
				
			||||||
 | 
					+	  1920*1080 screen and all the usual laptop features.
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 config TARGET_PUMA_RK3399
 | 
				
			||||||
 | 
					 	bool "Theobroma Systems RK3399-Q7 (Puma)"
 | 
				
			||||||
 | 
					 	help
 | 
				
			||||||
 | 
					@@ -144,6 +151,7 @@ endif # BOOTCOUNT_LIMIT
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 source "board/firefly/roc-pc-rk3399/Kconfig"
 | 
				
			||||||
 | 
					 source "board/google/gru/Kconfig"
 | 
				
			||||||
 | 
					+source "board/pine64/pinebook-pro-rk3399/Kconfig"
 | 
				
			||||||
 | 
					 source "board/pine64/rockpro64_rk3399/Kconfig"
 | 
				
			||||||
 | 
					 source "board/rockchip/evb_rk3399/Kconfig"
 | 
				
			||||||
 | 
					 source "board/theobroma-systems/puma_rk3399/Kconfig"
 | 
				
			||||||
 | 
					diff --git a/board/pine64/pinebook-pro-rk3399/Kconfig b/board/pine64/pinebook-pro-rk3399/Kconfig
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..3bb7ca448e
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/board/pine64/pinebook-pro-rk3399/Kconfig
 | 
				
			||||||
 | 
					@@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					+if TARGET_PINEBOOK_PRO_RK3399
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+config SYS_BOARD
 | 
				
			||||||
 | 
					+	default "pinebook-pro-rk3399"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+config SYS_VENDOR
 | 
				
			||||||
 | 
					+	default "pine64"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+config SYS_CONFIG_NAME
 | 
				
			||||||
 | 
					+	default "pinebook-pro-rk3399"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+config BOARD_SPECIFIC_OPTIONS
 | 
				
			||||||
 | 
					+	def_bool y
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+endif
 | 
				
			||||||
 | 
					diff --git a/board/pine64/pinebook-pro-rk3399/MAINTAINERS b/board/pine64/pinebook-pro-rk3399/MAINTAINERS
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..7153eaf2e0
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/board/pine64/pinebook-pro-rk3399/MAINTAINERS
 | 
				
			||||||
 | 
					@@ -0,0 +1,8 @@
 | 
				
			||||||
 | 
					+PINEBOOK_PRO
 | 
				
			||||||
 | 
					+M:	Peter Robinson <pbrobinson at gmail.com>
 | 
				
			||||||
 | 
					+S:	Maintained
 | 
				
			||||||
 | 
					+F:	board/pine64/rk3399-pinebook-pro/
 | 
				
			||||||
 | 
					+F:	include/configs/rk3399-pinebook-pro.h
 | 
				
			||||||
 | 
					+F:	arch/arm/dts/rk3399-pinebook-pro.dts
 | 
				
			||||||
 | 
					+F:	arch/arm/dts/rk3399-pinebook-pro-u-boot.dtsi
 | 
				
			||||||
 | 
					+F:	configs/pinebook-pro-rk3399_defconfig
 | 
				
			||||||
 | 
					diff --git a/board/pine64/pinebook-pro-rk3399/Makefile b/board/pine64/pinebook-pro-rk3399/Makefile
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..2f692a12a6
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/board/pine64/pinebook-pro-rk3399/Makefile
 | 
				
			||||||
 | 
					@@ -0,0 +1 @@
 | 
				
			||||||
 | 
					+obj-y	+= pinebook-pro-rk3399.o
 | 
				
			||||||
 | 
					diff --git a/board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c b/board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..01421cbac2
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/board/pine64/pinebook-pro-rk3399/pinebook-pro-rk3399.c
 | 
				
			||||||
 | 
					@@ -0,0 +1,76 @@
 | 
				
			||||||
 | 
					+/*
 | 
				
			||||||
 | 
					+ * (C) Copyright 2016 Rockchip Electronics Co., Ltd
 | 
				
			||||||
 | 
					+ * (C) Copyright 2020 Peter Robinson <pbrobinson at gmail.com>
 | 
				
			||||||
 | 
					+ *
 | 
				
			||||||
 | 
					+ * SPDX-License-Identifier:     GPL-2.0+
 | 
				
			||||||
 | 
					+ */
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#include <common.h>
 | 
				
			||||||
 | 
					+#include <dm.h>
 | 
				
			||||||
 | 
					+#include <syscon.h>
 | 
				
			||||||
 | 
					+#include <asm/io.h>
 | 
				
			||||||
 | 
					+#include <asm/arch-rockchip/clock.h>
 | 
				
			||||||
 | 
					+#include <asm/arch-rockchip/grf_rk3399.h>
 | 
				
			||||||
 | 
					+#include <asm/arch-rockchip/hardware.h>
 | 
				
			||||||
 | 
					+#include <asm/arch-rockchip/misc.h>
 | 
				
			||||||
 | 
					+#include <power/regulator.h>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#define GRF_IO_VSEL_BT565_SHIFT 0
 | 
				
			||||||
 | 
					+#define PMUGRF_CON0_VSEL_SHIFT 8
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#ifndef CONFIG_SPL_BUILD
 | 
				
			||||||
 | 
					+int board_early_init_f(void)
 | 
				
			||||||
 | 
					+{
 | 
				
			||||||
 | 
					+	struct udevice *regulator;
 | 
				
			||||||
 | 
					+	int ret;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	ret = regulator_get_by_platname("vcc5v0_usb", ®ulator);
 | 
				
			||||||
 | 
					+	if (ret) {
 | 
				
			||||||
 | 
					+		debug("%s vcc5v0_usb init fail! ret %d\n", __func__, ret);
 | 
				
			||||||
 | 
					+		goto out;
 | 
				
			||||||
 | 
					+	}
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	ret = regulator_set_enable(regulator, true);
 | 
				
			||||||
 | 
					+	if (ret)
 | 
				
			||||||
 | 
					+		debug("%s vcc5v0-host-en-gpio set fail! ret %d\n", __func__, ret);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+out:
 | 
				
			||||||
 | 
					+	return 0;
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#ifdef CONFIG_MISC_INIT_R
 | 
				
			||||||
 | 
					+static void setup_iodomain(void)
 | 
				
			||||||
 | 
					+{
 | 
				
			||||||
 | 
					+	struct rk3399_grf_regs *grf =
 | 
				
			||||||
 | 
					+	   syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
 | 
				
			||||||
 | 
					+	struct rk3399_pmugrf_regs *pmugrf =
 | 
				
			||||||
 | 
					+	   syscon_get_first_range(ROCKCHIP_SYSCON_PMUGRF);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	/* BT565 is in 1.8v domain */
 | 
				
			||||||
 | 
					+	rk_setreg(&grf->io_vsel, 1 << GRF_IO_VSEL_BT565_SHIFT);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	/* Set GPIO1 1.8v/3.0v source select to PMU1830_VOL */
 | 
				
			||||||
 | 
					+	rk_setreg(&pmugrf->soc_con0, 1 << PMUGRF_CON0_VSEL_SHIFT);
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+int misc_init_r(void)
 | 
				
			||||||
 | 
					+{
 | 
				
			||||||
 | 
					+	const u32 cpuid_offset = 0x7;
 | 
				
			||||||
 | 
					+	const u32 cpuid_length = 0x10;
 | 
				
			||||||
 | 
					+	u8 cpuid[cpuid_length];
 | 
				
			||||||
 | 
					+	int ret;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	setup_iodomain();
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	ret = rockchip_cpuid_from_efuse(cpuid_offset, cpuid_length, cpuid);
 | 
				
			||||||
 | 
					+	if (ret)
 | 
				
			||||||
 | 
					+		return ret;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	ret = rockchip_cpuid_set(cpuid, cpuid_length);
 | 
				
			||||||
 | 
					+	if (ret)
 | 
				
			||||||
 | 
					+		return ret;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	return ret;
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					diff --git a/configs/pinebook-pro-rk3399_defconfig b/configs/pinebook-pro-rk3399_defconfig
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..0e9f0ec250
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/configs/pinebook-pro-rk3399_defconfig
 | 
				
			||||||
 | 
					@@ -0,0 +1,84 @@
 | 
				
			||||||
 | 
					+CONFIG_ARM=y
 | 
				
			||||||
 | 
					+CONFIG_ARCH_ROCKCHIP=y
 | 
				
			||||||
 | 
					+CONFIG_SYS_TEXT_BASE=0x00200000
 | 
				
			||||||
 | 
					+CONFIG_ENV_OFFSET=0x3F8000
 | 
				
			||||||
 | 
					+CONFIG_ROCKCHIP_RK3399=y
 | 
				
			||||||
 | 
					+CONFIG_RAM_RK3399_LPDDR4=y
 | 
				
			||||||
 | 
					+CONFIG_NR_DRAM_BANKS=1
 | 
				
			||||||
 | 
					+CONFIG_TARGET_PINEBOOK_PRO_RK3399=y
 | 
				
			||||||
 | 
					+CONFIG_BAUDRATE=1500000
 | 
				
			||||||
 | 
					+CONFIG_DEBUG_UART=y
 | 
				
			||||||
 | 
					+CONFIG_DEBUG_UART_SHIFT=2
 | 
				
			||||||
 | 
					+CONFIG_DEBUG_UART_BASE=0xFF1A0000
 | 
				
			||||||
 | 
					+CONFIG_DEBUG_UART_CLOCK=24000000
 | 
				
			||||||
 | 
					+CONFIG_SPL_SPI_SUPPORT=y
 | 
				
			||||||
 | 
					+CONFIG_SPL_SPI_FLASH_SUPPORT=y
 | 
				
			||||||
 | 
					+CONFIG_SPL_MTD_SUPPORT=y
 | 
				
			||||||
 | 
					+CONFIG_DEFAULT_FDT_FILE="rockchip/rk3399-pinebook-pro.dtb"
 | 
				
			||||||
 | 
					+CONFIG_MISC_INIT_R=y
 | 
				
			||||||
 | 
					+CONFIG_DISPLAY_BOARDINFO_LATE=y
 | 
				
			||||||
 | 
					+# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
 | 
				
			||||||
 | 
					+CONFIG_SPL_STACK_R=y
 | 
				
			||||||
 | 
					+CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000
 | 
				
			||||||
 | 
					+CONFIG_TPL=y
 | 
				
			||||||
 | 
					+CONFIG_SPL_OF_CONTROL=y
 | 
				
			||||||
 | 
					+CONFIG_DEFAULT_DEVICE_TREE="rk3399-pinebook-pro"
 | 
				
			||||||
 | 
					+CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents"
 | 
				
			||||||
 | 
					+CONFIG_SYS_RELOC_GD_ENV_ADDR=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_BOOTZ=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_GPIO=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_GPT=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_I2C=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_MMC=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_MTDPARTS=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_PMIC=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_REGULATOR=y
 | 
				
			||||||
 | 
					+# CONFIG_CMD_SETEXPR is not set
 | 
				
			||||||
 | 
					+CONFIG_CMD_SF=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_TIME=y
 | 
				
			||||||
 | 
					+CONFIG_CMD_USB=y
 | 
				
			||||||
 | 
					+CONFIG_ROCKCHIP_GPIO=y
 | 
				
			||||||
 | 
					+CONFIG_SYS_I2C_ROCKCHIP=y
 | 
				
			||||||
 | 
					+CONFIG_BOOTDELAY=3
 | 
				
			||||||
 | 
					+CONFIG_LED=y
 | 
				
			||||||
 | 
					+CONFIG_LED_GPIO=y
 | 
				
			||||||
 | 
					+CONFIG_MISC=y
 | 
				
			||||||
 | 
					+CONFIG_ROCKCHIP_EFUSE=y
 | 
				
			||||||
 | 
					+CONFIG_MMC_DW=y
 | 
				
			||||||
 | 
					+CONFIG_MMC_DW_ROCKCHIP=y
 | 
				
			||||||
 | 
					+CONFIG_MMC_SDHCI=y
 | 
				
			||||||
 | 
					+CONFIG_MMC_SDHCI_SDMA=y
 | 
				
			||||||
 | 
					+CONFIG_MMC_SDHCI_ROCKCHIP=y
 | 
				
			||||||
 | 
					+CONFIG_ROCKCHIP_SPI=y
 | 
				
			||||||
 | 
					+CONFIG_SF_DEFAULT_SPEED=20000000
 | 
				
			||||||
 | 
					+CONFIG_SPI_FLASH=y
 | 
				
			||||||
 | 
					+CONFIG_SPI_FLASH_GIGADEVICE=y
 | 
				
			||||||
 | 
					+CONFIG_SPI_FLASH_WINBOND=y
 | 
				
			||||||
 | 
					+CONFIG_DM_ETH=y
 | 
				
			||||||
 | 
					+CONFIG_PMIC_RK8XX=y
 | 
				
			||||||
 | 
					+CONFIG_DM_PMIC_FAN53555=y
 | 
				
			||||||
 | 
					+CONFIG_REGULATOR_PWM=y
 | 
				
			||||||
 | 
					+CONFIG_REGULATOR_RK8XX=y
 | 
				
			||||||
 | 
					+CONFIG_PWM_ROCKCHIP=y
 | 
				
			||||||
 | 
					+CONFIG_SYSRESET=y
 | 
				
			||||||
 | 
					+CONFIG_USB=y
 | 
				
			||||||
 | 
					+CONFIG_USB_XHCI_HCD=y
 | 
				
			||||||
 | 
					+CONFIG_USB_XHCI_DWC3=y
 | 
				
			||||||
 | 
					+# CONFIG_USB_XHCI_ROCKCHIP is not set
 | 
				
			||||||
 | 
					+CONFIG_USB_EHCI_HCD=y
 | 
				
			||||||
 | 
					+CONFIG_USB_EHCI_GENERIC=y
 | 
				
			||||||
 | 
					+CONFIG_USB_DWC3=y
 | 
				
			||||||
 | 
					+CONFIG_ROCKCHIP_USB2_PHY=y
 | 
				
			||||||
 | 
					+CONFIG_USB_HOST_ETHER=y
 | 
				
			||||||
 | 
					+CONFIG_USB_ETHER_ASIX=y
 | 
				
			||||||
 | 
					+CONFIG_USB_ETHER_RTL8152=y
 | 
				
			||||||
 | 
					+CONFIG_USB_KEYBOARD=y
 | 
				
			||||||
 | 
					+CONFIG_USE_TINY_PRINTF=y
 | 
				
			||||||
 | 
					+CONFIG_SPL_TINY_MEMSET=y
 | 
				
			||||||
 | 
					+CONFIG_ERRNO_STR=y
 | 
				
			||||||
 | 
					+CONFIG_DM_VIDEO=y
 | 
				
			||||||
 | 
					+CONFIG_VIDEO_BPP16=y
 | 
				
			||||||
 | 
					+CONFIG_VIDEO_BPP32=y
 | 
				
			||||||
 | 
					+CONFIG_DISPLAY=y
 | 
				
			||||||
 | 
					+CONFIG_VIDEO_ROCKCHIP=y
 | 
				
			||||||
 | 
					+CONFIG_DISPLAY_ROCKCHIP_EDP=y
 | 
				
			||||||
 | 
					diff --git a/include/configs/pinebook-pro-rk3399.h b/include/configs/pinebook-pro-rk3399.h
 | 
				
			||||||
 | 
					new file mode 100644
 | 
				
			||||||
 | 
					index 0000000000..423d742a79
 | 
				
			||||||
 | 
					--- /dev/null
 | 
				
			||||||
 | 
					+++ b/include/configs/pinebook-pro-rk3399.h
 | 
				
			||||||
 | 
					@@ -0,0 +1,29 @@
 | 
				
			||||||
 | 
					+/*
 | 
				
			||||||
 | 
					+ * Copyright (C) 2016 Rockchip Electronics Co., Ltd
 | 
				
			||||||
 | 
					+ * Copyright (C) 2020 Peter Robinson <pbrobinson at gmail.com>
 | 
				
			||||||
 | 
					+ *
 | 
				
			||||||
 | 
					+ * SPDX-License-Identifier:     GPL-2.0+
 | 
				
			||||||
 | 
					+ */
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#ifndef __PINEBOOK_PRO_RK3399_H
 | 
				
			||||||
 | 
					+#define __PINEBOOK_PRO_RK3399_H
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#define ROCKCHIP_DEVICE_SETTINGS \
 | 
				
			||||||
 | 
					+		"stdin=serial,usbkbd\0" \
 | 
				
			||||||
 | 
					+		"stdout=serial,vidconsole\0" \
 | 
				
			||||||
 | 
					+		"stderr=serial,vidconsole\0"
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#include <configs/rk3399_common.h>
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#if defined(CONFIG_ENV_IS_IN_MMC)
 | 
				
			||||||
 | 
					+#define CONFIG_SYS_MMC_ENV_DEV 0
 | 
				
			||||||
 | 
					+#elif defined(CONFIG_ENV_IS_IN_SPI_FLASH)
 | 
				
			||||||
 | 
					+#define CONFIG_ENV_SECT_SIZE		(8 * 1024)
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#undef CONFIG_SYS_SPI_U_BOOT_OFFS
 | 
				
			||||||
 | 
					+#define CONFIG_SYS_SPI_U_BOOT_OFFS	1024 * 512
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#define SDRAM_BANK_SIZE			(2UL << 30)
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+#endif
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.20.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										48
									
								
								gnu/packages/patches/u-boot-video-rockchip-fix-build.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								gnu/packages/patches/u-boot-video-rockchip-fix-build.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,48 @@
 | 
				
			||||||
 | 
					From ecc69ec25df07e1ce63d7add6b235b37673ed608 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					Date: Mon, 20 Apr 2020 19:18:25 +0100
 | 
				
			||||||
 | 
					Origin: https://patchwork.ozlabs.org/project/uboot/patch/20200420181825.935797-1-pbrobinson@gmail.com/
 | 
				
			||||||
 | 
					Subject: [PATCH 6/6] drivers: video: rockchip: fix building eDP and LVDS
 | 
				
			||||||
 | 
					 drivers
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The rk_edp.c and rk_lvds.c files reference rk_setreg which is declared in
 | 
				
			||||||
 | 
					hardware.h so include it so the drivers build. Adjust rk_lvds.c so
 | 
				
			||||||
 | 
					includes are in alphabetical order while updating.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
 | 
				
			||||||
 | 
					Reviewed-by: Anatolij Gustschin <agust@denx.de>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 drivers/video/rockchip/rk_edp.c  | 1 +
 | 
				
			||||||
 | 
					 drivers/video/rockchip/rk_lvds.c | 3 ++-
 | 
				
			||||||
 | 
					 2 files changed, 3 insertions(+), 1 deletion(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/drivers/video/rockchip/rk_edp.c b/drivers/video/rockchip/rk_edp.c
 | 
				
			||||||
 | 
					index 8703df0ec0..cf84b886e7 100644
 | 
				
			||||||
 | 
					--- a/drivers/video/rockchip/rk_edp.c
 | 
				
			||||||
 | 
					+++ b/drivers/video/rockchip/rk_edp.c
 | 
				
			||||||
 | 
					@@ -18,6 +18,7 @@
 | 
				
			||||||
 | 
					 #include <asm/arch-rockchip/clock.h>
 | 
				
			||||||
 | 
					 #include <asm/arch-rockchip/edp_rk3288.h>
 | 
				
			||||||
 | 
					 #include <asm/arch-rockchip/grf_rk3288.h>
 | 
				
			||||||
 | 
					+#include <asm/arch-rockchip/hardware.h>
 | 
				
			||||||
 | 
					 #include <dt-bindings/clock/rk3288-cru.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 #define MAX_CR_LOOP 5
 | 
				
			||||||
 | 
					diff --git a/drivers/video/rockchip/rk_lvds.c b/drivers/video/rockchip/rk_lvds.c
 | 
				
			||||||
 | 
					index cf5c0439b1..79e24baf53 100644
 | 
				
			||||||
 | 
					--- a/drivers/video/rockchip/rk_lvds.c
 | 
				
			||||||
 | 
					+++ b/drivers/video/rockchip/rk_lvds.c
 | 
				
			||||||
 | 
					@@ -13,8 +13,9 @@
 | 
				
			||||||
 | 
					 #include <asm/gpio.h>
 | 
				
			||||||
 | 
					 #include <asm/io.h>
 | 
				
			||||||
 | 
					 #include <asm/arch-rockchip/clock.h>
 | 
				
			||||||
 | 
					-#include <asm/arch-rockchip/lvds_rk3288.h>
 | 
				
			||||||
 | 
					 #include <asm/arch-rockchip/grf_rk3288.h>
 | 
				
			||||||
 | 
					+#include <asm/arch-rockchip/hardware.h>
 | 
				
			||||||
 | 
					+#include <asm/arch-rockchip/lvds_rk3288.h>
 | 
				
			||||||
 | 
					 #include <dt-bindings/clock/rk3288-cru.h>
 | 
				
			||||||
 | 
					 #include <dt-bindings/video/rk3288.h>
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.20.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
;;; GNU Guix --- Functional package management for GNU
 | 
					;;; GNU Guix --- Functional package management for GNU
 | 
				
			||||||
;;; Copyright © 2016 Julien Lepiller <julien@lepiller.eu>
 | 
					;;; Copyright © 2016-2020 Julien Lepiller <julien@lepiller.eu>
 | 
				
			||||||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 | 
					;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 | 
				
			||||||
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
					;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
				
			||||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 | 
					;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
 | 
				
			||||||
| 
						 | 
					@ -60,7 +60,7 @@
 | 
				
			||||||
(define-public php
 | 
					(define-public php
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "php")
 | 
					    (name "php")
 | 
				
			||||||
    (version "7.4.4")
 | 
					    (version "7.4.5")
 | 
				
			||||||
    (home-page "https://secure.php.net/")
 | 
					    (home-page "https://secure.php.net/")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
| 
						 | 
					@ -68,7 +68,7 @@
 | 
				
			||||||
                                  "php-" version ".tar.xz"))
 | 
					                                  "php-" version ".tar.xz"))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "0k57zj1z8kf8403rd72wymj08bswpa5ikcpzviw9mpykzp7c8wqq"))
 | 
					                "0b1wybhqjlnc94qzixhycg9i0w39fqlhm80mvbmd5i5xamzzsnfh"))
 | 
				
			||||||
              (modules '((guix build utils)))
 | 
					              (modules '((guix build utils)))
 | 
				
			||||||
              (snippet
 | 
					              (snippet
 | 
				
			||||||
               '(with-directory-excursion "ext"
 | 
					               '(with-directory-excursion "ext"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -19637,3 +19637,41 @@ randomly picked from wordlists.  It supports several sources of
 | 
				
			||||||
randomness (including real life dice) and different wordlists (including
 | 
					randomness (including real life dice) and different wordlists (including
 | 
				
			||||||
cryptographically signed ones).")
 | 
					cryptographically signed ones).")
 | 
				
			||||||
    (license license:gpl3+)))
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public pyzo
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "pyzo")
 | 
				
			||||||
 | 
					    (version "4.10.2")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri (pypi-uri "pyzo" version))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "1zplxcb78qy8qibifmnsx5i9gnlfmw9n6nr4yflsabpxw57mx4m1"))))
 | 
				
			||||||
 | 
					    (build-system python-build-system)
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:phases
 | 
				
			||||||
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-before 'check 'fix-home-directory
 | 
				
			||||||
 | 
					           (lambda _
 | 
				
			||||||
 | 
					             ;; Tests fail with "Permission denied: '/homeless-shelter'".
 | 
				
			||||||
 | 
					             (setenv "HOME" "/tmp")
 | 
				
			||||||
 | 
					             #t)))
 | 
				
			||||||
 | 
					       ;; Tests fail with "Uncaught Python exception: invalid literal for
 | 
				
			||||||
 | 
					       ;; int() with base 10: 'test'".
 | 
				
			||||||
 | 
					       #:tests? #f))
 | 
				
			||||||
 | 
					    (propagated-inputs
 | 
				
			||||||
 | 
					     `(("python-pyqt" ,python-pyqt)))
 | 
				
			||||||
 | 
					    (home-page "https://pyzo.org")
 | 
				
			||||||
 | 
					    (synopsis
 | 
				
			||||||
 | 
					     "Python IDE for scientific computing")
 | 
				
			||||||
 | 
					    (description
 | 
				
			||||||
 | 
					     "Pyzo is a Python IDE focused on interactivity and introspection,
 | 
				
			||||||
 | 
					which makes it very suitable for scientific computing.  Its practical
 | 
				
			||||||
 | 
					design is aimed at simplicity and efficiency.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					It consists of two main components, the editor and the shell, and uses
 | 
				
			||||||
 | 
					a set of pluggable tools to help the programmer in various ways.  Some
 | 
				
			||||||
 | 
					example tools are source structure, project manager, interactive help,
 | 
				
			||||||
 | 
					workspace...")
 | 
				
			||||||
 | 
					    (license license:bsd-2)))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -149,7 +149,7 @@ system, and the core design of Django is reused in Grantlee.")
 | 
				
			||||||
    (version "4.8.7")
 | 
					    (version "4.8.7")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
             (method url-fetch)
 | 
					             (method url-fetch)
 | 
				
			||||||
             (uri (string-append "http://download.qt-project.org/official_releases/qt/"
 | 
					             (uri (string-append "http://download.qt-project.org/archive/qt/"
 | 
				
			||||||
                                 (string-copy version 0 (string-rindex version #\.))
 | 
					                                 (string-copy version 0 (string-rindex version #\.))
 | 
				
			||||||
                                 "/" version
 | 
					                                 "/" version
 | 
				
			||||||
                                 "/qt-everywhere-opensource-src-"
 | 
					                                 "/qt-everywhere-opensource-src-"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,6 +4,8 @@
 | 
				
			||||||
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
					;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
				
			||||||
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
 | 
					;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
 | 
				
			||||||
;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
 | 
					;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Pjotr Prins <pjotr.guix@thebird.nl>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -21,8 +23,7 @@
 | 
				
			||||||
;;; 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 packages rdf)
 | 
					(define-module (gnu packages rdf)
 | 
				
			||||||
  #:use-module ((guix licenses)
 | 
					  #:use-module ((guix licenses) #:prefix license:)
 | 
				
			||||||
                #:select (non-copyleft asl2.0 isc gpl2 lgpl2.1 lgpl2.1+ lgpl3+))
 | 
					 | 
				
			||||||
  #:use-module (guix packages)
 | 
					  #:use-module (guix packages)
 | 
				
			||||||
  #:use-module (guix git-download)
 | 
					  #:use-module (guix git-download)
 | 
				
			||||||
  #:use-module (guix download)
 | 
					  #:use-module (guix download)
 | 
				
			||||||
| 
						 | 
					@ -85,7 +86,7 @@ of RSS, Atom 1.0 and 0.3, GRDDL and microformats for HTML, XHTML and
 | 
				
			||||||
XML.  The serialising syntaxes are RDF/XML (regular, abbreviated, XMP),
 | 
					XML.  The serialising syntaxes are RDF/XML (regular, abbreviated, XMP),
 | 
				
			||||||
Turtle 2013, N-Quads, N-Triples 1.1, Atom 1.0, RSS 1.0, GraphViz DOT,
 | 
					Turtle 2013, N-Quads, N-Triples 1.1, Atom 1.0, RSS 1.0, GraphViz DOT,
 | 
				
			||||||
HTML and JSON.")
 | 
					HTML and JSON.")
 | 
				
			||||||
    (license lgpl2.1+))) ; or any choice of gpl2+ or asl2.0
 | 
					    (license license:lgpl2.1+))) ; or any choice of gpl2+ or asl2.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public clucene
 | 
					(define-public clucene
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -119,7 +120,7 @@ HTML and JSON.")
 | 
				
			||||||
    (description "CLucene is a high-performance, scalable, cross platform,
 | 
					    (description "CLucene is a high-performance, scalable, cross platform,
 | 
				
			||||||
full-featured indexing and searching API.  It is a port of the very popular
 | 
					full-featured indexing and searching API.  It is a port of the very popular
 | 
				
			||||||
Java Lucene text search engine API to C++.")
 | 
					Java Lucene text search engine API to C++.")
 | 
				
			||||||
    (license lgpl2.1)))
 | 
					    (license license:lgpl2.1)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public lucene++
 | 
					(define-public lucene++
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -150,7 +151,7 @@ Java Lucene text search engine API to C++.")
 | 
				
			||||||
    (synopsis "Text search engine")
 | 
					    (synopsis "Text search engine")
 | 
				
			||||||
    (description "Lucene++ is an up to date C++ port of the popular Java
 | 
					    (description "Lucene++ is an up to date C++ port of the popular Java
 | 
				
			||||||
Lucene library, a high-performance, full-featured text search engine.")
 | 
					Lucene library, a high-performance, full-featured text search engine.")
 | 
				
			||||||
    (license (list asl2.0 lgpl3+)))); either asl or lgpl.
 | 
					    (license (list license:asl2.0 license:lgpl3+)))); either asl or lgpl.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public lrdf
 | 
					(define-public lrdf
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -195,7 +196,7 @@ Lucene library, a high-performance, full-featured text search engine.")
 | 
				
			||||||
LADSPA plugins.  It can also be used for general RDF manipulation.  It can
 | 
					LADSPA plugins.  It can also be used for general RDF manipulation.  It can
 | 
				
			||||||
read RDF/XLM and N3 files and export N3 files, and it also has a light
 | 
					read RDF/XLM and N3 files and export N3 files, and it also has a light
 | 
				
			||||||
taxonomic inference capability.")
 | 
					taxonomic inference capability.")
 | 
				
			||||||
    (license gpl2)))
 | 
					    (license license:gpl2)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public rasqal
 | 
					(define-public rasqal
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -236,7 +237,7 @@ SPARQL Query 1.1, SPARQL Update 1.1 (no executing) and the Experimental
 | 
				
			||||||
SPARQL extensions (LAQRS).  Rasqal can write binding query results in the
 | 
					SPARQL extensions (LAQRS).  Rasqal can write binding query results in the
 | 
				
			||||||
SPARQL XML, SPARQL JSON, CSV, TSV, HTML, ASCII tables, RDF/XML and
 | 
					SPARQL XML, SPARQL JSON, CSV, TSV, HTML, ASCII tables, RDF/XML and
 | 
				
			||||||
Turtle/N3 and read them in SPARQL XML, RDF/XML and Turtle/N3.")
 | 
					Turtle/N3 and read them in SPARQL XML, RDF/XML and Turtle/N3.")
 | 
				
			||||||
    (license lgpl2.1+))) ; or any choice of gpl2+ or asl2.0
 | 
					    (license license:lgpl2.1+))) ; or any choice of gpl2+ or asl2.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public redland
 | 
					(define-public redland
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -261,7 +262,7 @@ Turtle/N3 and read them in SPARQL XML, RDF/XML and Turtle/N3.")
 | 
				
			||||||
    (synopsis "RDF library")
 | 
					    (synopsis "RDF library")
 | 
				
			||||||
    (description "The Redland RDF Library (librdf) provides the RDF API
 | 
					    (description "The Redland RDF Library (librdf) provides the RDF API
 | 
				
			||||||
and triple stores.")
 | 
					and triple stores.")
 | 
				
			||||||
    (license lgpl2.1+))) ; or any choice of gpl2+ or asl2.0
 | 
					    (license license:lgpl2.1+))) ; or any choice of gpl2+ or asl2.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public serd
 | 
					(define-public serd
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -295,7 +296,7 @@ knife of RDF syntax, but rather is suited to resource limited or performance
 | 
				
			||||||
critical applications (e.g. converting many gigabytes of NTriples to Turtle),
 | 
					critical applications (e.g. converting many gigabytes of NTriples to Turtle),
 | 
				
			||||||
or situations where a simple reader/writer with minimal dependencies is
 | 
					or situations where a simple reader/writer with minimal dependencies is
 | 
				
			||||||
ideal (e.g. in LV2 implementations or embedded applications).")
 | 
					ideal (e.g. in LV2 implementations or embedded applications).")
 | 
				
			||||||
    (license isc)))
 | 
					    (license license:isc)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public sord
 | 
					(define-public sord
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -330,7 +331,7 @@ ideal (e.g. in LV2 implementations or embedded applications).")
 | 
				
			||||||
    (synopsis "C library for storing RDF data in memory")
 | 
					    (synopsis "C library for storing RDF data in memory")
 | 
				
			||||||
    (description
 | 
					    (description
 | 
				
			||||||
     "Sord is a lightweight C library for storing RDF data in memory.")
 | 
					     "Sord is a lightweight C library for storing RDF data in memory.")
 | 
				
			||||||
    (license isc)))
 | 
					    (license license:isc)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public python-rdflib
 | 
					(define-public python-rdflib
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -365,8 +366,30 @@ ideal (e.g. in LV2 implementations or embedded applications).")
 | 
				
			||||||
    (description
 | 
					    (description
 | 
				
			||||||
      "RDFLib is a Python library for working with RDF, a simple yet
 | 
					      "RDFLib is a Python library for working with RDF, a simple yet
 | 
				
			||||||
powerful language for representing information.")
 | 
					powerful language for representing information.")
 | 
				
			||||||
    (license (non-copyleft "file://LICENSE"
 | 
					    (license (license:non-copyleft "file://LICENSE"
 | 
				
			||||||
                                   "See LICENSE in the distribution."))))
 | 
					                                   "See LICENSE in the distribution."))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public python2-rdflib
 | 
					(define-public python2-rdflib
 | 
				
			||||||
  (package-with-python2 python-rdflib))
 | 
					  (package-with-python2 python-rdflib))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public python-rdflib-jsonld
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "python-rdflib-jsonld")
 | 
				
			||||||
 | 
					    (version "0.5.0")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					      (origin
 | 
				
			||||||
 | 
					        (method url-fetch)
 | 
				
			||||||
 | 
					        (uri (pypi-uri "rdflib-jsonld" version))
 | 
				
			||||||
 | 
					        (sha256
 | 
				
			||||||
 | 
					         (base32
 | 
				
			||||||
 | 
					          "1v85f4hdlrrk0l1najmqmm79ijrvcj259kwsrrxiq1q5chr5azag"))))
 | 
				
			||||||
 | 
					    (build-system python-build-system)
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("python-nose" ,python-nose)))
 | 
				
			||||||
 | 
					    (propagated-inputs
 | 
				
			||||||
 | 
					     `(("python-rdflib" ,python-rdflib)))
 | 
				
			||||||
 | 
					    (home-page "https://github.com/RDFLib/rdflib-jsonld")
 | 
				
			||||||
 | 
					    (synopsis "rdflib extension adding JSON-LD parser and serializer")
 | 
				
			||||||
 | 
					    (description "This package provides an rdflib extension adding JSON-LD
 | 
				
			||||||
 | 
					parser and serializer.")
 | 
				
			||||||
 | 
					    (license license:bsd-3)))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@
 | 
				
			||||||
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
 | 
					;;; Copyright © 2014 John Darrington <jmd@gnu.org>
 | 
				
			||||||
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 | 
					;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 | 
				
			||||||
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 | 
					;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 | 
				
			||||||
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
 | 
					;;; Copyright © 2015, 2016, 2020 Efraim Flashner <efraim@flashner.co.il>
 | 
				
			||||||
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 | 
					;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
 | 
				
			||||||
;;; Copyright © 2016 Francesco Frassinelli <fraph24@gmail.com>
 | 
					;;; Copyright © 2016 Francesco Frassinelli <fraph24@gmail.com>
 | 
				
			||||||
;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 | 
					;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
 | 
				
			||||||
| 
						 | 
					@ -209,6 +209,8 @@ communications via sockets, and various methods for data handling, such as
 | 
				
			||||||
serialization and XML parsing.  It includes the uCommon C++ library, a smaller
 | 
					serialization and XML parsing.  It includes the uCommon C++ library, a smaller
 | 
				
			||||||
reimplementation.")
 | 
					reimplementation.")
 | 
				
			||||||
   (license license:gpl2+) ; plus runtime exception
 | 
					   (license license:gpl2+) ; plus runtime exception
 | 
				
			||||||
 | 
					   (properties '((ftp-directory . "/gnu/commoncpp")
 | 
				
			||||||
 | 
					                 (upstream-name . "commoncpp2")))
 | 
				
			||||||
   (home-page "https://www.gnu.org/software/commoncpp/")))
 | 
					   (home-page "https://www.gnu.org/software/commoncpp/")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public ucommon
 | 
					(define-public ucommon
 | 
				
			||||||
| 
						 | 
					@ -259,14 +261,14 @@ packet-manipulation library.")
 | 
				
			||||||
(define-public osip
 | 
					(define-public osip
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
   (name "osip")
 | 
					   (name "osip")
 | 
				
			||||||
   (version "5.0.0")
 | 
					   (version "5.1.1")
 | 
				
			||||||
   (source (origin
 | 
					   (source (origin
 | 
				
			||||||
            (method url-fetch)
 | 
					            (method url-fetch)
 | 
				
			||||||
            (uri (string-append "mirror://gnu/osip/libosip2-" version ".tar.gz"))
 | 
					            (uri (string-append "mirror://gnu/osip/libosip2-" version ".tar.gz"))
 | 
				
			||||||
            (patches (search-patches "osip-CVE-2017-7853.patch"))
 | 
					            (patches (search-patches "osip-CVE-2017-7853.patch"))
 | 
				
			||||||
            (sha256
 | 
					            (sha256
 | 
				
			||||||
             (base32
 | 
					             (base32
 | 
				
			||||||
              "00yznbrm9q04wgd4b831km8iwlvwvsnwv87igf79g5vj9yakr88q"))))
 | 
					              "0kgnxgzf968kbl6rx3hjsfb3jsg4ydgrsf35gzj319i1f8qjifv1"))))
 | 
				
			||||||
   (build-system gnu-build-system)
 | 
					   (build-system gnu-build-system)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   (synopsis "Library implementing SIP (RFC-3261)")
 | 
					   (synopsis "Library implementing SIP (RFC-3261)")
 | 
				
			||||||
| 
						 | 
					@ -274,6 +276,8 @@ packet-manipulation library.")
 | 
				
			||||||
used to provide multimedia and telecom software developers with an interface
 | 
					used to provide multimedia and telecom software developers with an interface
 | 
				
			||||||
to initiate and control SIP sessions.")
 | 
					to initiate and control SIP sessions.")
 | 
				
			||||||
   (license license:lgpl2.1+)
 | 
					   (license license:lgpl2.1+)
 | 
				
			||||||
 | 
					   (properties '((ftp-directory . "/gnu/osip")
 | 
				
			||||||
 | 
					                 (upstream-name . "libosip2")))
 | 
				
			||||||
   (home-page "https://www.gnu.org/software/osip/")))
 | 
					   (home-page "https://www.gnu.org/software/osip/")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -305,6 +305,7 @@ required structures.")
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
   (name "openssl")
 | 
					   (name "openssl")
 | 
				
			||||||
   (version "1.1.1f")
 | 
					   (version "1.1.1f")
 | 
				
			||||||
 | 
					   (replacement openssl-1.1.1g)
 | 
				
			||||||
   (source (origin
 | 
					   (source (origin
 | 
				
			||||||
             (method url-fetch)
 | 
					             (method url-fetch)
 | 
				
			||||||
             (uri (list (string-append "https://www.openssl.org/source/openssl-"
 | 
					             (uri (list (string-append "https://www.openssl.org/source/openssl-"
 | 
				
			||||||
| 
						 | 
					@ -428,6 +429,24 @@ required structures.")
 | 
				
			||||||
   (license license:openssl)
 | 
					   (license license:openssl)
 | 
				
			||||||
   (home-page "https://www.openssl.org/")))
 | 
					   (home-page "https://www.openssl.org/")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define openssl-1.1.1g
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					   (inherit openssl)
 | 
				
			||||||
 | 
					   (version "1.1.1g")
 | 
				
			||||||
 | 
					   (source (origin
 | 
				
			||||||
 | 
					             (method url-fetch)
 | 
				
			||||||
 | 
					             (uri (list (string-append "https://www.openssl.org/source/openssl-"
 | 
				
			||||||
 | 
					                                       version ".tar.gz")
 | 
				
			||||||
 | 
					                        (string-append "ftp://ftp.openssl.org/source/"
 | 
				
			||||||
 | 
					                                       "openssl-" version ".tar.gz")
 | 
				
			||||||
 | 
					                        (string-append "ftp://ftp.openssl.org/source/old/"
 | 
				
			||||||
 | 
					                                       (string-trim-right version char-set:letter)
 | 
				
			||||||
 | 
					                                       "/openssl-" version ".tar.gz")))
 | 
				
			||||||
 | 
					             (patches (search-patches "openssl-1.1-c-rehash-in.patch"))
 | 
				
			||||||
 | 
					             (sha256
 | 
				
			||||||
 | 
					              (base32
 | 
				
			||||||
 | 
					               "0ikdcc038i7jk8h7asq5xcn8b1xc2rrbc88yfm4hqbz3y5s4gc6x"))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public openssl-1.0
 | 
					(define-public openssl-1.0
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (inherit openssl)
 | 
					    (inherit openssl)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -154,14 +154,14 @@ as well as the classic centralized workflow.")
 | 
				
			||||||
(define-public git
 | 
					(define-public git
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
   (name "git")
 | 
					   (name "git")
 | 
				
			||||||
   (version "2.26.1")
 | 
					   (version "2.26.2")
 | 
				
			||||||
   (source (origin
 | 
					   (source (origin
 | 
				
			||||||
            (method url-fetch)
 | 
					            (method url-fetch)
 | 
				
			||||||
            (uri (string-append "mirror://kernel.org/software/scm/git/git-"
 | 
					            (uri (string-append "mirror://kernel.org/software/scm/git/git-"
 | 
				
			||||||
                                version ".tar.xz"))
 | 
					                                version ".tar.xz"))
 | 
				
			||||||
            (sha256
 | 
					            (sha256
 | 
				
			||||||
             (base32
 | 
					             (base32
 | 
				
			||||||
              "0s03ix9j1h0yychkh1l1cgpr1l9lwzn3rprl08rk8ii5ix02i0l8"))))
 | 
					              "0j685w6pzkn926z5nf5r8fij4ziipvw4c9yb0wc577nzf4j16rbd"))))
 | 
				
			||||||
   (build-system gnu-build-system)
 | 
					   (build-system gnu-build-system)
 | 
				
			||||||
   (native-inputs
 | 
					   (native-inputs
 | 
				
			||||||
    `(("native-perl" ,perl)
 | 
					    `(("native-perl" ,perl)
 | 
				
			||||||
| 
						 | 
					@ -178,7 +178,7 @@ as well as the classic centralized workflow.")
 | 
				
			||||||
                version ".tar.xz"))
 | 
					                version ".tar.xz"))
 | 
				
			||||||
          (sha256
 | 
					          (sha256
 | 
				
			||||||
           (base32
 | 
					           (base32
 | 
				
			||||||
            "0j2031x3qchwjmiy2h849j4x1vd8y4rgqv2ak9dc87xbbpsbfg59"))))
 | 
					            "0rb4f4jc31zrcg4gyjg4fi07dw7nggkjg2nqfiq5p1aayw2f2ga3"))))
 | 
				
			||||||
      ;; For subtree documentation.
 | 
					      ;; For subtree documentation.
 | 
				
			||||||
      ("asciidoc" ,asciidoc-py3)
 | 
					      ("asciidoc" ,asciidoc-py3)
 | 
				
			||||||
      ("docbook-xsl" ,docbook-xsl)
 | 
					      ("docbook-xsl" ,docbook-xsl)
 | 
				
			||||||
| 
						 | 
					@ -905,9 +905,9 @@ collaboration using typical untrusted file hosts or services.")
 | 
				
			||||||
           (method url-fetch)
 | 
					           (method url-fetch)
 | 
				
			||||||
           ;; cgit is tightly bound to git.  Use GIT_VER from the Makefile,
 | 
					           ;; cgit is tightly bound to git.  Use GIT_VER from the Makefile,
 | 
				
			||||||
           ;; which may not match the current (package-version git).
 | 
					           ;; which may not match the current (package-version git).
 | 
				
			||||||
           (uri "mirror://kernel.org/software/scm/git/git-2.25.3.tar.xz")
 | 
					           (uri "mirror://kernel.org/software/scm/git/git-2.25.4.tar.xz")
 | 
				
			||||||
           (sha256
 | 
					           (sha256
 | 
				
			||||||
            (base32 "0yvr97cl0dvj3fwblq1mb0cp97v8hrn9l98p8b1jx8815mbsnz9h"))))
 | 
					            (base32 "11am6s46wmn1yll5614smjhzlghbqq6gysgcs64igjr9y5wzpdxq"))))
 | 
				
			||||||
       ("openssl" ,openssl)
 | 
					       ("openssl" ,openssl)
 | 
				
			||||||
       ("groff" ,groff)
 | 
					       ("groff" ,groff)
 | 
				
			||||||
       ("python" ,python)
 | 
					       ("python" ,python)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -39,6 +39,7 @@
 | 
				
			||||||
;;; Copyright © 2020 Josh Holland <josh@inv.alid.pw>
 | 
					;;; Copyright © 2020 Josh Holland <josh@inv.alid.pw>
 | 
				
			||||||
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
 | 
					;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
 | 
				
			||||||
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
					;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -2437,7 +2438,7 @@ be used for realtime video capture via Linux-specific APIs.")
 | 
				
			||||||
(define-public obs
 | 
					(define-public obs
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "obs")
 | 
					    (name "obs")
 | 
				
			||||||
    (version "24.0.4")
 | 
					    (version "25.0.7")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method git-fetch)
 | 
					              (method git-fetch)
 | 
				
			||||||
              (uri (git-reference
 | 
					              (uri (git-reference
 | 
				
			||||||
| 
						 | 
					@ -2446,7 +2447,7 @@ be used for realtime video capture via Linux-specific APIs.")
 | 
				
			||||||
              (file-name (git-file-name name version))
 | 
					              (file-name (git-file-name name version))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "0m15ch2ix9qrdf1a9mj7wcpl72z3h13zx60c9q72sb1435id2g1q"))))
 | 
					                "02ppkp1j5yxnxv663nz5wv4vbcg3k53l43xq94d1p1b3j4wxwq8b"))))
 | 
				
			||||||
    (build-system cmake-build-system)
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
    (arguments
 | 
					    (arguments
 | 
				
			||||||
     `(#:tests? #f))                    ; no tests
 | 
					     `(#:tests? #f))                    ; no tests
 | 
				
			||||||
| 
						 | 
					@ -3921,3 +3922,31 @@ work-in-progress, aiming to support video-on-demand and live streaming
 | 
				
			||||||
applications.  It only supports Intel-compatible CPUs (x86).")
 | 
					applications.  It only supports Intel-compatible CPUs (x86).")
 | 
				
			||||||
    (home-page "https://github.com/OpenVisualCloud/SVT-AV1")
 | 
					    (home-page "https://github.com/OpenVisualCloud/SVT-AV1")
 | 
				
			||||||
    (license license:bsd-2)))
 | 
					    (license license:bsd-2)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public w-scan
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "w-scan")
 | 
				
			||||||
 | 
					    (version "20170107")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri (string-append "https://www.gen2vdr.de/wirbel/w_scan/w_scan-"
 | 
				
			||||||
 | 
					                           version ".tar.bz2"))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32 "1zkgnj2sfvckix360wwk1v5s43g69snm45m0drnzyv7hgf5g7q1q"))))
 | 
				
			||||||
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
 | 
					    (synopsis "Scan ATSC/DVB-C/DVB-S/DVB-T channels")
 | 
				
			||||||
 | 
					    (description
 | 
				
			||||||
 | 
					     "This is a small command line utility used to perform frequency scans for
 | 
				
			||||||
 | 
					DVB and ATSC transmissions without initial tuning data.  It can print the
 | 
				
			||||||
 | 
					result in several formats:
 | 
				
			||||||
 | 
					@itemize
 | 
				
			||||||
 | 
					@item VDR channels.conf,
 | 
				
			||||||
 | 
					@item czap/tzap/xine/mplayer channels.conf,
 | 
				
			||||||
 | 
					@item Gstreamer dvbsrc plugin,
 | 
				
			||||||
 | 
					@item VLC xspf playlist,
 | 
				
			||||||
 | 
					@item XML,
 | 
				
			||||||
 | 
					@item initial tuning data for scan or dvbv5-scan.
 | 
				
			||||||
 | 
					@end itemize\n")
 | 
				
			||||||
 | 
					    (home-page "https://www.gen2vdr.de/wirbel/w_scan/index2.html")
 | 
				
			||||||
 | 
					    (license license:gpl2+)))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										64
									
								
								gnu/packages/visidata.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								gnu/packages/visidata.scm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,64 @@
 | 
				
			||||||
 | 
					;;; GNU Guix --- Functional package management for GNU
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
 | 
				
			||||||
 | 
					;;;
 | 
				
			||||||
 | 
					;;; 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 visidata)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages databases)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages python-science)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages python-web)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages python-xyz)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages time)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages xml)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system python)
 | 
				
			||||||
 | 
					  #:use-module (guix download)
 | 
				
			||||||
 | 
					  #:use-module ((guix licenses) #:prefix license:)
 | 
				
			||||||
 | 
					  #:use-module (guix packages))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public visidata
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "visidata")
 | 
				
			||||||
 | 
					    (version "1.5.2")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri (pypi-uri "visidata" version))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32
 | 
				
			||||||
 | 
					         "10adfyn4gkisvciqawgh2lakkhhnjjxiyp7mzbgcwkq1b3sigpf1"))))
 | 
				
			||||||
 | 
					    (build-system python-build-system)
 | 
				
			||||||
 | 
					    ;; Tests disabled because they are not packaged with the source tarball.
 | 
				
			||||||
 | 
					    ;; Upstream suggests tests will be packaged with tarball around 2.0 release.
 | 
				
			||||||
 | 
					    (arguments '(#:tests? #f))
 | 
				
			||||||
 | 
					    (inputs
 | 
				
			||||||
 | 
					     `(("python-dateutil" ,python-dateutil)
 | 
				
			||||||
 | 
					       ("python-fonttools" ,python-fonttools)
 | 
				
			||||||
 | 
					       ("python-h5py" ,python-h5py)
 | 
				
			||||||
 | 
					       ("python-lxml" ,python-lxml)
 | 
				
			||||||
 | 
					       ("python-openpyxl" ,python-openpyxl)
 | 
				
			||||||
 | 
					       ("python-pandas" ,python-pandas)
 | 
				
			||||||
 | 
					       ("python-psycopg2" ,python-psycopg2)
 | 
				
			||||||
 | 
					       ("python-pyyaml" ,python-pyyaml)
 | 
				
			||||||
 | 
					       ("python-requests" ,python-requests)
 | 
				
			||||||
 | 
					       ("python-xlrd" ,python-xlrd)))
 | 
				
			||||||
 | 
					    (synopsis "Terminal spreadsheet multitool for discovering and arranging data")
 | 
				
			||||||
 | 
					    (description
 | 
				
			||||||
 | 
					     "VisiData is an interactive multitool for tabular data.  It combines the
 | 
				
			||||||
 | 
					clarity of a spreadsheet, the efficiency of the terminal, and the power of
 | 
				
			||||||
 | 
					Python, into a lightweight utility which can handle millions of rows.")
 | 
				
			||||||
 | 
					    (home-page "https://www.visidata.org/")
 | 
				
			||||||
 | 
					    (license (list license:gpl3
 | 
				
			||||||
 | 
					                   license:expat)))) ;; visidata/vdtui.py
 | 
				
			||||||
| 
						 | 
					@ -10,6 +10,7 @@
 | 
				
			||||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
					;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
				
			||||||
;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
 | 
					;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
 | 
				
			||||||
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
 | 
					;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -30,10 +31,13 @@
 | 
				
			||||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
					  #:use-module ((guix licenses) #:prefix license:)
 | 
				
			||||||
  #:use-module (guix packages)
 | 
					  #:use-module (guix packages)
 | 
				
			||||||
  #:use-module (gnu packages)
 | 
					  #:use-module (gnu packages)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages backup)
 | 
				
			||||||
  #:use-module (gnu packages compression)
 | 
					  #:use-module (gnu packages compression)
 | 
				
			||||||
  #:use-module (gnu packages documentation)
 | 
					  #:use-module (gnu packages documentation)
 | 
				
			||||||
  #:use-module (gnu packages fltk)
 | 
					  #:use-module (gnu packages fltk)
 | 
				
			||||||
  #:use-module (gnu packages fontutils)
 | 
					  #:use-module (gnu packages fontutils)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages freedesktop)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages glib)
 | 
				
			||||||
  #:use-module (gnu packages gtk)
 | 
					  #:use-module (gnu packages gtk)
 | 
				
			||||||
  #:use-module (gnu packages gnupg)
 | 
					  #:use-module (gnu packages gnupg)
 | 
				
			||||||
  #:use-module (gnu packages libevent)
 | 
					  #:use-module (gnu packages libevent)
 | 
				
			||||||
| 
						 | 
					@ -42,6 +46,7 @@
 | 
				
			||||||
  #:use-module (gnu packages lisp-xyz)
 | 
					  #:use-module (gnu packages lisp-xyz)
 | 
				
			||||||
  #:use-module (gnu packages lua)
 | 
					  #:use-module (gnu packages lua)
 | 
				
			||||||
  #:use-module (gnu packages gnome)
 | 
					  #:use-module (gnu packages gnome)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages gnome-xyz)
 | 
				
			||||||
  #:use-module (gnu packages ncurses)
 | 
					  #:use-module (gnu packages ncurses)
 | 
				
			||||||
  #:use-module (gnu packages perl)
 | 
					  #:use-module (gnu packages perl)
 | 
				
			||||||
  #:use-module (gnu packages pkg-config)
 | 
					  #:use-module (gnu packages pkg-config)
 | 
				
			||||||
| 
						 | 
					@ -57,11 +62,68 @@
 | 
				
			||||||
  #:use-module (gnu packages gcc)
 | 
					  #:use-module (gnu packages gcc)
 | 
				
			||||||
  #:use-module (guix download)
 | 
					  #:use-module (guix download)
 | 
				
			||||||
  #:use-module (guix git-download)
 | 
					  #:use-module (guix git-download)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system cmake)
 | 
				
			||||||
  #:use-module (guix build-system gnu)
 | 
					  #:use-module (guix build-system gnu)
 | 
				
			||||||
  #:use-module (guix build-system glib-or-gtk)
 | 
					  #:use-module (guix build-system glib-or-gtk)
 | 
				
			||||||
  #:use-module (guix build-system python)
 | 
					  #:use-module (guix build-system python)
 | 
				
			||||||
  #:use-module (guix build-system asdf))
 | 
					  #:use-module (guix build-system asdf))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-public midori
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (name "midori")
 | 
				
			||||||
 | 
					    (version "9.0")
 | 
				
			||||||
 | 
					    (source
 | 
				
			||||||
 | 
					     (origin
 | 
				
			||||||
 | 
					       (method url-fetch)
 | 
				
			||||||
 | 
					       (uri
 | 
				
			||||||
 | 
					        (string-append "https://github.com/midori-browser/core/releases/"
 | 
				
			||||||
 | 
					                       "download/v" version "/" name "-v" version ".tar.gz"))
 | 
				
			||||||
 | 
					       (sha256
 | 
				
			||||||
 | 
					        (base32
 | 
				
			||||||
 | 
					         "05i04qa83dnarmgkx4xsk6fga5lw1lmslh4rb3vhyyy4ala562jy"))))
 | 
				
			||||||
 | 
					    (build-system cmake-build-system)
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     `(#:imported-modules
 | 
				
			||||||
 | 
					       (,@%cmake-build-system-modules
 | 
				
			||||||
 | 
					        (guix build glib-or-gtk-build-system))
 | 
				
			||||||
 | 
					       #:modules
 | 
				
			||||||
 | 
					       ((guix build cmake-build-system)
 | 
				
			||||||
 | 
					        ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
 | 
				
			||||||
 | 
					        (guix build utils))
 | 
				
			||||||
 | 
					       #:phases
 | 
				
			||||||
 | 
					       (modify-phases %standard-phases
 | 
				
			||||||
 | 
					         (add-after 'install 'glib-or-gtk-compile-schemas
 | 
				
			||||||
 | 
					           (assoc-ref glib-or-gtk:%standard-phases
 | 
				
			||||||
 | 
					                      'glib-or-gtk-compile-schemas))
 | 
				
			||||||
 | 
					         (add-after 'install 'glib-or-gtk-wrap
 | 
				
			||||||
 | 
					           (assoc-ref glib-or-gtk:%standard-phases
 | 
				
			||||||
 | 
					                      'glib-or-gtk-wrap)))))
 | 
				
			||||||
 | 
					    (native-inputs
 | 
				
			||||||
 | 
					     `(("glib:bin" ,glib "bin")
 | 
				
			||||||
 | 
					       ("gtk+:bin" ,gtk+ "bin")
 | 
				
			||||||
 | 
					       ("intltool" ,intltool)
 | 
				
			||||||
 | 
					       ("pkg-config" ,pkg-config)))
 | 
				
			||||||
 | 
					    (inputs
 | 
				
			||||||
 | 
					     `(("adwaita-icon-theme" ,adwaita-icon-theme)
 | 
				
			||||||
 | 
					       ("gcr" ,gcr)
 | 
				
			||||||
 | 
					       ("glib" ,glib)
 | 
				
			||||||
 | 
					       ("glib-networking" ,glib-networking)
 | 
				
			||||||
 | 
					       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
 | 
				
			||||||
 | 
					       ("gtk+" ,gtk+)
 | 
				
			||||||
 | 
					       ("json-glib" ,json-glib)
 | 
				
			||||||
 | 
					       ("libarchive" ,libarchive)
 | 
				
			||||||
 | 
					       ("libpeas" ,libpeas)
 | 
				
			||||||
 | 
					       ("libsoup" ,libsoup)
 | 
				
			||||||
 | 
					       ("sqlite" ,sqlite)
 | 
				
			||||||
 | 
					       ("vala" ,vala)
 | 
				
			||||||
 | 
					       ("webkitgtk" ,webkitgtk)))
 | 
				
			||||||
 | 
					    (synopsis "Lightweight graphical web browser")
 | 
				
			||||||
 | 
					    (description "@code{Midori} is a lightweight, Webkit-based web browser.
 | 
				
			||||||
 | 
					It features integration with GTK+3, configurable web search engine, bookmark
 | 
				
			||||||
 | 
					management, extensions such as advertisement blocker and colorful tabs.")
 | 
				
			||||||
 | 
					    (home-page "https://www.midori-browser.org")
 | 
				
			||||||
 | 
					    (license license:lgpl2.1+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public dillo
 | 
					(define-public dillo
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "dillo")
 | 
					    (name "dillo")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +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 © 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 | 
					;;; Copyright © 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 | 
				
			||||||
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
					;;; Copyright © 2016, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
 | 
				
			||||||
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
 | 
					;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
 | 
				
			||||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
					;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -176,4 +176,5 @@ online pastebin services.")
 | 
				
			||||||
   (description "GNU Wget2 is the successor of GNU Wget, a file and recursive
 | 
					   (description "GNU Wget2 is the successor of GNU Wget, a file and recursive
 | 
				
			||||||
website downloader.  Designed and written from scratch it wraps around libwget,
 | 
					website downloader.  Designed and written from scratch it wraps around libwget,
 | 
				
			||||||
that provides the basic functions needed by a web client.")
 | 
					that provides the basic functions needed by a web client.")
 | 
				
			||||||
 | 
					   (properties '((ftp-directory . "/gnu/wget")))
 | 
				
			||||||
   (license (list license:gpl3+ license:lgpl3+))))
 | 
					   (license (list license:gpl3+ license:lgpl3+))))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2223,7 +2223,7 @@ tools to complement clipnotify.")
 | 
				
			||||||
         (file-name (git-file-name name version))
 | 
					         (file-name (git-file-name name version))
 | 
				
			||||||
         (sha256
 | 
					         (sha256
 | 
				
			||||||
          (base32
 | 
					          (base32
 | 
				
			||||||
           "12vvircdhl4psqi51cnfd6bqy85v2vwfcmdq1mimjgng727nwzys"))))
 | 
					           "0053j4i14lz5m2bzc5sch5id5ilr1bl196mp8fp0q8x74w3vavs9"))))
 | 
				
			||||||
      (build-system gnu-build-system)
 | 
					      (build-system gnu-build-system)
 | 
				
			||||||
      (arguments
 | 
					      (arguments
 | 
				
			||||||
       `(#:phases
 | 
					       `(#:phases
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,7 +12,6 @@
 | 
				
			||||||
;;; Copyright © 2019 L  p R n  d n <guix@lprndn.info>
 | 
					;;; Copyright © 2019 L  p R n  d n <guix@lprndn.info>
 | 
				
			||||||
;;; Copyright © 2019 Ingo Ruhnke <grumbel@gmail.com>
 | 
					;;; Copyright © 2019 Ingo Ruhnke <grumbel@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
					;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Naga Malleswari <nagamalli@riseup.net>
 | 
					 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -30,43 +29,43 @@
 | 
				
			||||||
;;; 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 packages xfce)
 | 
					(define-module (gnu packages xfce)
 | 
				
			||||||
  #:use-module ((guix licenses) #:hide (freetype))
 | 
					 | 
				
			||||||
  #:use-module (guix packages)
 | 
					 | 
				
			||||||
  #:use-module (guix download)
 | 
					 | 
				
			||||||
  #:use-module (guix gexp)
 | 
					 | 
				
			||||||
  #:use-module (guix utils)
 | 
					 | 
				
			||||||
  #:use-module (guix build-system cmake)
 | 
					 | 
				
			||||||
  #:use-module (guix build-system glib-or-gtk)
 | 
					 | 
				
			||||||
  #:use-module (guix build-system gnu)
 | 
					 | 
				
			||||||
  #:use-module (guix build-system trivial)
 | 
					 | 
				
			||||||
  #:use-module (gnu artwork)
 | 
					  #:use-module (gnu artwork)
 | 
				
			||||||
  #:use-module (gnu packages)
 | 
					  #:use-module (gnu packages)
 | 
				
			||||||
  #:use-module (gnu packages base)
 | 
					  #:use-module (gnu packages base)
 | 
				
			||||||
  #:use-module (gnu packages calendar)
 | 
					  #:use-module (gnu packages calendar)
 | 
				
			||||||
  #:use-module (gnu packages cdrom)
 | 
					  #:use-module (gnu packages cdrom)
 | 
				
			||||||
  #:use-module (gnu packages pkg-config)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages glib)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages gtk)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages imagemagick)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages inkscape)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages xorg)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages xdisorg)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages web)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages fontutils)
 | 
					  #:use-module (gnu packages fontutils)
 | 
				
			||||||
  #:use-module (gnu packages freedesktop)
 | 
					  #:use-module (gnu packages freedesktop)
 | 
				
			||||||
  #:use-module (gnu packages image)
 | 
					  #:use-module (gnu packages glib)
 | 
				
			||||||
  #:use-module (gnu packages gnome)
 | 
					  #:use-module (gnu packages gnome)
 | 
				
			||||||
  #:use-module (gnu packages pdf)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages polkit)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages gstreamer)
 | 
					  #:use-module (gnu packages gstreamer)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages gtk)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages image)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages imagemagick)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages inkscape)
 | 
				
			||||||
  #:use-module (gnu packages libcanberra)
 | 
					  #:use-module (gnu packages libcanberra)
 | 
				
			||||||
  #:use-module (gnu packages linux)
 | 
					  #:use-module (gnu packages linux)
 | 
				
			||||||
  #:use-module (gnu packages photo)
 | 
					 | 
				
			||||||
  #:use-module (gnu packages pcre)
 | 
					  #:use-module (gnu packages pcre)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages pdf)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages photo)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages pkg-config)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages polkit)
 | 
				
			||||||
  #:use-module (gnu packages popt)
 | 
					  #:use-module (gnu packages popt)
 | 
				
			||||||
  #:use-module (gnu packages pulseaudio)
 | 
					  #:use-module (gnu packages pulseaudio)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages web)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages wm)
 | 
				
			||||||
  #:use-module (gnu packages xml)
 | 
					  #:use-module (gnu packages xml)
 | 
				
			||||||
  #:use-module (gnu packages wm))
 | 
					  #:use-module (gnu packages xdisorg)
 | 
				
			||||||
 | 
					  #:use-module (gnu packages xorg)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system cmake)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system glib-or-gtk)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system gnu)
 | 
				
			||||||
 | 
					  #:use-module (guix build-system trivial)
 | 
				
			||||||
 | 
					  #:use-module (guix download)
 | 
				
			||||||
 | 
					  #:use-module (guix gexp)
 | 
				
			||||||
 | 
					  #:use-module ((guix licenses) #:hide (freetype))
 | 
				
			||||||
 | 
					  #:use-module (guix packages)
 | 
				
			||||||
 | 
					  #:use-module (guix utils))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-public gtk-xfce-engine
 | 
					(define-public gtk-xfce-engine
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -94,15 +93,15 @@
 | 
				
			||||||
(define-public libxfce4util
 | 
					(define-public libxfce4util
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
    (name "libxfce4util")
 | 
					    (name "libxfce4util")
 | 
				
			||||||
    (version "4.15.0")
 | 
					    (version "4.14.0")
 | 
				
			||||||
    (source (origin
 | 
					    (source (origin
 | 
				
			||||||
              (method url-fetch)
 | 
					              (method url-fetch)
 | 
				
			||||||
              (uri (string-append "https://archive.xfce.org/src/xfce/libxfce4util/"
 | 
					              (uri (string-append "http://archive.xfce.org/xfce/"
 | 
				
			||||||
                                  (version-major+minor version)
 | 
					                                  (version-major+minor version)
 | 
				
			||||||
                                  "/" name "-" version ".tar.bz2"))
 | 
					                                  "/src/" name "-" version ".tar.bz2"))
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "1lq9i30jdci4if2daxdcqni0x5jvpnaflgp19za9sks3gm4jma5v"))))
 | 
					                "093338faqqsrlc8dkmzr7qv411ysxczg1wlg7s3gvhrfk6vpkb9j"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system gnu-build-system)
 | 
				
			||||||
    (native-inputs
 | 
					    (native-inputs
 | 
				
			||||||
     `(("pkg-config" ,pkg-config)
 | 
					     `(("pkg-config" ,pkg-config)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -632,6 +632,23 @@ and FILE could be \"/usr/bin/env\"."
 | 
				
			||||||
  (files->etc-directory (service-value service)))
 | 
					  (files->etc-directory (service-value service)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define (files->etc-directory files)
 | 
					(define (files->etc-directory files)
 | 
				
			||||||
 | 
					  (define (assert-no-duplicates files)
 | 
				
			||||||
 | 
					    (let loop ((files files)
 | 
				
			||||||
 | 
					               (seen (set)))
 | 
				
			||||||
 | 
					      (match files
 | 
				
			||||||
 | 
					        (() #t)
 | 
				
			||||||
 | 
					        (((file _) rest ...)
 | 
				
			||||||
 | 
					         (when (set-contains? seen file)
 | 
				
			||||||
 | 
					           (raise (condition
 | 
				
			||||||
 | 
					                   (&message
 | 
				
			||||||
 | 
					                    (message (format #f (G_ "duplicate '~a' entry for /etc")
 | 
				
			||||||
 | 
					                                     file))))))
 | 
				
			||||||
 | 
					         (loop rest (set-insert file seen))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  ;; Detect duplicates early instead of letting them through, eventually
 | 
				
			||||||
 | 
					  ;; leading to a build failure of "etc.drv".
 | 
				
			||||||
 | 
					  (assert-no-duplicates files)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  (file-union "etc" files))
 | 
					  (file-union "etc" files))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define (etc-entry files)
 | 
					(define (etc-entry files)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,6 +12,7 @@
 | 
				
			||||||
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
 | 
					;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
 | 
				
			||||||
;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
					;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
				
			||||||
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
 | 
					;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -92,6 +93,7 @@
 | 
				
			||||||
            udev-service
 | 
					            udev-service
 | 
				
			||||||
            udev-rule
 | 
					            udev-rule
 | 
				
			||||||
            file->udev-rule
 | 
					            file->udev-rule
 | 
				
			||||||
 | 
					            udev-rules-service
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            login-configuration
 | 
					            login-configuration
 | 
				
			||||||
            login-configuration?
 | 
					            login-configuration?
 | 
				
			||||||
| 
						 | 
					@ -557,7 +559,7 @@ down.")))
 | 
				
			||||||
        (documentation "Add TRNG to entropy pool.")
 | 
					        (documentation "Add TRNG to entropy pool.")
 | 
				
			||||||
        (requirement '(udev))
 | 
					        (requirement '(udev))
 | 
				
			||||||
        (provision '(trng))
 | 
					        (provision '(trng))
 | 
				
			||||||
        (start #~(make-forkexec-constructor #$@rngd-command))
 | 
					        (start #~(make-forkexec-constructor '#$rngd-command))
 | 
				
			||||||
        (stop #~(make-kill-destructor))))))
 | 
					        (stop #~(make-kill-destructor))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define* (rngd-service #:key
 | 
					(define* (rngd-service #:key
 | 
				
			||||||
| 
						 | 
					@ -2042,6 +2044,26 @@ extra rules from the packages listed in @var{rules}."
 | 
				
			||||||
  (service udev-service-type
 | 
					  (service udev-service-type
 | 
				
			||||||
           (udev-configuration (udev udev) (rules rules))))
 | 
					           (udev-configuration (udev udev) (rules rules))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define* (udev-rules-service name rules #:key (groups '()))
 | 
				
			||||||
 | 
					  "Return a service that extends udev-service-type with RULES and
 | 
				
			||||||
 | 
					account-service-type with GROUPS as system groups.  This works by creating a
 | 
				
			||||||
 | 
					singleton service type NAME-udev-rules, of which the returned service is an
 | 
				
			||||||
 | 
					instance."
 | 
				
			||||||
 | 
					  (let* ((name (symbol-append name '-udev-rules))
 | 
				
			||||||
 | 
					         (account-extension
 | 
				
			||||||
 | 
					          (const (map (lambda (group)
 | 
				
			||||||
 | 
					                        (user-group (name group) (system? #t)))
 | 
				
			||||||
 | 
					                      groups)))
 | 
				
			||||||
 | 
					         (udev-extension (const (list rules)))
 | 
				
			||||||
 | 
					         (type (service-type
 | 
				
			||||||
 | 
					                (name name)
 | 
				
			||||||
 | 
					                (extensions (list
 | 
				
			||||||
 | 
					                             (service-extension
 | 
				
			||||||
 | 
					                              account-service-type account-extension)
 | 
				
			||||||
 | 
					                             (service-extension
 | 
				
			||||||
 | 
					                              udev-service-type udev-extension))))))
 | 
				
			||||||
 | 
					    (service type #f)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define swap-service-type
 | 
					(define swap-service-type
 | 
				
			||||||
  (shepherd-service-type
 | 
					  (shepherd-service-type
 | 
				
			||||||
   'swap
 | 
					   'swap
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -452,8 +452,8 @@ site} for more information."
 | 
				
			||||||
   (requirement '(dbus-system udev))
 | 
					   (requirement '(dbus-system udev))
 | 
				
			||||||
   (documentation "Run the bluetoothd daemon.")
 | 
					   (documentation "Run the bluetoothd daemon.")
 | 
				
			||||||
   (start #~(make-forkexec-constructor
 | 
					   (start #~(make-forkexec-constructor
 | 
				
			||||||
             (string-append #$(bluetooth-configuration-bluez config)
 | 
					             (list #$(file-append (bluetooth-configuration-bluez config)
 | 
				
			||||||
                            "/libexec/bluetooth/bluetoothd")))
 | 
					                                  "/libexec/bluetooth/bluetoothd"))))
 | 
				
			||||||
   (stop #~(make-kill-destructor))))
 | 
					   (stop #~(make-kill-destructor))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define bluetooth-service-type
 | 
					(define bluetooth-service-type
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1544,9 +1544,10 @@ greyed out, instead of only later giving \"not selectable\" popup error.
 | 
				
			||||||
           (start #~(make-forkexec-constructor
 | 
					           (start #~(make-forkexec-constructor
 | 
				
			||||||
                     (list (string-append #$dovecot "/sbin/dovecot")
 | 
					                     (list (string-append #$dovecot "/sbin/dovecot")
 | 
				
			||||||
                           "-F")))
 | 
					                           "-F")))
 | 
				
			||||||
           (stop #~(make-forkexec-constructor
 | 
					           (stop #~(lambda _
 | 
				
			||||||
                    (list (string-append #$dovecot "/sbin/dovecot")
 | 
					                     (invoke #$(file-append dovecot "/sbin/dovecot")
 | 
				
			||||||
                          "stop")))))))
 | 
					                             "stop")
 | 
				
			||||||
 | 
					                     #f))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define %dovecot-pam-services
 | 
					(define %dovecot-pam-services
 | 
				
			||||||
  (list (unix-pam-service "dovecot")))
 | 
					  (list (unix-pam-service "dovecot")))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -32,6 +32,7 @@
 | 
				
			||||||
(define-module (gnu services networking)
 | 
					(define-module (gnu services networking)
 | 
				
			||||||
  #:use-module (gnu services)
 | 
					  #:use-module (gnu services)
 | 
				
			||||||
  #:use-module (gnu services base)
 | 
					  #:use-module (gnu services base)
 | 
				
			||||||
 | 
					  #:use-module (gnu services configuration)
 | 
				
			||||||
  #:use-module (gnu services shepherd)
 | 
					  #:use-module (gnu services shepherd)
 | 
				
			||||||
  #:use-module (gnu services dbus)
 | 
					  #:use-module (gnu services dbus)
 | 
				
			||||||
  #:use-module (gnu system shadow)
 | 
					  #:use-module (gnu system shadow)
 | 
				
			||||||
| 
						 | 
					@ -140,6 +141,18 @@
 | 
				
			||||||
            wpa-supplicant-configuration-extra-options
 | 
					            wpa-supplicant-configuration-extra-options
 | 
				
			||||||
            wpa-supplicant-service-type
 | 
					            wpa-supplicant-service-type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            hostapd-configuration
 | 
				
			||||||
 | 
					            hostapd-configuration?
 | 
				
			||||||
 | 
					            hostapd-configuration-package
 | 
				
			||||||
 | 
					            hostapd-configuration-interface
 | 
				
			||||||
 | 
					            hostapd-configuration-ssid
 | 
				
			||||||
 | 
					            hostapd-configuration-broadcast-ssid?
 | 
				
			||||||
 | 
					            hostapd-configuration-channel
 | 
				
			||||||
 | 
					            hostapd-configuration-driver
 | 
				
			||||||
 | 
					            hostapd-service-type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            simulated-wifi-service-type
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            openvswitch-service-type
 | 
					            openvswitch-service-type
 | 
				
			||||||
            openvswitch-configuration
 | 
					            openvswitch-configuration
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1358,6 +1371,112 @@ whatever the thing is supposed to do).")))
 | 
				
			||||||
implements authentication, key negotiation and more for wireless networks.")
 | 
					implements authentication, key negotiation and more for wireless networks.")
 | 
				
			||||||
                  (default-value (wpa-supplicant-configuration)))))
 | 
					                  (default-value (wpa-supplicant-configuration)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;;
 | 
				
			||||||
 | 
					;;; Hostapd.
 | 
				
			||||||
 | 
					;;;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define-record-type* <hostapd-configuration>
 | 
				
			||||||
 | 
					  hostapd-configuration make-hostapd-configuration
 | 
				
			||||||
 | 
					  hostapd-configuration?
 | 
				
			||||||
 | 
					  (package           hostapd-configuration-package
 | 
				
			||||||
 | 
					                     (default hostapd))
 | 
				
			||||||
 | 
					  (interface         hostapd-configuration-interface ;string
 | 
				
			||||||
 | 
					                     (default "wlan0"))
 | 
				
			||||||
 | 
					  (ssid              hostapd-configuration-ssid)  ;string
 | 
				
			||||||
 | 
					  (broadcast-ssid?   hostapd-configuration-broadcast-ssid? ;Boolean
 | 
				
			||||||
 | 
					                     (default #t))
 | 
				
			||||||
 | 
					  (channel           hostapd-configuration-channel ;integer
 | 
				
			||||||
 | 
					                     (default 1))
 | 
				
			||||||
 | 
					  (driver            hostapd-configuration-driver ;string
 | 
				
			||||||
 | 
					                     (default "nl80211"))
 | 
				
			||||||
 | 
					  ;; See <https://w1.fi/cgit/hostap/plain/hostapd/hostapd.conf> for a list of
 | 
				
			||||||
 | 
					  ;; additional options we could add.
 | 
				
			||||||
 | 
					  (extra-settings    hostapd-configuration-extra-settings ;string
 | 
				
			||||||
 | 
					                     (default "")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (hostapd-configuration-file config)
 | 
				
			||||||
 | 
					  "Return the configuration file for CONFIG, a <hostapd-configuration>."
 | 
				
			||||||
 | 
					  (match-record config <hostapd-configuration>
 | 
				
			||||||
 | 
					    (interface ssid broadcast-ssid? channel driver extra-settings)
 | 
				
			||||||
 | 
					    (plain-file "hostapd.conf"
 | 
				
			||||||
 | 
					                (string-append "\
 | 
				
			||||||
 | 
					# Generated from your Guix configuration.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					interface=" interface "
 | 
				
			||||||
 | 
					ssid=" ssid "
 | 
				
			||||||
 | 
					ignore_broadcast_ssid=" (if broadcast-ssid? "0" "1") "
 | 
				
			||||||
 | 
					channel=" (number->string channel) "\n"
 | 
				
			||||||
 | 
					extra-settings "\n"))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define* (hostapd-shepherd-services config #:key (requirement '()))
 | 
				
			||||||
 | 
					  "Return Shepherd services for hostapd."
 | 
				
			||||||
 | 
					  (list (shepherd-service
 | 
				
			||||||
 | 
					         (provision '(hostapd))
 | 
				
			||||||
 | 
					         (requirement `(user-processes ,@requirement))
 | 
				
			||||||
 | 
					         (documentation "Run the hostapd WiFi access point daemon.")
 | 
				
			||||||
 | 
					         (start #~(make-forkexec-constructor
 | 
				
			||||||
 | 
					                   (list #$(file-append hostapd "/sbin/hostapd")
 | 
				
			||||||
 | 
					                         #$(hostapd-configuration-file config))
 | 
				
			||||||
 | 
					                   #:log-file "/var/log/hostapd.log"))
 | 
				
			||||||
 | 
					         (stop #~(make-kill-destructor)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define hostapd-service-type
 | 
				
			||||||
 | 
					  (service-type
 | 
				
			||||||
 | 
					   (name 'hostapd)
 | 
				
			||||||
 | 
					   (extensions
 | 
				
			||||||
 | 
					    (list (service-extension shepherd-root-service-type
 | 
				
			||||||
 | 
					                             hostapd-shepherd-services)))
 | 
				
			||||||
 | 
					   (description
 | 
				
			||||||
 | 
					    "Run the @uref{https://w1.fi/hostapd/, hostapd} daemon for Wi-Fi access
 | 
				
			||||||
 | 
					points and authentication servers.")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (simulated-wifi-shepherd-services config)
 | 
				
			||||||
 | 
					  "Return Shepherd services to run hostapd with CONFIG, a
 | 
				
			||||||
 | 
					<hostapd-configuration>, as well as services to set up WiFi hardware
 | 
				
			||||||
 | 
					simulation."
 | 
				
			||||||
 | 
					  (append (hostapd-shepherd-services config
 | 
				
			||||||
 | 
					                                     #:requirement
 | 
				
			||||||
 | 
					                                     '(unblocked-wifi
 | 
				
			||||||
 | 
					                                       mac-simulation-module))
 | 
				
			||||||
 | 
					          (list (shepherd-service
 | 
				
			||||||
 | 
					                 (provision '(unblocked-wifi))
 | 
				
			||||||
 | 
					                 (requirement '(file-systems mac-simulation-module))
 | 
				
			||||||
 | 
					                 (documentation
 | 
				
			||||||
 | 
					                  "Unblock WiFi devices for use by mac80211_hwsim.")
 | 
				
			||||||
 | 
					                 (start #~(lambda _
 | 
				
			||||||
 | 
					                            (invoke #$(file-append util-linux "/sbin/rfkill")
 | 
				
			||||||
 | 
					                                    "unblock" "0")
 | 
				
			||||||
 | 
					                            (invoke #$(file-append util-linux "/sbin/rfkill")
 | 
				
			||||||
 | 
					                                    "unblock" "1")))
 | 
				
			||||||
 | 
					                 (one-shot? #t))
 | 
				
			||||||
 | 
					                (shepherd-service
 | 
				
			||||||
 | 
					                 (provision '(mac-simulation-module))
 | 
				
			||||||
 | 
					                 (requirement '(file-systems))
 | 
				
			||||||
 | 
					                 (modules '((guix build utils)))
 | 
				
			||||||
 | 
					                 (documentation
 | 
				
			||||||
 | 
					                  "Load the mac80211_hwsim Linux kernel module.")
 | 
				
			||||||
 | 
					                 (start (with-imported-modules '((guix build utils))
 | 
				
			||||||
 | 
					                          #~(lambda _
 | 
				
			||||||
 | 
					                              ;; XXX: We can't use 'load-linux-module*' here because it
 | 
				
			||||||
 | 
					                              ;; expects a flat module directory.
 | 
				
			||||||
 | 
					                              (setenv "LINUX_MODULE_DIRECTORY"
 | 
				
			||||||
 | 
					                                      "/run/booted-system/kernel/lib/modules")
 | 
				
			||||||
 | 
					                              (invoke #$(file-append kmod "/bin/modprobe")
 | 
				
			||||||
 | 
					                                      "mac80211_hwsim"))))
 | 
				
			||||||
 | 
					                 (one-shot? #t)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define simulated-wifi-service-type
 | 
				
			||||||
 | 
					  (service-type
 | 
				
			||||||
 | 
					   (name 'simulated-wifi)
 | 
				
			||||||
 | 
					   (extensions
 | 
				
			||||||
 | 
					    (list (service-extension shepherd-root-service-type
 | 
				
			||||||
 | 
					                             simulated-wifi-shepherd-services)))
 | 
				
			||||||
 | 
					   (default-value (hostapd-configuration
 | 
				
			||||||
 | 
					                   (interface "wlan1")
 | 
				
			||||||
 | 
					                   (ssid "Test Network")))
 | 
				
			||||||
 | 
					   (description "Run hostapd to simulate WiFi connectivity.")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; Open vSwitch
 | 
					;;; Open vSwitch
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -297,8 +297,7 @@ and return the resulting '.go' file."
 | 
				
			||||||
          ;; everything slow.  Thus, increase the timeout compared to the
 | 
					          ;; everything slow.  Thus, increase the timeout compared to the
 | 
				
			||||||
          ;; default 5s in the Shepherd 0.7.0.  See
 | 
					          ;; default 5s in the Shepherd 0.7.0.  See
 | 
				
			||||||
          ;; <https://bugs.gnu.org/40572>.
 | 
					          ;; <https://bugs.gnu.org/40572>.
 | 
				
			||||||
          ;; XXX: Use something better when the next Shepherd is out.
 | 
					          (default-pid-file-timeout 30)
 | 
				
			||||||
          (set! (@@ (shepherd service) %pid-file-timeout) 30)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
          ;; Arrange to spawn a REPL if something goes wrong.  This is better
 | 
					          ;; Arrange to spawn a REPL if something goes wrong.  This is better
 | 
				
			||||||
          ;; than a kernel panic.
 | 
					          ;; than a kernel panic.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -54,7 +54,7 @@
 | 
				
			||||||
      (documentation "Spice vdagentd service")
 | 
					      (documentation "Spice vdagentd service")
 | 
				
			||||||
      (requirement '(udev))
 | 
					      (requirement '(udev))
 | 
				
			||||||
      (provision '(spice-vdagentd))
 | 
					      (provision '(spice-vdagentd))
 | 
				
			||||||
      (start #~(make-forkexec-constructor #$@spice-vdagentd-command))
 | 
					      (start #~(make-forkexec-constructor '#$spice-vdagentd-command))
 | 
				
			||||||
      (stop #~(make-kill-destructor)))))
 | 
					      (stop #~(make-kill-destructor)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define spice-vdagent-profile
 | 
					(define spice-vdagent-profile
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										108
									
								
								gnu/system.scm
									
										
									
									
									
								
							
							
						
						
									
										108
									
								
								gnu/system.scm
									
										
									
									
									
								
							| 
						 | 
					@ -6,6 +6,7 @@
 | 
				
			||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
					;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
				
			||||||
;;; Copyright © 2019 Meiyo Peng <meiyo.peng@gmail.com>
 | 
					;;; Copyright © 2019 Meiyo Peng <meiyo.peng@gmail.com>
 | 
				
			||||||
;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
 | 
					;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -32,6 +33,7 @@
 | 
				
			||||||
  #:use-module (guix derivations)
 | 
					  #:use-module (guix derivations)
 | 
				
			||||||
  #:use-module (guix profiles)
 | 
					  #:use-module (guix profiles)
 | 
				
			||||||
  #:use-module (guix ui)
 | 
					  #:use-module (guix ui)
 | 
				
			||||||
 | 
					  #:use-module (guix utils)
 | 
				
			||||||
  #:use-module (gnu packages base)
 | 
					  #:use-module (gnu packages base)
 | 
				
			||||||
  #:use-module (gnu packages bash)
 | 
					  #:use-module (gnu packages bash)
 | 
				
			||||||
  #:use-module (gnu packages guile)
 | 
					  #:use-module (gnu packages guile)
 | 
				
			||||||
| 
						 | 
					@ -142,6 +144,10 @@
 | 
				
			||||||
            %setuid-programs
 | 
					            %setuid-programs
 | 
				
			||||||
            %sudoers-specification
 | 
					            %sudoers-specification
 | 
				
			||||||
            %base-packages
 | 
					            %base-packages
 | 
				
			||||||
 | 
					            %base-packages-interactive
 | 
				
			||||||
 | 
					            %base-packages-linux
 | 
				
			||||||
 | 
					            %base-packages-networking
 | 
				
			||||||
 | 
					            %base-packages-utils
 | 
				
			||||||
            %base-firmware))
 | 
					            %base-firmware))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;;; Commentary:
 | 
					;;; Commentary:
 | 
				
			||||||
| 
						 | 
					@ -472,26 +478,35 @@ OS."
 | 
				
			||||||
  (file-append (operating-system-kernel os)
 | 
					  (file-append (operating-system-kernel os)
 | 
				
			||||||
               "/" (system-linux-image-file-name)))
 | 
					               "/" (system-linux-image-file-name)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define (package-for-kernel target-kernel module-package)
 | 
				
			||||||
 | 
					  "Return a package like MODULE-PACKAGE, adapted for TARGET-KERNEL, if
 | 
				
			||||||
 | 
					possible (that is if there's a LINUX keyword argument in the build system)."
 | 
				
			||||||
 | 
					  (package
 | 
				
			||||||
 | 
					    (inherit module-package)
 | 
				
			||||||
 | 
					    (arguments
 | 
				
			||||||
 | 
					     (substitute-keyword-arguments (package-arguments module-package)
 | 
				
			||||||
 | 
					       ((#:linux kernel #f)
 | 
				
			||||||
 | 
					        target-kernel)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define* (operating-system-directory-base-entries os)
 | 
					(define* (operating-system-directory-base-entries os)
 | 
				
			||||||
  "Return the basic entries of the 'system' directory of OS for use as the
 | 
					  "Return the basic entries of the 'system' directory of OS for use as the
 | 
				
			||||||
value of the SYSTEM-SERVICE-TYPE service."
 | 
					value of the SYSTEM-SERVICE-TYPE service."
 | 
				
			||||||
  (let ((locale (operating-system-locale-directory os)))
 | 
					  (let ((locale (operating-system-locale-directory os)))
 | 
				
			||||||
    (mlet* %store-monad ((kernel -> (operating-system-kernel os))
 | 
					    (mlet* %store-monad ((kernel -> (operating-system-kernel os))
 | 
				
			||||||
                         (kernel-modules (package-file kernel "lib/modules"))
 | 
					 | 
				
			||||||
                         (modules ->
 | 
					                         (modules ->
 | 
				
			||||||
                          (operating-system-kernel-loadable-modules os))
 | 
					                          (operating-system-kernel-loadable-modules os))
 | 
				
			||||||
                         (has-modules? ->
 | 
					 | 
				
			||||||
                          (or (not (null? modules))
 | 
					 | 
				
			||||||
                              (file-exists? kernel-modules)))
 | 
					 | 
				
			||||||
                         (kernel
 | 
					                         (kernel
 | 
				
			||||||
                          (profile-derivation
 | 
					                          (profile-derivation
 | 
				
			||||||
                           (packages->manifest
 | 
					                           (packages->manifest
 | 
				
			||||||
                            (cons kernel modules))
 | 
					                            (cons kernel
 | 
				
			||||||
                           #:hooks (if has-modules?
 | 
					                             (map (lambda (module)
 | 
				
			||||||
                                       (list linux-module-database)
 | 
					                                    (if (package? module)
 | 
				
			||||||
                                       '())))
 | 
					                                        (package-for-kernel kernel module)
 | 
				
			||||||
 | 
					                                        module))
 | 
				
			||||||
 | 
					                                  modules)))
 | 
				
			||||||
 | 
					                           #:hooks (list linux-module-database)))
 | 
				
			||||||
                         (initrd -> (operating-system-initrd-file os))
 | 
					                         (initrd -> (operating-system-initrd-file os))
 | 
				
			||||||
                         (params    (operating-system-boot-parameters-file os)))
 | 
					                         (params -> (operating-system-boot-parameters-file os)))
 | 
				
			||||||
      (return `(("kernel" ,kernel)
 | 
					      (return `(("kernel" ,kernel)
 | 
				
			||||||
                ("parameters" ,params)
 | 
					                ("parameters" ,params)
 | 
				
			||||||
                ("initrd" ,initrd)
 | 
					                ("initrd" ,initrd)
 | 
				
			||||||
| 
						 | 
					@ -581,44 +596,56 @@ of PROVENANCE-SERVICE-TYPE to its services."
 | 
				
			||||||
  (list ath9k-htc-firmware
 | 
					  (list ath9k-htc-firmware
 | 
				
			||||||
        openfwwf-firmware))
 | 
					        openfwwf-firmware))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define %base-packages
 | 
					(define %base-packages-utils
 | 
				
			||||||
  ;; Default set of packages globally visible.  It should include anything
 | 
					  ;; Default set of  utilities packages.
 | 
				
			||||||
  ;; required for basic administrator tasks.
 | 
					 (cons* procps psmisc which
 | 
				
			||||||
  (cons* procps psmisc which less zile nano
 | 
					 | 
				
			||||||
         pciutils usbutils
 | 
					 | 
				
			||||||
         util-linux+udev
 | 
					 | 
				
			||||||
         inetutils isc-dhcp
 | 
					 | 
				
			||||||
        (@ (gnu packages admin) shadow) ;for 'passwd'
 | 
					        (@ (gnu packages admin) shadow) ;for 'passwd'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
         ;; wireless-tools is deprecated in favor of iw, but it's still what
 | 
					 | 
				
			||||||
         ;; many people are familiar with, so keep it around.
 | 
					 | 
				
			||||||
         iw wireless-tools
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
         iproute
 | 
					 | 
				
			||||||
         man-db
 | 
					 | 
				
			||||||
         info-reader                     ;the standalone Info reader (no Perl)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
         ;; The 'sudo' command is already in %SETUID-PROGRAMS, but we also
 | 
					 | 
				
			||||||
         ;; want the other commands and the man pages (notably because
 | 
					 | 
				
			||||||
         ;; auto-completion in Emacs shell relies on man pages.)
 | 
					 | 
				
			||||||
         sudo
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
         ;; Get 'insmod' & co. from kmod, not module-init-tools, since udev
 | 
					 | 
				
			||||||
         ;; already depends on it anyway.
 | 
					 | 
				
			||||||
         kmod eudev
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
         e2fsprogs kbd
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
         bash-completion
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        guile-3.0
 | 
					        guile-3.0
 | 
				
			||||||
         guile-readline guile-colorized
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ;; The packages below are also in %FINAL-INPUTS, so take them from
 | 
					        ;; The packages below are also in %FINAL-INPUTS, so take them from
 | 
				
			||||||
        ;; there to avoid duplication.
 | 
					        ;; there to avoid duplication.
 | 
				
			||||||
        (list bash coreutils findutils grep sed
 | 
					        (list bash coreutils findutils grep sed
 | 
				
			||||||
              diffutils patch gawk tar gzip bzip2 xz lzip)))
 | 
					              diffutils patch gawk tar gzip bzip2 xz lzip)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define %base-packages-linux
 | 
				
			||||||
 | 
					  ;; Default set of linux specific packages.
 | 
				
			||||||
 | 
					  (list pciutils usbutils
 | 
				
			||||||
 | 
					        util-linux+udev
 | 
				
			||||||
 | 
					        ;; Get 'insmod' & co. from kmod, not module-init-tools, since udev
 | 
				
			||||||
 | 
					        ;; already depends on it anyway.
 | 
				
			||||||
 | 
					        kmod eudev))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define %base-packages-interactive
 | 
				
			||||||
 | 
					  ;; Default set of common interactive packages.
 | 
				
			||||||
 | 
					  (list less zile nano
 | 
				
			||||||
 | 
					        man-db
 | 
				
			||||||
 | 
					        info-reader                     ;the standalone Info reader (no Perl)
 | 
				
			||||||
 | 
					        bash-completion
 | 
				
			||||||
 | 
					        kbd
 | 
				
			||||||
 | 
					        ;; The 'sudo' command is already in %SETUID-PROGRAMS, but we also
 | 
				
			||||||
 | 
					        ;; want the other commands and the man pages (notably because
 | 
				
			||||||
 | 
					        ;; auto-completion in Emacs shell relies on man pages.)
 | 
				
			||||||
 | 
					        sudo
 | 
				
			||||||
 | 
					        guile-readline guile-colorized))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define %base-packages-networking
 | 
				
			||||||
 | 
					  ;; Default set of networking packages.
 | 
				
			||||||
 | 
					  (list inetutils isc-dhcp
 | 
				
			||||||
 | 
					        iproute
 | 
				
			||||||
 | 
					        ;; wireless-tools is deprecated in favor of iw, but it's still what
 | 
				
			||||||
 | 
					        ;; many people are familiar with, so keep it around.
 | 
				
			||||||
 | 
					        iw wireless-tools))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(define %base-packages
 | 
				
			||||||
 | 
					  ;; Default set of packages globally visible.  It should include anything
 | 
				
			||||||
 | 
					  ;; required for basic administrator tasks.
 | 
				
			||||||
 | 
					  (append (list e2fsprogs)
 | 
				
			||||||
 | 
					          %base-packages-interactive
 | 
				
			||||||
 | 
					          %base-packages-linux
 | 
				
			||||||
 | 
					          %base-packages-networking
 | 
				
			||||||
 | 
					          %base-packages-utils))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define %default-issue
 | 
					(define %default-issue
 | 
				
			||||||
  ;; Default contents for /etc/issue.
 | 
					  ;; Default contents for /etc/issue.
 | 
				
			||||||
  "
 | 
					  "
 | 
				
			||||||
| 
						 | 
					@ -1079,7 +1106,7 @@ being stored into the \"parameters\" file)."
 | 
				
			||||||
                   os device
 | 
					                   os device
 | 
				
			||||||
                   #:system-kernel-arguments?
 | 
					                   #:system-kernel-arguments?
 | 
				
			||||||
                   system-kernel-arguments?)))
 | 
					                   system-kernel-arguments?)))
 | 
				
			||||||
     (gexp->file "parameters"
 | 
					     (scheme-file "parameters"
 | 
				
			||||||
                  #~(boot-parameters
 | 
					                  #~(boot-parameters
 | 
				
			||||||
                     (version 0)
 | 
					                     (version 0)
 | 
				
			||||||
                     (label #$(boot-parameters-label params))
 | 
					                     (label #$(boot-parameters-label params))
 | 
				
			||||||
| 
						 | 
					@ -1099,7 +1126,8 @@ being stored into the \"parameters\" file)."
 | 
				
			||||||
                     (store
 | 
					                     (store
 | 
				
			||||||
                      (device
 | 
					                      (device
 | 
				
			||||||
                       #$(device->sexp (boot-parameters-store-device params)))
 | 
					                       #$(device->sexp (boot-parameters-store-device params)))
 | 
				
			||||||
                     (mount-point #$(boot-parameters-store-mount-point params))))
 | 
					                      (mount-point #$(boot-parameters-store-mount-point
 | 
				
			||||||
 | 
					                                      params))))
 | 
				
			||||||
                  #:set-load-path? #f)))
 | 
					                  #:set-load-path? #f)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-gexp-compiler (operating-system-compiler (os <operating-system>)
 | 
					(define-gexp-compiler (operating-system-compiler (os <operating-system>)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -296,8 +296,8 @@ the user's target storage device rather than on the RAM disk."
 | 
				
			||||||
;; support Kernel Mode Setting.  Otherwise kmscon is missing /dev/fb0.
 | 
					;; support Kernel Mode Setting.  Otherwise kmscon is missing /dev/fb0.
 | 
				
			||||||
(define (uvesafb-shepherd-service _)
 | 
					(define (uvesafb-shepherd-service _)
 | 
				
			||||||
  (list (shepherd-service
 | 
					  (list (shepherd-service
 | 
				
			||||||
         (documentation "Load the uvesafb kernel module.")
 | 
					         (documentation "Load the uvesafb kernel module if needed.")
 | 
				
			||||||
         (provision '(uvesafb))
 | 
					         (provision '(maybe-uvesafb))
 | 
				
			||||||
         (requirement '(file-systems))
 | 
					         (requirement '(file-systems))
 | 
				
			||||||
         (start #~(lambda ()
 | 
					         (start #~(lambda ()
 | 
				
			||||||
                    ;; uvesafb is only supported on x86 and x86_64.
 | 
					                    ;; uvesafb is only supported on x86 and x86_64.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,8 +28,10 @@
 | 
				
			||||||
  #:use-module (guix derivations)
 | 
					  #:use-module (guix derivations)
 | 
				
			||||||
  #:use-module (guix gexp)
 | 
					  #:use-module (guix gexp)
 | 
				
			||||||
  #:use-module (guix modules)
 | 
					  #:use-module (guix modules)
 | 
				
			||||||
 | 
					  #:use-module (guix packages)
 | 
				
			||||||
  #:use-module (guix monads)
 | 
					  #:use-module (guix monads)
 | 
				
			||||||
  #:use-module (guix store)
 | 
					  #:use-module (guix store)
 | 
				
			||||||
 | 
					  #:use-module (guix utils)
 | 
				
			||||||
  #:export (%test-loadable-kernel-modules-0
 | 
					  #:export (%test-loadable-kernel-modules-0
 | 
				
			||||||
            %test-loadable-kernel-modules-1
 | 
					            %test-loadable-kernel-modules-1
 | 
				
			||||||
            %test-loadable-kernel-modules-2))
 | 
					            %test-loadable-kernel-modules-2))
 | 
				
			||||||
| 
						 | 
					@ -118,5 +120,12 @@ with one extra module.")
 | 
				
			||||||
   (description "Tests loadable kernel modules facility of <operating-system>
 | 
					   (description "Tests loadable kernel modules facility of <operating-system>
 | 
				
			||||||
with two extra modules.")
 | 
					with two extra modules.")
 | 
				
			||||||
   (value (run-loadable-kernel-modules-test
 | 
					   (value (run-loadable-kernel-modules-test
 | 
				
			||||||
           (list acpi-call-linux-module ddcci-driver-linux)
 | 
					           (list acpi-call-linux-module
 | 
				
			||||||
 | 
					                 (package
 | 
				
			||||||
 | 
					                   (inherit ddcci-driver-linux)
 | 
				
			||||||
 | 
					                   (arguments
 | 
				
			||||||
 | 
					                    `(#:linux #f
 | 
				
			||||||
 | 
					                      ,@(strip-keyword-arguments '(#:linux)
 | 
				
			||||||
 | 
					                                                 (package-arguments
 | 
				
			||||||
 | 
					                                                  ddcci-driver-linux))))))
 | 
				
			||||||
           '("acpi_call" "ddcci")))))
 | 
					           '("acpi_call" "ddcci")))))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
;;; GNU Guix --- Functional package management for GNU
 | 
					;;; GNU Guix --- Functional package management for GNU
 | 
				
			||||||
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
					;;; Copyright © 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
 | 
				
			||||||
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 | 
					;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 | 
				
			||||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 | 
					;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -136,6 +136,9 @@ root with an empty password."
 | 
				
			||||||
                         (current-services))))
 | 
					                         (current-services))))
 | 
				
			||||||
               marionette))
 | 
					               marionette))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            (test-assert "wait for port 22"
 | 
				
			||||||
 | 
					              (wait-for-tcp-port 22 marionette))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            ;; Connect to the guest over SSH.  Make sure we can run a shell
 | 
					            ;; Connect to the guest over SSH.  Make sure we can run a shell
 | 
				
			||||||
            ;; command there.
 | 
					            ;; command there.
 | 
				
			||||||
            (test-equal "shell command"
 | 
					            (test-equal "shell command"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -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, 2020 Ludovic Courtès <ludo@gnu.org>
 | 
				
			||||||
;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
 | 
					;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
 | 
				
			||||||
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 | 
					;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 | 
				
			||||||
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 | 
					;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
 | 
				
			||||||
| 
						 | 
					@ -110,6 +110,9 @@ HTTP-PORT."
 | 
				
			||||||
                     ((pid) (number? pid))))))
 | 
					                     ((pid) (number? pid))))))
 | 
				
			||||||
             marionette))
 | 
					             marionette))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          (test-assert "HTTP port ready"
 | 
				
			||||||
 | 
					            (wait-for-tcp-port #$forwarded-port marionette))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          ;; Retrieve the index.html file we put in /srv.
 | 
					          ;; Retrieve the index.html file we put in /srv.
 | 
				
			||||||
          (test-equal "http-get"
 | 
					          (test-equal "http-get"
 | 
				
			||||||
            '(200 #$%index.html-contents)
 | 
					            '(200 #$%index.html-contents)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,6 +4,7 @@
 | 
				
			||||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 | 
					;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 | 
				
			||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
					;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
				
			||||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
 | 
					;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -943,7 +944,7 @@ system to PUT-OLD."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define readdir*
 | 
					(define readdir*
 | 
				
			||||||
  ;; Decide at run time which one must be used.
 | 
					  ;; Decide at run time which one must be used.
 | 
				
			||||||
  (if (string-suffix? "linux-gnu" %host-type)
 | 
					  (if (string-contains %host-type "linux-gnu")
 | 
				
			||||||
      (readdir-procedure (c-struct-field-offset %struct-dirent-header/linux
 | 
					      (readdir-procedure (c-struct-field-offset %struct-dirent-header/linux
 | 
				
			||||||
                                                name)
 | 
					                                                name)
 | 
				
			||||||
                         sizeof-dirent-header/linux
 | 
					                         sizeof-dirent-header/linux
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -472,24 +472,26 @@ This is the declarative counterpart of 'gexp->script'."
 | 
				
			||||||
                   #:target target))))
 | 
					                   #:target target))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-record-type <scheme-file>
 | 
					(define-record-type <scheme-file>
 | 
				
			||||||
  (%scheme-file name gexp splice?)
 | 
					  (%scheme-file name gexp splice? load-path?)
 | 
				
			||||||
  scheme-file?
 | 
					  scheme-file?
 | 
				
			||||||
  (name       scheme-file-name)                  ;string
 | 
					  (name       scheme-file-name)                  ;string
 | 
				
			||||||
  (gexp       scheme-file-gexp)                  ;gexp
 | 
					  (gexp       scheme-file-gexp)                  ;gexp
 | 
				
			||||||
  (splice?    scheme-file-splice?))              ;Boolean
 | 
					  (splice?    scheme-file-splice?)               ;Boolean
 | 
				
			||||||
 | 
					  (load-path? scheme-file-set-load-path?))       ;Boolean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define* (scheme-file name gexp #:key splice?)
 | 
					(define* (scheme-file name gexp #:key splice? (set-load-path? #t))
 | 
				
			||||||
  "Return an object representing the Scheme file NAME that contains GEXP.
 | 
					  "Return an object representing the Scheme file NAME that contains GEXP.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This is the declarative counterpart of 'gexp->file'."
 | 
					This is the declarative counterpart of 'gexp->file'."
 | 
				
			||||||
  (%scheme-file name gexp splice?))
 | 
					  (%scheme-file name gexp splice? set-load-path?))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-gexp-compiler (scheme-file-compiler (file <scheme-file>)
 | 
					(define-gexp-compiler (scheme-file-compiler (file <scheme-file>)
 | 
				
			||||||
                                            system target)
 | 
					                                            system target)
 | 
				
			||||||
  ;; Compile FILE by returning a derivation that builds the file.
 | 
					  ;; Compile FILE by returning a derivation that builds the file.
 | 
				
			||||||
  (match file
 | 
					  (match file
 | 
				
			||||||
    (($ <scheme-file> name gexp splice?)
 | 
					    (($ <scheme-file> name gexp splice? set-load-path?)
 | 
				
			||||||
     (gexp->file name gexp
 | 
					     (gexp->file name gexp
 | 
				
			||||||
 | 
					                 #:set-load-path? set-load-path?
 | 
				
			||||||
                 #:splice? splice?
 | 
					                 #:splice? splice?
 | 
				
			||||||
                 #:system system
 | 
					                 #:system system
 | 
				
			||||||
                 #:target target))))
 | 
					                 #:target target))))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,6 +2,7 @@
 | 
				
			||||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
					;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
				
			||||||
;;; Copyright © 2017 Mathieu Lirzin <mthl@gnu.org>
 | 
					;;; Copyright © 2017 Mathieu Lirzin <mthl@gnu.org>
 | 
				
			||||||
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 | 
					;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 | 
				
			||||||
 | 
					;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -30,6 +31,8 @@
 | 
				
			||||||
  #:use-module (ice-9 match)
 | 
					  #:use-module (ice-9 match)
 | 
				
			||||||
  #:use-module (ice-9 vlist)
 | 
					  #:use-module (ice-9 vlist)
 | 
				
			||||||
  #:use-module (srfi srfi-1)
 | 
					  #:use-module (srfi srfi-1)
 | 
				
			||||||
 | 
					  #:use-module (srfi srfi-34)
 | 
				
			||||||
 | 
					  #:use-module (srfi srfi-35)
 | 
				
			||||||
  #:export (git-reference
 | 
					  #:export (git-reference
 | 
				
			||||||
            git-reference?
 | 
					            git-reference?
 | 
				
			||||||
            git-reference-url
 | 
					            git-reference-url
 | 
				
			||||||
| 
						 | 
					@ -170,6 +173,13 @@ HASH-ALGO (a symbol).  Use NAME as the file name, or a generic name if #f."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define (git-version version revision commit)
 | 
					(define (git-version version revision commit)
 | 
				
			||||||
  "Return the version string for packages using git-download."
 | 
					  "Return the version string for packages using git-download."
 | 
				
			||||||
 | 
					  ;; git-version is almost exclusively executed while modules are being loaded.
 | 
				
			||||||
 | 
					  ;; This makes any errors hide their backtrace. Avoid the mysterious error
 | 
				
			||||||
 | 
					  ;; "Value out of range 0 to N: 7" when the commit ID is too short, which
 | 
				
			||||||
 | 
					  ;; can happen, for example, when the user swapped the revision and commit
 | 
				
			||||||
 | 
					  ;; arguments by mistake.
 | 
				
			||||||
 | 
					  (when (< (string-length commit) 7)
 | 
				
			||||||
 | 
					    (error "git-version: commit ID unexpectedly short"))
 | 
				
			||||||
  (string-append version "-" revision "." (string-take commit 7)))
 | 
					  (string-append version "-" revision "." (string-take commit 7)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define (git-file-name name version)
 | 
					(define (git-file-name name version)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1342,7 +1342,11 @@ code of derivations to GUILE, a package object."
 | 
				
			||||||
  "Return as a monadic value the absolute file name of FILE within the
 | 
					  "Return as a monadic value the absolute file name of FILE within the
 | 
				
			||||||
OUTPUT directory of PACKAGE.  When FILE is omitted, return the name of the
 | 
					OUTPUT directory of PACKAGE.  When FILE is omitted, return the name of the
 | 
				
			||||||
OUTPUT directory of PACKAGE.  When TARGET is true, use it as a
 | 
					OUTPUT directory of PACKAGE.  When TARGET is true, use it as a
 | 
				
			||||||
cross-compilation target triplet."
 | 
					cross-compilation target triplet.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Note that this procedure does _not_ build PACKAGE.  Thus, the result might or
 | 
				
			||||||
 | 
					might not designate an existing file.  We recommend not using this procedure
 | 
				
			||||||
 | 
					unless you know what you are doing."
 | 
				
			||||||
  (lambda (store)
 | 
					  (lambda (store)
 | 
				
			||||||
    (define compute-derivation
 | 
					    (define compute-derivation
 | 
				
			||||||
      (if target
 | 
					      (if target
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1549,6 +1549,7 @@ MANIFEST."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define* (profile-derivation manifest
 | 
					(define* (profile-derivation manifest
 | 
				
			||||||
                             #:key
 | 
					                             #:key
 | 
				
			||||||
 | 
					                             (name "profile")
 | 
				
			||||||
                             (hooks %default-profile-hooks)
 | 
					                             (hooks %default-profile-hooks)
 | 
				
			||||||
                             (locales? #t)
 | 
					                             (locales? #t)
 | 
				
			||||||
                             (allow-collisions? #f)
 | 
					                             (allow-collisions? #f)
 | 
				
			||||||
| 
						 | 
					@ -1638,7 +1639,7 @@ are cross-built for TARGET."
 | 
				
			||||||
                           #:manifest '#$(manifest->gexp manifest)
 | 
					                           #:manifest '#$(manifest->gexp manifest)
 | 
				
			||||||
                           #:search-paths search-paths))))
 | 
					                           #:search-paths search-paths))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    (gexp->derivation "profile" builder
 | 
					    (gexp->derivation name builder
 | 
				
			||||||
                      #:system system
 | 
					                      #:system system
 | 
				
			||||||
                      #:target target
 | 
					                      #:target target
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -340,42 +340,60 @@ TRANSLATIONS, an alist of msgid and msgstr."
 | 
				
			||||||
                           'pre "ref{" msgstr "}" 'post))))))
 | 
					                           'pre "ref{" msgstr "}" 'post))))))
 | 
				
			||||||
              content translations))
 | 
					              content translations))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          (define (translate-texi po lang)
 | 
					          (define* (translate-texi prefix po lang
 | 
				
			||||||
            "Translate the manual for one language LANG using the PO file."
 | 
					                                   #:key (extras '()))
 | 
				
			||||||
 | 
					            "Translate the manual for one language LANG using the PO file.
 | 
				
			||||||
 | 
					PREFIX must be the prefix of the manual, 'guix' or 'guix-cookbook'.  EXTRAS is
 | 
				
			||||||
 | 
					a list of extra files, such as '(\"contributing\")."
 | 
				
			||||||
            (let ((translations (call-with-input-file po read-po-file)))
 | 
					            (let ((translations (call-with-input-file po read-po-file)))
 | 
				
			||||||
              (translate-tmp-texi po "guix.texi"
 | 
					              (for-each (lambda (file)
 | 
				
			||||||
                                  (string-append "guix." lang ".texi.tmp"))
 | 
					                          (translate-tmp-texi po (string-append file ".texi")
 | 
				
			||||||
              (translate-tmp-texi po "contributing.texi"
 | 
					                                              (string-append file "." lang
 | 
				
			||||||
                                  (string-append "contributing." lang ".texi.tmp"))
 | 
					                                                             ".texi.tmp")))
 | 
				
			||||||
              (let* ((texi-name (string-append "guix." lang ".texi"))
 | 
					                        (cons prefix extras))
 | 
				
			||||||
                     (tmp-name (string-append texi-name ".tmp")))
 | 
					 | 
				
			||||||
                (with-output-to-file texi-name
 | 
					 | 
				
			||||||
                  (lambda _
 | 
					 | 
				
			||||||
                    (format #t "~a"
 | 
					 | 
				
			||||||
                      (translate-cross-references
 | 
					 | 
				
			||||||
                        (call-with-input-file tmp-name get-string-all)
 | 
					 | 
				
			||||||
                        translations)))))
 | 
					 | 
				
			||||||
              (let* ((texi-name (string-append "contributing." lang ".texi"))
 | 
					 | 
				
			||||||
                     (tmp-name (string-append texi-name ".tmp")))
 | 
					 | 
				
			||||||
                (with-output-to-file texi-name
 | 
					 | 
				
			||||||
                  (lambda _
 | 
					 | 
				
			||||||
                    (format #t "~a"
 | 
					 | 
				
			||||||
                      (translate-cross-references
 | 
					 | 
				
			||||||
                        (call-with-input-file tmp-name get-string-all)
 | 
					 | 
				
			||||||
                        translations)))))))
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
          (for-each (lambda (po)
 | 
					              (for-each (lambda (file)
 | 
				
			||||||
                      (match (reverse (string-split po #\.))
 | 
					                          (let* ((texi (string-append file "." lang ".texi"))
 | 
				
			||||||
                        ((_ lang _ ...)
 | 
					                                 (tmp  (string-append texi ".tmp")))
 | 
				
			||||||
                         (translate-texi po lang))))
 | 
					                            (with-output-to-file texi
 | 
				
			||||||
                    (find-files "." "^guix-manual\\.[a-z]{2}(_[A-Z]{2})?\\.po$"))
 | 
					                              (lambda ()
 | 
				
			||||||
 | 
					                                (display
 | 
				
			||||||
 | 
					                                 (translate-cross-references
 | 
				
			||||||
 | 
					                                  (call-with-input-file tmp get-string-all)
 | 
				
			||||||
 | 
					                                  translations))))))
 | 
				
			||||||
 | 
					                        (cons prefix extras))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          (for-each
 | 
					          (define (available-translations directory domain)
 | 
				
			||||||
            (lambda (file)
 | 
					            ;; Return the list of available translations under DIRECTORY for
 | 
				
			||||||
              (copy-file file (string-append #$output "/" file)))
 | 
					            ;; DOMAIN, a gettext domain such as "guix-manual".  The result is
 | 
				
			||||||
 | 
					            ;; a list of language/PO file pairs.
 | 
				
			||||||
 | 
					            (filter-map (lambda (po)
 | 
				
			||||||
 | 
					                          (let ((base (basename po)))
 | 
				
			||||||
 | 
					                            (and (string-prefix? (string-append domain ".")
 | 
				
			||||||
 | 
					                                                 base)
 | 
				
			||||||
 | 
					                                 (match (string-split base #\.)
 | 
				
			||||||
 | 
					                                   ((_ ... lang "po")
 | 
				
			||||||
 | 
					                                    (cons lang po))))))
 | 
				
			||||||
 | 
					                        (find-files directory
 | 
				
			||||||
 | 
					                                    "\\.[a-z]{2}(_[A-Z]{2})?\\.po$")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          (for-each (match-lambda
 | 
				
			||||||
 | 
					                      ((language . po)
 | 
				
			||||||
 | 
					                       (translate-texi "guix" po language
 | 
				
			||||||
 | 
					                                       #:extras '("contributing"))))
 | 
				
			||||||
 | 
					                    (available-translations "." "guix-manual"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          (for-each (match-lambda
 | 
				
			||||||
 | 
					                      ((language . po)
 | 
				
			||||||
 | 
					                       (translate-texi "guix-cookbook" po language)))
 | 
				
			||||||
 | 
					                    (available-translations "." "guix-cookbook"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					          (for-each (lambda (file)
 | 
				
			||||||
 | 
					                      (install-file file #$output))
 | 
				
			||||||
                    (append
 | 
					                    (append
 | 
				
			||||||
                     (find-files "." "contributing\\..*\\.texi$")
 | 
					                     (find-files "." "contributing\\..*\\.texi$")
 | 
				
			||||||
              (find-files "." "guix\\..*\\.texi$"))))))
 | 
					                     (find-files "." "guix\\..*\\.texi$")
 | 
				
			||||||
 | 
					                     (find-files "." "guix-cookbook\\..*\\.texi$"))))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  (computed-file "guix-translated-texinfo" build))
 | 
					  (computed-file "guix-translated-texinfo" build))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -402,7 +420,8 @@ TRANSLATIONS, an alist of msgid and msgstr."
 | 
				
			||||||
  (define build
 | 
					  (define build
 | 
				
			||||||
    (with-imported-modules '((guix build utils))
 | 
					    (with-imported-modules '((guix build utils))
 | 
				
			||||||
      #~(begin
 | 
					      #~(begin
 | 
				
			||||||
          (use-modules (guix build utils))
 | 
					          (use-modules (guix build utils)
 | 
				
			||||||
 | 
					                       (ice-9 match))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          (mkdir #$output)
 | 
					          (mkdir #$output)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -463,13 +482,13 @@ TRANSLATIONS, an alist of msgid and msgstr."
 | 
				
			||||||
                  #+(file-append glibc-utf8-locales "/lib/locale"))
 | 
					                  #+(file-append glibc-utf8-locales "/lib/locale"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          (for-each (lambda (texi)
 | 
					          (for-each (lambda (texi)
 | 
				
			||||||
                      (unless (string=? "guix.texi" texi)
 | 
					                      (match (string-split (basename texi) #\.)
 | 
				
			||||||
 | 
					                        (("guix" language "texi")
 | 
				
			||||||
                         ;; Create 'version-LL.texi'.
 | 
					                         ;; Create 'version-LL.texi'.
 | 
				
			||||||
                        (let* ((base (basename texi ".texi"))
 | 
					 | 
				
			||||||
                               (dot  (string-index base #\.))
 | 
					 | 
				
			||||||
                               (tag  (string-drop base (+ 1 dot))))
 | 
					 | 
				
			||||||
                         (symlink "version.texi"
 | 
					                         (symlink "version.texi"
 | 
				
			||||||
                                   (string-append "version-" tag ".texi"))))
 | 
					                                  (string-append "version-" language
 | 
				
			||||||
 | 
					                                                 ".texi")))
 | 
				
			||||||
 | 
					                        (_ #f))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                      (invoke #+(file-append texinfo "/bin/makeinfo")
 | 
					                      (invoke #+(file-append texinfo "/bin/makeinfo")
 | 
				
			||||||
                              texi "-I" #$documentation
 | 
					                              texi "-I" #$documentation
 | 
				
			||||||
| 
						 | 
					@ -478,7 +497,10 @@ TRANSLATIONS, an alist of msgid and msgstr."
 | 
				
			||||||
                                                  (basename texi ".texi")
 | 
					                                                  (basename texi ".texi")
 | 
				
			||||||
                                                  ".info")))
 | 
					                                                  ".info")))
 | 
				
			||||||
                    (cons "guix.texi"
 | 
					                    (cons "guix.texi"
 | 
				
			||||||
                          (find-files "." "^guix\\.[a-z]{2}(_[A-Z]{2})?\\.texi$")))
 | 
					                          (append (find-files "."
 | 
				
			||||||
 | 
					                                              "^guix\\.[a-z]{2}(_[A-Z]{2})?\\.texi$")
 | 
				
			||||||
 | 
					                                  (find-files "."
 | 
				
			||||||
 | 
					                                              "^guix-cookbook.*\\.texi$"))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
          ;; Compress Info files.
 | 
					          ;; Compress Info files.
 | 
				
			||||||
          (setenv "PATH"
 | 
					          (setenv "PATH"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
;;; GNU Guix --- Functional package management for GNU
 | 
					;;; GNU Guix --- Functional package management for GNU
 | 
				
			||||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 | 
					;;; Copyright © 2017, 2020 Ricardo Wurmus <rekado@elephly.net>
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
;;; This file is part of GNU Guix.
 | 
					;;; This file is part of GNU Guix.
 | 
				
			||||||
;;;
 | 
					;;;
 | 
				
			||||||
| 
						 | 
					@ -21,7 +21,7 @@
 | 
				
			||||||
  #:use-module (guix build-system gnu)
 | 
					  #:use-module (guix build-system gnu)
 | 
				
			||||||
  #:use-module (guix download)
 | 
					  #:use-module (guix download)
 | 
				
			||||||
  #:use-module (guix packages)
 | 
					  #:use-module (guix packages)
 | 
				
			||||||
  #:use-module (guix licenses)
 | 
					  #:use-module ((guix licenses) #:prefix license:)
 | 
				
			||||||
  #:use-module (srfi srfi-64))
 | 
					  #:use-module (srfi srfi-64))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-syntax-rule (define-with-source object source expr)
 | 
					(define-syntax-rule (define-with-source object source expr)
 | 
				
			||||||
| 
						 | 
					@ -42,11 +42,11 @@
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah"))))
 | 
					                "070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system (@ (guix build-system gnu) gnu-build-system))
 | 
				
			||||||
    (home-page "http://gnu.org")
 | 
					    (home-page "http://gnu.org")
 | 
				
			||||||
    (synopsis "Dummy")
 | 
					    (synopsis "Dummy")
 | 
				
			||||||
    (description "This is a dummy package.")
 | 
					    (description "This is a dummy package.")
 | 
				
			||||||
    (license gpl3+)))
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(define-with-source pkg-with-inputs pkg-with-inputs-source
 | 
					(define-with-source pkg-with-inputs pkg-with-inputs-source
 | 
				
			||||||
  (package
 | 
					  (package
 | 
				
			||||||
| 
						 | 
					@ -59,20 +59,20 @@
 | 
				
			||||||
              (sha256
 | 
					              (sha256
 | 
				
			||||||
               (base32
 | 
					               (base32
 | 
				
			||||||
                "070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah"))))
 | 
					                "070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah"))))
 | 
				
			||||||
    (build-system gnu-build-system)
 | 
					    (build-system (@ (guix build-system gnu) gnu-build-system))
 | 
				
			||||||
    (inputs `(("coreutils" ,(@ (gnu packages base) coreutils))
 | 
					    (inputs `(("coreutils" ,(@ (gnu packages base) coreutils))
 | 
				
			||||||
              ("glibc" ,(@ (gnu packages base) glibc) "debug")))
 | 
					              ("glibc" ,(@ (gnu packages base) glibc) "debug")))
 | 
				
			||||||
    (home-page "http://gnu.org")
 | 
					    (home-page "http://gnu.org")
 | 
				
			||||||
    (synopsis "Dummy")
 | 
					    (synopsis "Dummy")
 | 
				
			||||||
    (description "This is a dummy package.")
 | 
					    (description "This is a dummy package.")
 | 
				
			||||||
    (license gpl3+)))
 | 
					    (license license:gpl3+)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(test-equal "simple package"
 | 
					(test-equal "simple package"
 | 
				
			||||||
  pkg-source
 | 
					  `(define-public test ,pkg-source)
 | 
				
			||||||
  (package->code pkg))
 | 
					  (package->code pkg))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(test-equal "package with inputs"
 | 
					(test-equal "package with inputs"
 | 
				
			||||||
  pkg-with-inputs-source
 | 
					  `(define-public test ,pkg-with-inputs-source)
 | 
				
			||||||
  (package->code pkg-with-inputs))
 | 
					  (package->code pkg-with-inputs))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(test-end "print")
 | 
					(test-end "print")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Reference in a new issue