Building a whole distro on top of a minimalistic language

Size: px
Start display at page:

Download "Building a whole distro on top of a minimalistic language"

Transcription

1 Building a whole distro on top of a minimalistic language Ludovic Courtès FOSDEM, 2 February 2019

2 the GNU/Linux potluck

3

4

5 GNU Guix Reference Card forversion Getting Started Toreadtheon-linedocumentationrun info guix orvisit See One-Off Environments guix environment --ad-hoc spec environmentcontaining spec guix environment python environmenttodeveloppythonitself guix environment --ad-hoc python -C -- python3 runpythoninacontainer guix environment -m file createanenvironmentforthepackagesinmanifest file Customizing Packages guix command name --with-source=name=source build namewithadifferentsourceurl guix command spec --with-input=spec1=spec2 replace spec1with spec2inthedependencygraphof spec guix command spec --with-graft=spec1=spec2 graft spec2inlieuof spec1in spec guix command spec --with-branch=branch build specfromthegivengit branch guix command spec --with-commit=commit build specfromthegivengit commit SpecifyingPackages Mostcommandstakea packagespecification denoted specinthe sequel. Herearesomeexamples: emacs Emacspackage,latestversion GCCtoolchain,version7.x gcc-toolchain:debug latestgcctoolchain,debuggingsymbols Managing Packages guix package -s regexp searchforpackages guix package --show=spec showpackageinfo guix package -i spec installpackages guix package -u [regexp] upgradepackages guix package -r name removepackages guix package -m file instantiatefrommanifest guix package --roll-back rollback guix package -l listprofilegenerations guix package --search-paths displaysearchpaths guix package -p profile useadifferentprofile Manifests guix package -mandothercommandstakea manifest filelisting packagesof interest,alongtheselines: (specifications->manifest "openmpi")) Updating Guix guix describe describecurrentguix guix pull updateguix guix pull -l viewhistory guix pull --commit=commit updateto commit guix pull --branch=branch updateto branch guix pull -C file updatethegivenchannels ChannelSpecifications ChannelsspecifyGitrepositorieswhere guix pulllooksforupdates toguixandexternalpackagerepositories. Bydefault guix pull reads ~/.config/guix/channels.scm;with -Citcantakechannel specificationsfromauser-suppliedfilethatlookslikethis: (cons (channel (name guix-hpc) (url " (branch "master")) %default-channels) Managing StorageSpace guix gc collectallgarbage guix gc -C ng collect ngbof garbage guix gc -F ng ensure ngbareavailable guix package -d duration deletegenerationsolderthan duration e.g., 1mforone month guix size spec viewpackagesize guix gc -R /gnu/store/ listrun-timedependencies guix graph -t references spec viewrun-timedependencies Developing Packages guix edit spec guix build spec guix build --log-file spec guix build -K spec guix build -S spec guix build --check spec guix build --target=triplet guix download URL guix hash file guix graph spec dot -Tpdf guix refresh spec guix import repo name Creating ApplicationBundles guix pack spec guix pack -f docker spec guix pack -f squashfs spec guix pack --relocatable spec guix pack -S /bin=bin spec guix pack -m file viewthedefinition buildpackages viewthebuildlog buildpackages,keepbuild treesonfailure obtainthesourceof spec rebuildapackage cross-compileto triplet e.g., arm-linux-gnueabihf downloadfrom URLandprint itssha256hash printthehashof file viewdependencies updatepackagedefinition import namefrom repo createatarball createadockerimage createasingularityimage createarelocatabletarball make /binasymlinktothe packages bindirectory bundlethepackagesfromthe manifestin file

6 (operating-system (host-name "schememachine") (timezone "Europe/Brussels") (locale "fr_be.utf8") (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (target "/boot/efi"))) (file-systems (cons (file-system (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) (users (cons (user-account (name "charlie") (group "users") (home-directory "/home/charlie")) %base-user-accounts)) (services (cons* (service dhcp-client-service-type) (service openssh-service-type) %base-services)))

7 $ guix system build config.scm... $ guix system vm config.scm... $ guix system container config.scm... $ guix system reconfigure config.scm...

8

9 Here s one of my favorite features. The new for keyword allows you to iterate over lists and generate lists and maps. This gives you a whole bunch of new flexibility.

10 The truth is that Lisp is not the right language for any particular problem. Rather, Lisp encourages one to attack a new problem by implementing new languages tailored to that problem. Abelson & Sussman, 1987

11 (define hello (package (name "hello") (version "2.8") (source (origin (method url-fetch) (uri (string-append " version ".tar.gz")) (sha256 (base32 "0wqd...dz6")))) (build-system gnu-build-system) (synopsis "An example GNU package") (description "Produce a friendly greeting.") (home-page " (license gpl3+))) ;; Yields: /gnu/store/...-hello-2.8

12 (service openssh-service-type)

13 (service openssh-service-type (openssh-configuration (x11-forwarding? #true) (permit-root-login without-password)))

14 ;; Sets up cgit + nginx + fcgiwrap. (service cgit-service-type (cgit-configuration (repository-directory "/srv/git") (project-list (list "foo" "bar"))))

15 (operating-system ;;... (services (remove (lambda (service) (eq? ntp-service-type (service-kind service))) %desktop-services)))

16 (define %my-services ;; My very own list of services. (modify-services %desktop-services (mingetty-service-type config => (mingetty-configuration (inherit config) (motd (plain-file "motd" "Howdy FOSDEM!")))) (upower-service-type config => (upower-configuration (inherit config) (ignore-lid? #true) (percentage-critical 5.)))))

17 Emacs and Web user interfaces guix refresh package auto-updater guix lint package checker guix graph dependency graph viewer guix system extension-graph service composition viewer...

18 Unification beyond the distro.

19 Nix & string interpolation { fetchurl, stdenv } : } stdenv. mkderivation { name = "hello-2.3"; src = fetchurl { url = mirror://gnu/hello/hello-2.3.tar.bz2; sha256 = "0c7vijq8y68..."; }; meta = { description = "Produces a friendly greeting"; homepage = license = "GPLv3+"; }; function definition function call

20 Nix & string interpolation { fetchurl, stdenv } : stdenv. mkderivation { name = "hello-2.3"; src = fetchurl { url = mirror://gnu/hello/hello-2.3.tar.bz2; sha256 = "0c7vijq8y68..."; }; precheck = "echo Test suite coming up! "; Bash snippet meta = { description = "Produces a friendly greeting"; homepage = license = "GPLv3+"; }; }

21

22 The Initial RAM Disk

23 The Initial RAM Disk (expression->initrd (with-imported-modules (source-module-closure ((gnu build linux-boot) (guix build utils))) #~ (begin (use-modules (gnu build linux-boot) (guix build utils)) (boot-system #:mounts #$file-systems #:linux-modules #$linux-modules #:linux-module-directory #$kodir)))

24 The Initial RAM Disk code staging (expression->initrd (with-imported-modules (source-module-closure ((gnu build linux-boot) (guix build utils))) #~ (begin (use-modules (gnu build linux-boot) (guix build utils)) (boot-system #:mounts #$file-systems #:linux-modules #$linux-modules #:linux-module-directory #$kodir)))

25 Linux-libre

26 Linux-libre initial RAM disk

27 Linux-libre initial RAM disk Guile

28 Linux-libre initial RAM disk Guile PID 1: GNU Shepherd services...

29 Linux-libre initial RAM disk Guile PID 1: GNU Shepherd services... Guile

30 Linux-libre initial RAM disk Guile PID 1: GNU Shepherd services... Guile applications

31 System Services ;; Service definition for the GNU Shepherd (PID 1) ;; embedded in GuixSD. (shepherd-service (provision (mysql)) (documentation "Run the MySQL server.") (start (let ((my.cnf (mysql-configuration-file config))) #~(make-forkexec-constructor (list (string-append #$mysql "/bin/mysqld") (string-append "--defaults-file=" #$my.cnf)) #:user "mysql" #:group "mysql"))) (stop #~(make-kill-destructor)))

32 ;; Shepherd service to mount/unmount a file system. (with-imported-modules ((gnu build file-systems)) (shepherd-service (provision (file-system-/home)) (start #~(lambda () (mount "/dev/foo" "/home" "ext4"))) (stop #~(lambda () (umount "/home")))))

33 ;; Shepherd service for the BitlBee IRC gateway daemon. (shepherd-service (provision (bitlbee)) (requirement (loopback)) (start #~(make-forkexec-constructor (list #$(file-append bitlbee "/sbin/bitlbee")...))) (stop #~(make-kill-destructor)))

34 ;; Shepherd service for the BitlBee IRC gateway daemon. (with-imported-modules ((gnu build linux-container)) (shepherd-service (provision (bitlbee)) (requirement (loopback)) (start #~(make-forkexec-constructor/container (list #$(file-append bitlbee "/sbin/bitlbee")...))) (stop #~(make-kill-destructor)))) containerized service!

35 Wrap-up.

36 distro & tools as a Scheme library hackability through uniformity code staging techniques to glue it all

37 Join us now, share the parens! install the distribution use it, report bugs, add packages share your ideas!

38

39 Copyright c 2010, Ludovic Courtès ludo@gnu.org. GNU Guix logo, CC-BY-SA 4.0, Buffet picture under CC-BY-SA 2.0 by PEK, GNU Guix Reference Card under GFDL Copyright of other images included in this document is held by their respective owners. This work is licensed under the Creative Commons Attribution-Share Alike 3.0 License. To view a copy of this license, visit or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. At your option, you may instead copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available at The source of this document is available from

GNU Guix: Scheme as a uniform OS admin and deployment interface

GNU Guix: Scheme as a uniform OS admin and deployment interface GNU Guix: Scheme as a uniform OS admin and deployment interface Ludovic Courtès Commercial Users of Functional Programming 24 September 2016, Nara, Japan $ guix package -i gcc-toolchain coreutils sed

More information

Functional Package Management with GNU Guix

Functional Package Management with GNU Guix Functional Package Management with GNU Guix Ricardo Wurmus rekado@elephly.net OpenTechSummit 14 May 2015 Good idea easy to install, upgrade, remove software dependency resolution centrally maintained repositories

More information

Navigating the Guix Subsystems

Navigating the Guix Subsystems Navigating the Guix Subsystems Ludovic Courtès GNU Hackers Meeting, Rennes, August 2016 The Emacs of distros When large numbers of nontechnical workers are using a programmable editor, they will be tempted

More information

Controlling Software Environments with GNU Guix

Controlling Software Environments with GNU Guix Controlling Software Environments with GNU Guix Ludovic Courtès Inria Bordeaux Sud-Ouest November 2016 The difficulty of keeping software environments under control. #1. Upgrades are hard. #2. Stateful

More information

. GNU Guix: Package without a scheme! Andreas Enge. GNU Hackers Meeting Paris, 23 August 2013

. GNU Guix: Package without a scheme! Andreas Enge. GNU Hackers Meeting Paris, 23 August 2013 .. GNU Guix: Package without a scheme! Andreas Enge andreas@enge.fr GNU Hackers Meeting Paris, 23 August 2013 Andreas Enge (GNU Guix) GNU Guix packaging GHM 2013 1 Guix system Two chunks of code Guix package

More information

Adding GNU/Hurd support to GNU Guix Porting GNU Guix to a new platform

Adding GNU/Hurd support to GNU Guix Porting GNU Guix to a new platform Adding GNU/Hurd support to GNU Guix Porting GNU Guix to a new platform Manolis Ragkousis manolis837@gmail.com FOSDEM 30 January 2016 What is distro bootstrapping? Simply speaking Bootstrapping refers to

More information

reproducible and user-controlled software management in HPC

reproducible and user-controlled software management in HPC reproducible and user-controlled software management in HPC with GNU Guix Ricardo Wurmus + Pjotr Prins + Ben Woodcroft + Altuna Akalin BOSC 2017, Prague System Admins prefer mature software, no variants,

More information

The Nix Package Manager

The Nix Package Manager The Nix Package Manager Eelco Dolstra e.dolstra@tudelft.nl Delft University of Technology, EWI, Department of Software Technology November 12, 2009 Nix Nix: purely functional package manager NixOS: Linux

More information

Practical, verifiable software freedom with GuixSD. David Thompson Sunday, March 25th, 2018

Practical, verifiable software freedom with GuixSD. David Thompson Sunday, March 25th, 2018 Practical, verifiable software freedom with GuixSD David Thompson Sunday, March 25th, 2018 about me GNU Guix contributor since 2013 GNU Guile user and contributor since 2012 day job: DevOps (AWS, Ruby)

More information

Linux+ Guide to Linux Certification, Third Edition. Chapter 2 Linux Installation and Usage

Linux+ Guide to Linux Certification, Third Edition. Chapter 2 Linux Installation and Usage Linux+ Guide to Linux Certification, Third Edition Chapter 2 Linux Installation and Usage Objectives Install Red Hat Fedora Linux using good practices Outline the structure of the Linux interface Enter

More information

Workflow management for data analysis with GNU Guix

Workflow management for data analysis with GNU Guix Workflow management for data analysis with GNU Guix Roel Janssen June 9, 2016 Abstract Combining programs to perform more powerful actions using scripting languages seems a good idea, until portability

More information

The Linux IPL Procedure

The Linux IPL Procedure The Linux IPL Procedure SHARE - Tampa February 13, 2007 Session 9274 Edmund MacKenty Rocket Software, Inc. Purpose De-mystify the Linux boot sequence Explain what happens each step of the way Describe

More information

Red Hat OpenShift Application Runtimes 1

Red Hat OpenShift Application Runtimes 1 Red Hat OpenShift Application Runtimes 1 Install and Configure the Fabric8 Launcher Tool For Use with Red Hat OpenShift Application Runtimes Last Updated: 2018-03-09 Red Hat OpenShift Application Runtimes

More information

Relax-and-Recover (ReaR) Automated Testing

Relax-and-Recover (ReaR) Automated Testing Relax-and-Recover Relax-and-Recover (ReaR) Automated Testing Gratien D'haese IT3 Consultants http://it3.be What is ReaR? A modular bare-metal disaster recovery tool for GNU/Linux written in bash with a

More information

Red Hat Container Development Kit 3.0 Release Notes and Known Issues

Red Hat Container Development Kit 3.0 Release Notes and Known Issues Red Hat Container Development Kit 3.0 Release Notes and Known Issues Highlighted features and identified problems in Red Hat Container Development Kit 3.0 Brian Brock Robert Krátký Red Hat Developer Group

More information

Red Hat Quay 2.9 Deploy Red Hat Quay - Basic

Red Hat Quay 2.9 Deploy Red Hat Quay - Basic Red Hat Quay 2.9 Deploy Red Hat Quay - Basic Deploy Red Hat Quay Last Updated: 2018-09-14 Red Hat Quay 2.9 Deploy Red Hat Quay - Basic Deploy Red Hat Quay Legal Notice Copyright 2018 Red Hat, Inc. The

More information

Reproducible packaging and distribution of software with GNU Guix

Reproducible packaging and distribution of software with GNU Guix Reproducible packaging and distribution of software with GNU Guix Distributing software with Guix Pjotr Prins FOSDEM February 5th, 2017 UMC Utrecht/UTHSC GeneNetwork.org Reproducible packaging and distribution

More information

Growing a GNU with Guix

Growing a GNU with Guix Growing a GNU with Guix Ludovic Courtès ludo@gnu.org FOSDEM 2 February 2014, Brussels Howdy! ( guile) Howdy! ( guile) NixOS Howdy! ( guile) NixOS the GNU system, 30 years later the GNU system, 30 years

More information

INSTALLATION. Security of Information and Communication Systems. Table of contents

INSTALLATION. Security of Information and Communication Systems. Table of contents Security of Information and Communication Systems INSTALLATION Table of contents 1. Introduction...2 2....3 2.1. Hardware requirement...3 2.2. of the system...3 2.3. of ALCASAR...7 2.4. Connexion to the

More information

January 28 29, 2014San Jose. Engineering Workshop

January 28 29, 2014San Jose. Engineering Workshop January 28 29, 2014San Jose Open Network Linux A Common Linux Platform for OCP Switches Rob Sherwood Big Switch Networks CTO Outline Proposed in November OCP workshop Goal: Common community target à faster

More information

Building a GNU/Linux distribution with DevOps in mind

Building a GNU/Linux distribution with DevOps in mind Building a GNU/Linux distribution with DevOps in mind Daniel Dehennin Pôle de Compétences Logiciels Libres OpenNebulaConf 2016 cc by-sa 40 1 / 25 Pôle de Compétences Logiciels Libres foss and agility in

More information

Source Code Management wih git

Source Code Management wih git Source Code Management wih git Matthieu Herrb December 22 http://homepages.laas.fr/matthieu/cours/git.pdf Licence This work is licensed under a Creative Commons Attribution-ShareAlike 3. Unported License.

More information

CompTIA Linux+ Guide to Linux Certification Fourth Edition. Chapter 2 Linux Installation and Usage

CompTIA Linux+ Guide to Linux Certification Fourth Edition. Chapter 2 Linux Installation and Usage CompTIA Linux+ Guide to Linux Certification Fourth Edition Chapter 2 Linux Installation and Usage Objectives Prepare for and install Fedora Linux using good practices Outline the structure of the Linux

More information

Gentoo Linux. Software Freedom Day 2010 Charleston, SC Linux User Group. Presentation by Kevin Bowling

Gentoo Linux. Software Freedom Day 2010 Charleston, SC Linux User Group. Presentation by Kevin Bowling Gentoo Linux Software Freedom Day 2010 Charleston, SC Linux User Group Presentation by Kevin Bowling http://bit.ly/9xywlx Gentoo Linux - Software Freedom Day 2010 1 Source Based Distro Gentoo is prepared

More information

Release Management for Stratego/XT with Nix

Release Management for Stratego/XT with Nix Release Management for Stratego/XT with Nix Eelco Dolstra Center for Software Technology Utrecht University eelco@cs.uu.nl March 4, 2004 Eelco Dolstra SUD 04 1 The problem Software deployment (the act

More information

Die Brummbeere Documentation

Die Brummbeere Documentation Die Brummbeere Documentation Release 0.0.1 Peter Bouda February 21, 2016 Contents 1 owncloud Music Player 1 2 Contents 3 2.1 Compile for desktop........................................... 3 2.2 Embedded

More information

Red Hat Developer Tools 2.1

Red Hat Developer Tools 2.1 Red Hat Developer Tools 2.1 Using Eclipse Installing Eclipse 4.7.1 and first steps with the application Last Updated: 2017-11-07 Red Hat Developer Tools 2.1 Using Eclipse Installing Eclipse 4.7.1 and

More information

Red Hat Enterprise Linux Atomic Host 7 Getting Started with Cockpit

Red Hat Enterprise Linux Atomic Host 7 Getting Started with Cockpit Red Hat Enterprise Linux Atomic Host 7 Getting Started with Cockpit Getting Started with Cockpit Red Hat Atomic Host Documentation Team Red Hat Enterprise Linux Atomic Host 7 Getting Started with Cockpit

More information

Red Hat Virtualization 4.2

Red Hat Virtualization 4.2 Red Hat Virtualization 4.2 Introduction to the VM Portal Accessing and Using the VM Portal Last Updated: 2018-07-30 Red Hat Virtualization 4.2 Introduction to the VM Portal Accessing and Using the VM

More information

LSST software stack and deployment on other architectures. William O Mullane for Andy Connolly with material from Owen Boberg

LSST software stack and deployment on other architectures. William O Mullane for Andy Connolly with material from Owen Boberg LSST software stack and deployment on other architectures William O Mullane for Andy Connolly with material from Owen Boberg Containers and Docker Packaged piece of software with complete file system it

More information

Red Hat Ceph Storage Release Notes

Red Hat Ceph Storage Release Notes Red Hat Ceph Storage 1.3.2 Release Notes Release notes for Red Hat Ceph Storage 1.3.2 Red Hat Ceph Storage Documentation Team Red Hat Ceph Storage 1.3.2 Release Notes Release notes for Red Hat Ceph Storage

More information

Continuous Integration and Release Management with Nix

Continuous Integration and Release Management with Nix Continuous Integration and Release Management with Nix Institute of Information & Computing Sciences Utrecht University, The Netherlands July 14, 2004 Outline 1 Continuous Integration 2 Release Management

More information

Red Hat Developer Tools

Red Hat Developer Tools Red Hat Developer Tools 2018.4 Using Eclipse Installing Eclipse 4.9.0 and first steps with the application Last Updated: 2018-10-23 Red Hat Developer Tools 2018.4 Using Eclipse Installing Eclipse 4.9.0

More information

The GNU Shepherd Manual

The GNU Shepherd Manual The GNU Shepherd Manual For use with the GNU Shepherd 0.4.0 Last updated 15 March 2018 Wolfgang Jährling Ludovic Courtès Copyright c 2002, 2003 Wolfgang Jährling Copyright c 2013, 2016, 2018 Ludovic Courtès

More information

Singularity: Containers for High-Performance Computing. Grigory Shamov Nov 21, 2017

Singularity: Containers for High-Performance Computing. Grigory Shamov Nov 21, 2017 Singularity: Containers for High-Performance Computing Grigory Shamov Nov 21, 2017 Outline Software and High Performance Computing: Installation/Maintenance of the HPC Software stack Why containers and

More information

Manual File System Check Linux Command Line

Manual File System Check Linux Command Line Manual File System Check Linux Command Line The traditional Unix environment is a CLI (command line interface), where you To move around the file system you will use cd. Nearly every command and application

More information

Git Guide. Meher Krishna Patel. Created on : Octorber, 2017 Last updated : October, More documents are freely available at PythonDSP

Git Guide. Meher Krishna Patel. Created on : Octorber, 2017 Last updated : October, More documents are freely available at PythonDSP Git Guide Meher Krishna Patel Created on : Octorber, 2017 Last updated : October, 2018 More documents are freely available at PythonDSP Table of contents Table of contents i 1 Commands Summary 1 2 Git

More information

Fedora 12. For guidelines on the permitted uses of the Fedora trademarks, refer to https:// fedoraproject.org/wiki/legal:trademark_guidelines.

Fedora 12. For guidelines on the permitted uses of the Fedora trademarks, refer to https:// fedoraproject.org/wiki/legal:trademark_guidelines. Fedora 12 Downloading and installing Fedora 12 on most desktop and laptop computers Red Hat Engineering Content Services Fedora Documentation Project Edited by Rüdiger Landmann Copyright 2009 Red Hat,

More information

INSTALLATION. Security of Information and Communication Systems

INSTALLATION. Security of Information and Communication Systems Security of Information and Communication Systems INSTALLATION Table of contents 1.Introduction...2 2.Installation...3 2.1.Hardware requirement...3 2.2.Installation of the system...3 2.3.Installation of

More information

Service Configuration Management

Service Configuration Management Service Configuration Management SCM-12 Eelco Dolstra Martin Bravenboer Eelco Visser {eelco, martin, visser}@cs.uu.nl Universiteit Utrecht, Faculty of Science, Department of Information and Computing Sciences

More information

Red Hat Developer Tools

Red Hat Developer Tools Red Hat Developer Tools 2018.4 Using Clang and LLVM Toolset Installing and Using Clang and LLVM Toolset Last Updated: 2018-11-29 Red Hat Developer Tools 2018.4 Using Clang and LLVM Toolset Installing

More information

Red Hat Developer Tools

Red Hat Developer Tools Red Hat Developer Tools 2018.1 Using Eclipse Installing Eclipse 4.7.2 and first steps with the application Last Updated: 2018-01-24 Red Hat Developer Tools 2018.1 Using Eclipse Installing Eclipse 4.7.2

More information

ULTEO OPEN VIRTUAL DESKTOP SUSE LINUX ENTERPRISE SERVER (SLES) 11 SP1 SUPPORT

ULTEO OPEN VIRTUAL DESKTOP SUSE LINUX ENTERPRISE SERVER (SLES) 11 SP1 SUPPORT ULTEO OPEN VIRTUAL DESKTOP V4.0.2 SUSE LINUX ENTERPRISE SERVER (SLES) 11 SP1 SUPPORT Contents 1 Prerequisites: SUSE Linux Enterprise Server (SLES) 11 SP1 3 1.1 System Requirements..............................

More information

Red Hat Developer Tools

Red Hat Developer Tools Red Hat Developer Tools 2018.2 Using Clang and LLVM Toolset Installing and Using Clang and LLVM Toolset Last Updated: 2018-04-26 Red Hat Developer Tools 2018.2 Using Clang and LLVM Toolset Installing

More information

Red Hat CloudForms 4.0

Red Hat CloudForms 4.0 Red Hat CloudForms 4.0 Installing CloudForms on VMware vsphere How to Install and Configure the CloudForms Management Engine Appliance on a VMware vsphere environment Last Updated: 2017-12-08 Red Hat

More information

Red Hat CloudForms 4.2

Red Hat CloudForms 4.2 Red Hat CloudForms 4.2 Installing Red Hat CloudForms on Amazon Elastic Compute Cloud (Amazon EC2) How to install and configure Red Hat CloudForms on an Amazon EC2 Last Updated: 2017-12-18 Red Hat CloudForms

More information

Chapter 02 Linux Installation and Usage

Chapter 02 Linux Installation and Usage Chapter 02 Linux Installation and Usage TRUEFALSE 1. A swap partition contains a filesystem. 2. When a user interacts with his computer, he interacts directly with the kernel of the computer's operating

More information

NixOS: A Purely Functional Linux Distribution

NixOS: A Purely Functional Linux Distribution NixOS: A Purely Functional Linux Distribution ICFP 2008, Victoria, Canada Eelco Dolstra 1 Andres Löh 2 1 Delft University of Technology, EWI, Department of Software Technology 2 Utrecht University, Department

More information

LAB #7 Linux Tutorial

LAB #7 Linux Tutorial Gathering information: LAB #7 Linux Tutorial Find the password file on a Linux box Scenario You have access to a Linux computer. You must find the password file on the computer. Objective Get a listing

More information

Fedora 12. For guidelines on the permitted uses of the Fedora trademarks, refer to fedoraproject.org/wiki/legal:trademark_guidelines.

Fedora 12. For guidelines on the permitted uses of the Fedora trademarks, refer to   fedoraproject.org/wiki/legal:trademark_guidelines. Fedora 12 Fedora 12 Red Hat Engineering Content Services Fedora Documentation Project Edited by Rüdiger Landmann Copyright 2009 Red Hat, Inc. and others. The text of and illustrations in this document

More information

Fedora 12. For guidelines on the permitted uses of the Fedora trademarks, refer to fedoraproject.org/wiki/legal:trademark_guidelines.

Fedora 12. For guidelines on the permitted uses of the Fedora trademarks, refer to   fedoraproject.org/wiki/legal:trademark_guidelines. Fedora 12 12 Red Hat Engineering Content Services Fedora Documentation Project Rüdiger Landmann Copyright 2009 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red

More information

Introduction to Version Control

Introduction to Version Control Research Institute for Symbolic Computation Johannes Kepler University Linz, Austria 21-Nov-2013 Outline General Remarks about Version Control 1 General Remarks about Version Control 2 Outline General

More information

Run containerized applications from pre-existing images stored in a centralized registry

Run containerized applications from pre-existing images stored in a centralized registry Introduction This examination is based upon the most critical job activities a Docker Certified Associate performs. The skills and knowledge certified by this examination represent a level of expertise

More information

Code Staging in GNU Guix

Code Staging in GNU Guix Code Staging in GNU Guix To cite this version:. Code Staging in GNU Guix. 16th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences (GPCE 17), Oct 2017, Vancouver, Canada.

More information

The Early System Start-Up Process. Group Presentation by: Tianyuan Liu, Caiwei He, Krishna Parasuram Srinivasan, Wenbin Xu

The Early System Start-Up Process. Group Presentation by: Tianyuan Liu, Caiwei He, Krishna Parasuram Srinivasan, Wenbin Xu The Early System Start-Up Process Group Presentation by: Tianyuan Liu, Caiwei He, Krishna Parasuram Srinivasan, Wenbin Xu 1 Boot Process Booting is the initialization of a computerized system In Linux,

More information

Zimbra Collaboration Suite Virtual Appliance VMware Installation

Zimbra Collaboration Suite Virtual Appliance VMware Installation Zimbra Collaboration Suite Virtual Appliance VMware Installation Network Edition 4.5 Beta 2 The Zimbra Collaboration Suite (ZCS) virtual appliance includes the rpath Linux operating system and the ZCS

More information

Table of Contents DevOps Administrators

Table of Contents DevOps Administrators DevOps Administrators Table of Contents DevOps Administrators Overview for DevOps Admins Managing Images, Projects, Users Configure a Registry Create Users Assign the Administrator Role Create a Project

More information

Introduction p. 1 Why Linux? p. 2 Embedded Linux Today p. 3 Open Source and the GPL p. 3 Free Versus Freedom p. 4 Standards and Relevant Bodies p.

Introduction p. 1 Why Linux? p. 2 Embedded Linux Today p. 3 Open Source and the GPL p. 3 Free Versus Freedom p. 4 Standards and Relevant Bodies p. Foreword p. xix Preface p. xxi Acknowledgments p. xxvii About the Author p. xxix Introduction p. 1 Why Linux? p. 2 Embedded Linux Today p. 3 Open Source and the GPL p. 3 Free Versus Freedom p. 4 Standards

More information

FlexWATCH Smart NVR 2.0

FlexWATCH Smart NVR 2.0 FlexWATCH Smart NVR 2.0 Copyright Information Copyright 2016 Seyeon Tech Co., Ltd. All rights reserved. Use of this product and manual is subject to license. Information in this document is subject to

More information

Git. Ľubomír Prda. IT4Innovations.

Git. Ľubomír Prda. IT4Innovations. Git Ľubomír Prda IT4Innovations lubomir.prda@vsb.cz support@it4i.cz VCS Version Control System Versioning - creation and management of multiple releases of a product, all of which have the same general

More information

ULTEO OPEN VIRTUAL DESKTOP OPENSUSE 11.3 SUPPORT

ULTEO OPEN VIRTUAL DESKTOP OPENSUSE 11.3 SUPPORT ULTEO OPEN VIRTUAL DESKTOP V4.0.2 OPENSUSE 11.3 SUPPORT Contents 1 Prerequisites: opensuse 11.3 3 1.1 System Requirements.............................. 3 2 Repository 4 2.1 Online Method..................................

More information

Red Hat CloudForms 4.6

Red Hat CloudForms 4.6 Red Hat CloudForms 4.6 Installing Red Hat CloudForms on Red Hat Virtualization How to install and configure Red Hat CloudForms on a Red Hat Virtualization environment Last Updated: 2018-08-07 Red Hat

More information

Shifter at CSCS Docker Containers for HPC

Shifter at CSCS Docker Containers for HPC Shifter at CSCS Docker Containers for HPC HPC Advisory Council Swiss Conference Alberto Madonna, Lucas Benedicic, Felipe A. Cruz, Kean Mariotti - CSCS April 9 th, 2018 Table of Contents 1. Introduction

More information

Overview LEARN. History of Linux Linux Architecture Linux File System Linux Access Linux Commands File Permission Editors Conclusion and Questions

Overview LEARN. History of Linux Linux Architecture Linux File System Linux Access Linux Commands File Permission Editors Conclusion and Questions Lanka Education and Research Network Linux Architecture, Linux File System, Linux Basic Commands 28 th November 2016 Dilum Samarasinhe () Overview History of Linux Linux Architecture Linux File System

More information

Getting the files for the first time...2. Making Changes, Commiting them and Pull Requests:...5. Update your repository from the upstream master...

Getting the files for the first time...2. Making Changes, Commiting them and Pull Requests:...5. Update your repository from the upstream master... Table of Contents Getting the files for the first time...2 Making Changes, Commiting them and Pull Requests:...5 Update your repository from the upstream master...8 Making a new branch (for leads, do this

More information

Cross platform enablement for the yocto project with containers. ELC 2017 Randy Witt Intel Open Source Technology Center

Cross platform enablement for the yocto project with containers. ELC 2017 Randy Witt Intel Open Source Technology Center Cross platform enablement for the yocto project with containers ELC 2017 Randy Witt Intel Open Source Technology Center My personal problems Why d I even do this? THE multiple distro Problem Yocto Project

More information

Installation Manual InfraManage.NET Installation Instructions for Ubuntu

Installation Manual InfraManage.NET Installation Instructions for Ubuntu Installation Manual InfraManage.NET Installation Instructions for Ubuntu Copyright 1996 2017 Timothy Ste. Marie Version 7.5.72SQL InfraManage.NET Installing InfraManage.NET Page 1 of 78 Table of Contents

More information

DEVOPS COURSE CONTENT

DEVOPS COURSE CONTENT LINUX Basics: Unix and linux difference Linux File system structure Basic linux/unix commands Changing file permissions and ownership Types of links soft and hard link Filter commands Simple filter and

More information

docker & HEP: containerization of applications for development, distribution and preservation

docker & HEP: containerization of applications for development, distribution and preservation docker & HEP: containerization of applications for development, distribution and preservation Sébastien Binet LAL/IN2P3 2015-04-13 S. Binet (LAL) docker-hep 2015-04-13 1 / 16 Docker: what is it? http://www.docker.io/

More information

Common Git Commands. Git Crash Course. Teon Banek April 7, Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18

Common Git Commands. Git Crash Course. Teon Banek April 7, Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18 Common Git Commands Git Crash Course Teon Banek theongugl@gmail.com April 7, 2016 Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18 Outline 1 Introduction About Git Setup 2 Basic Usage Trees Branches

More information

Participants in this lab will gain example-led awareness and understanding of the following technical facilities:

Participants in this lab will gain example-led awareness and understanding of the following technical facilities: IPS Basics 1 Introduction Oracle Solaris 11 takes a new approach to lifecycle and package management to greatly simplify the process of managing system software helping to reduce the inherent risks of

More information

USPAS Simulation of Beam and Plasma Systems Steven M. Lund, Jean-Luc Vay, Remi Lehe, Daniel Winklehner and David L. Bruhwiler Lecture: Software Version Control Instructor: David L. Bruhwiler Contributors:

More information

Red Hat Mobile Application Platform 4.2 Operations Guide

Red Hat Mobile Application Platform 4.2 Operations Guide Red Hat Mobile Application Platform 4.2 Operations Guide For Red Hat Mobile Application Platform 4.2 Red Hat Customer Content Services Red Hat Mobile Application Platform 4.2 Operations Guide For Red

More information

Ubuntu Set Static Ip Address Command Line

Ubuntu Set Static Ip Address Command Line Ubuntu 10.04 Set Static Ip Address Command Line Check to see if everything works, Mount at startup, Automounter, Static Mounts These have to be IP addresses because of a limitation in portmap (it doesn't

More information

M E R C U R I A L (The Source Control Management)

M E R C U R I A L (The Source Control Management) M E R C U R I A L (The Source Control Management) Jamshaid Iqbal Janjua, Shahid Awan jamshaid.janjua@kics.edu.pk shahidawan@kics.edu.pk Al-Khawarizmi Institute of Computer Science University of Engineering

More information

Red Hat CloudForms 4.6

Red Hat CloudForms 4.6 Red Hat CloudForms 4.6 Policies and Profiles Guide Policy-based enforcement, compliance, events, and policy profiles for Red Hat CloudForms Last Updated: 2018-03-02 Red Hat CloudForms 4.6 Policies and

More information

GNU Guix is 4 years old!

GNU Guix is 4 years old! GNU Guix is 4 years old! Ludovic Courtès GNU Hackers Meeting, Rennes, August 2016 The rise and fall of distros. Debian and other distributions are going to be that thing you run docker on, little more.

More information

Red Hat OpenShift Application Runtimes 0.1

Red Hat OpenShift Application Runtimes 0.1 Red Hat OpenShift Application Runtimes 0.1 Install and Configure the developers.redhat.com/launch Application on a Single-node OpenShift Cluster For Use with Red Hat OpenShift Application Runtimes Last

More information

Recovering GRUB: Dual Boot Problems and Solutions

Recovering GRUB: Dual Boot Problems and Solutions Recovering GRUB: Dual Boot Problems and Solutions Published by the Open Source Software Lab at Microsoft. October 2007. Special thanks to Chris Travers, Contributing Author to the Open Source Software

More information

u-root: / with the convenience of scripting and the performance of compilation

u-root: / with the convenience of scripting and the performance of compilation u-root: / with the convenience of scripting and the performance of compilation Ron Minnich Google Andrey Mirtchovski Cisco Outline What u-root is Why we re doing it How it all works Try it! sudo docker

More information

Git for Newbies. ComMouse Dongyue Studio

Git for Newbies. ComMouse Dongyue Studio Git for Newbies ComMouse Dongyue Studio 2018.4.25 Contents What is Git? Git Quick Start Git Branch Git Workflow Git in Practice What is Git? What is Git? A Version Control System (VCS) An Open-sourced

More information

Supercomputing environment TMA4280 Introduction to Supercomputing

Supercomputing environment TMA4280 Introduction to Supercomputing Supercomputing environment TMA4280 Introduction to Supercomputing NTNU, IMF February 21. 2018 1 Supercomputing environment Supercomputers use UNIX-type operating systems. Predominantly Linux. Using a shell

More information

Linux Command Line Primer. By: Scott Marshall

Linux Command Line Primer. By: Scott Marshall Linux Command Line Primer By: Scott Marshall Draft: 10/21/2007 Table of Contents Topic Page(s) Preface 1 General Filesystem Background Information 2 General Filesystem Commands 2 Working with Files and

More information

Digi Embedded Yocto 1.6. First Steps Guide

Digi Embedded Yocto 1.6. First Steps Guide Digi Embedded Yocto 1.6 First Steps Guide Revision history 90001423 Revision Date Description E July, 2015 Updated to Digi Embedded Yocto 1.6.6 F October, 2015 Updated to Digi Embedded Yocto 1.6.7 G November,

More information

CSE 391 Lecture 9. Version control with Git

CSE 391 Lecture 9. Version control with Git CSE 391 Lecture 9 Version control with Git slides created by Ruth Anderson & Marty Stepp, images from http://git-scm.com/book/en/ http://www.cs.washington.edu/391/ 1 Problems Working Alone Ever done one

More information

Be smart. Think open source.

Be smart. Think open source. Foreman Basics Be smart. Think open source. Foreman - Basics Lifecycle management of physical and virtual machines made easy! Agenda Introduction to Foreman Architecture Setup Provisioning Configuration

More information

Guide for depositing Final Bachelor's Degree Project Final Master's Degree Project- Practicum in O2, the UOC's institutional repository

Guide for depositing Final Bachelor's Degree Project Final Master's Degree Project- Practicum in O2, the UOC's institutional repository Guide for depositing Final Bachelor's Degree Project Final Master's Degree Project- Practicum in O2, the UOC's institutional repository Steps to follow to publish a document in the repository 1. Enter

More information

Server guides for the GIRAF project

Server guides for the GIRAF project Server guides for the GIRAF project A joint guide produced by SW611 & SW616 Aalborg University Contents 1 Accessing the GIRAF servers (SW611)........................... 3 2 Using Docker (SW611)..........................................

More information

Introduction to Linux

Introduction to Linux Introduction to Linux The command-line interface A command-line interface (CLI) is a type of interface, that is, a way to interact with a computer. Window systems, punched cards or a bunch of dials, buttons

More information

Red Hat Enterprise Linux 7 Getting Started with Cockpit

Red Hat Enterprise Linux 7 Getting Started with Cockpit Red Hat Enterprise Linux 7 Getting Started with Cockpit Getting Started with Cockpit Red Hat Enterprise Linux Documentation Team Red Hat Enterprise Linux 7 Getting Started with Cockpit Getting Started

More information

Splunk N Box. Splunk Multi-Site Clusters In 20 Minutes or Less! Mohamad Hassan Sales Engineer. 9/25/2017 Washington, DC

Splunk N Box. Splunk Multi-Site Clusters In 20 Minutes or Less! Mohamad Hassan Sales Engineer. 9/25/2017 Washington, DC Splunk N Box Splunk Multi-Site Clusters In 20 Minutes or Less! Mohamad Hassan Sales Engineer 9/25/2017 Washington, DC Forward-Looking Statements During the course of this presentation, we may make forward-looking

More information

Introduction to Containers

Introduction to Containers Introduction to Containers Shawfeng Dong Principal Cyberinfrastructure Engineer University of California, Santa Cruz What are Containers? Containerization, aka operating-system-level virtualization, refers

More information

TCPWave DDI Virtual Machine Installation Guide

TCPWave DDI Virtual Machine Installation Guide TCPWave DDI Virtual Machine Installation Guide Version 1.1 TCPWave IPAM and Remote Virtual Server Software Born in the Cloud, Made for the Cloud 1 2017 TCPWave Inc. All Rights Reserved. TCPWave DDI Virtual

More information

Deby - Reproducible and Maintainable Embedded Linux Environment with Poky

Deby - Reproducible and Maintainable Embedded Linux Environment with Poky Deby - Reproducible and Maintainable Embedded Linux Environment with Poky Kazuhiro Hayashi CE Workgroup, The Linux Foundation (TOSHIBA Corporation) Embedded Linux Conference Europe 2016 Oct 12, 2016 About

More information

96Boards Enablement for opensuse

96Boards Enablement for opensuse 96Boards Enablement for opensuse Progress Report and Remaining Issues Andreas Färber Expert Virtualization andreas.faerber@suse.com The Presenter and ARM Background in virtualization software (QEMU) Involved

More information

Building CircuitPython

Building CircuitPython Building CircuitPython Created by Dan Halbert Last updated on 2018-05-18 03:47:12 AM UTC Guide Contents Guide Contents Introduction Linux Setup Install a Real or Virtual Linux Machine Native Linux Linux

More information

Red Hat Development Suite 2.2

Red Hat Development Suite 2.2 Red Hat Development Suite 2.2 Installation Guide Installing Red Hat Development Suite Last Updated: 2018-03-23 Red Hat Development Suite 2.2 Installation Guide Installing Red Hat Development Suite Petra

More information

CS356: Discussion #1 Development Environment. Marco Paolieri

CS356: Discussion #1 Development Environment. Marco Paolieri CS356: Discussion #1 Development Environment Marco Paolieri (paolieri@usc.edu) Contact Information Marco Paolieri PhD at the University of Florence, Italy (2015) Postdoc at USC since 2016 Email: paolieri@usc.edu

More information

Software Revision Control for MASS. Git Installation / Configuration / Use

Software Revision Control for MASS. Git Installation / Configuration / Use Software Revision Control for MASS Git Installation / Configuration / Use Matthew Sell, CSSE Student MASS Research Participant, February 2014 Overview Download / execute installer Initial configuration

More information

Contents in Detail. Acknowledgments

Contents in Detail. Acknowledgments Acknowledgments xix Introduction What s in This Book... xxii What Is Ethical Hacking?... xxiii Penetration Testing... xxiii Military and Espionage... xxiii Why Hackers Use Linux... xxiv Linux Is Open Source....

More information