The 'title' field was easily overlooked and was an endless source of confusion. Now, the value of the 'device' field is self-contained. * gnu/system/file-systems.scm (<file-system>): Change constructor name to '%file-system'. [title]: Remove. (<file-system-label>): New record type with printer. (report-deprecation, device-expression) (process-file-system-declaration, file-system): New macros. (file-system-title): New procedure. (file-system->spec, spec->file-system): Adjust to handle <file-system-label>. * gnu/system.scm (bootable-kernel-arguments): Add case for 'file-system-label?'. (read-boot-parameters): Likewise. (mapped-device-user): Avoid 'file-system-title'. (fs->boot-device): Remove. (operating-system-boot-parameters): Use 'file-system-device' instead of 'fs->boot-device'. (device->sexp): Add case for 'file-system-label?'. * gnu/bootloader/grub.scm (grub-root-search): Add case for 'file-system-label?'. * gnu/system/examples/bare-bones.tmpl, gnu/system/examples/beaglebone-black.tmpl, gnu/system/examples/lightweight-desktop.tmpl, gnu/system/examples/vm-image.tmpl: Remove uses of 'title'. * gnu/system/vm.scm (virtualized-operating-system): Remove uses of 'file-system-title'. * guix/scripts/system.scm (check-file-system-availability): Likewise, and adjust fix-it hint. (check-initrd-modules)[file-system-/dev]: Likewise. * gnu/build/file-systems.scm (canonicalize-device-spec): Remove 'title' parameter. [canonical-title]: Remove. Match on SPEC's type rather than on CANONICAL-TITLE. (mount-file-system): Adjust caller. * gnu/build/linux-boot.scm (boot-system): Interpret ROOT here. * gnu/services/base.scm (file-system->fstab-entry): Remove use of 'file-system-title'. * doc/guix.texi (File Systems): Remove documentation of the 'title' field. Rewrite documentation of 'device' and document 'file-system-label'.
		
			
				
	
	
		
			54 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Cheetah
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Cheetah
		
	
	
	
	
	
| ;;; This is an operating system configuration template for a "bare-bones" setup,
 | |
| ;;; suitable for booting in a virtualized environment, including virtual private
 | |
| ;;; servers (VPS).
 | |
| 
 | |
| (use-modules (gnu))
 | |
| (use-package-modules bootloaders disk nvi)
 | |
| 
 | |
| (define vm-image-motd (plain-file "motd" "
 | |
| This is the GNU system.  Welcome!
 | |
| 
 | |
| This instance of GuixSD is a bare-bones template for virtualized environments.
 | |
| 
 | |
| You will probably want to do these things first if you booted in a virtual
 | |
| private server (VPS):
 | |
| 
 | |
| * Set a password for 'root'.
 | |
| * Set up networking.
 | |
| * Expand the root partition to fill the space available by 0) deleting and
 | |
| recreating the partition with fdisk, 1) reloading the partition table with
 | |
| partprobe, and then 2) resizing the filesystem with resize2fs.\n"))
 | |
| 
 | |
| (operating-system
 | |
|   (host-name "gnu")
 | |
|   (timezone "Etc/UTC")
 | |
|   (locale "en_US.utf8")
 | |
| 
 | |
|   ;; Assuming /dev/sdX is the target hard disk, and "my-root" is
 | |
|   ;; the label of the target root file system.
 | |
|   (bootloader (bootloader-configuration
 | |
|                (bootloader grub-bootloader)
 | |
|                (target "/dev/sda")
 | |
|                (terminal-outputs '(console))))
 | |
|   (file-systems (cons (file-system
 | |
|                         (device (file-system-label "my-root"))
 | |
|                         (mount-point "/")
 | |
|                         (type "ext4"))
 | |
|                       %base-file-systems))
 | |
| 
 | |
|   ;; This is where user accounts are specified.  The "root"
 | |
|   ;; account is implicit, and is initially created with the
 | |
|   ;; empty password.
 | |
|   (users %base-user-accounts)
 | |
| 
 | |
|   ;; Globally-installed packages.
 | |
|   (packages (cons* nvi fdisk
 | |
|                    grub   ; mostly so xrefs to its manual work
 | |
|                    parted ; partprobe
 | |
|                    %base-packages))
 | |
| 
 | |
|   (services (modify-services %base-services
 | |
|               (login-service-type config =>
 | |
|                                   (login-configuration
 | |
|                                     (inherit config)
 | |
|                                     (motd vm-image-motd))))))
 |