mgar Producing complex packages for Solaris the easy way OpenCSW Technical Wintercamp Dublin 2011 Dagobert Michelsen
|
|
- Maurice Fleming
- 6 years ago
- Views:
Transcription
1 mgar Producing complex packages for Solaris the easy way OpenCSW Technical Wintercamp Dublin 2011 Dagobert Michelsen 1
2 Once upon a time find /usr/local/pkg -print > /tmp/files cat /tmp/files pkgproto > /tmp/prototype vim /tmp/prototype PKG=FOOtree NAME=tree - A recursive directory listing program ARCH=sparc VERSION=1.5.3,REV= CATEGORY=application VENDOR= =joe@example.com PSTAMP=joe@darkstar CLASSES=none HOTLINE= pkgmk -o -r / -d /tmp -f Prototype pkgtrans. tree.pkg FOOtree gzip tree.pkg 2
3 What is missing? What s wrong? Compilation Packaging standards Checking for errors Hardcoded prototypes Hardcoded pkginfo 3
4 Enter mgar gmake package 4
5 What is mgar? A system to build packages for Solaris Origins are GAR LNX-BBC and GARNOME m = modulated multiple similar builds Files written in GNU Make 5 5
6 The simplest case The minimal information to build a package: 1. What should the package be named 2. Where to get the sources 3. What the dependencies are 6
7 Example: gperf NAME = gperf VERSION = CATEGORIES = devel DESCRIPTION = A perfect hash function generator MASTER_SITES = $(GNU_MIRROR) DISTFILES = $(NAME)-$(VERSION).tar.gz CONFIGURE_ARGS = $(DIRPATHS) TEST_TARGET = check include gar/category.mk 7
8 Categories include gar/category.mk Should be really named 'profiles' Contains settings common to a class of builds Generic Perl Modules Ruby Gems Python Eggs 8
9 Typical customization needs Code needs to be patched to compile or run on Solaris Code doesn t honor information passed via./configure Files need to placed at specific locations in the package 9
10 Phases prerequisites fetch checksum exract patch configure build test install merge package checkpkg...and custom targets: pre-fetch post-fetch pre-extract (...) 10
11 Modulations A Modulation is the process of varying one waveform in relation to another waveform For software builds that means: A Modulation is the process of varying a build in relation to certain parameters 11
12 Phases and modulations Prerequisites Fetch Checksum Extract Patch Configure Build Te s t Install Merge Package One modulation Executed globally Executed inside modulation Executed globally 12
13 What can be used as modulator? ISA for build architecture For 32/64 bit versions and optimized binaries. See lame Package version Useful when multiple versions of a library should be included See automake...anything that controls the build Static vs. dynamic linked versions See wget Parameter size See nrpe Wide vs. narrow characters See ncurses 13
14 Modulation over ISA Allows easy building of multiple ISAs Built-in special case of modulation No merge needed also Simplest case BUILD64 = 1 Advance d EXTRA_BUILD_ISAS = sparcv8plus+vis pentium_pro 14
15 Modulation over ISA requirements Certain ISAs require specific platforms x64 requires Solaris 10, but integrated package for Solaris 8-10 Parallelizing modulation builds May require builds on multiple hosts Build platform for each modulation can be specified in the package manifest How does ISAEXEC relate to multi-isa? 15
16 Modulation over static/dynamic linking Adds modulator with GARNAME = wget this name... EXTRA_MODULATORS = STATIC MODULATIONS_STATIC = disable enable Cool trick: Use dynamically expanded variables to set per-modulation EXTRA_CONFIGURE_STATIC-disable = --with-ssl EXTRA_CONFIGURE_STATIC-enable = --disable-shared EXTRA_CONFIGURE_STATIC-enable += --enable-static EXTRA_CONFIGURE_STATIC-enable += --without-ssl... CONFIGURE_ARGS += $(EXTRA_CONFIGURE_STATIC-$(STATIC)) MERGE_SCRIPTS_isa-sparcv8-static-disable = copy-all MERGE_SCRIPTS_isa-sparcv8-static-enable = rename-wget copy-only MERGE_DIRS_isa-sparcv8-static-enable = $(bindir) MERGE_SCRIPTS_isa-i386-static-disable = copy-all MERGE_SCRIPTS_isa-i386-static-enable = rename-wget copy-only MERGE_DIRS_isa-i386-static-enable = $(bindir) $(DESTDIR)$(bindir)/wget $(DESTDIR)$(bindir)/wget.static... include gar/category.mk 16
17 Modulation over parameter size GARNAME = nrpe... EXTRA_MODULATORS = SIZE MODULATIONS_SIZE = 1k 8k... Ok, I guess you understood how this works PATCHFILES_isa-sparcv8-size-8k = common.h.diff PATCHFILES_isa-i386-size-8k = common.h.diff... MERGE_SCRIPTS_isa-sparcv8-size-1k = copy-all MERGE_SCRIPTS_isa-sparcv8-size-8k = copy-nrpe-only Use patchfiles on a per-modulation basis MERGE_SCRIPTS_isa-i386-size-1k = copy-all MERGE_SCRIPTS_isa-i386-size-8k = copy-nrpe-only include gar/category.mk... merge-copy-nrpe-only: cp $(INSTALLISADIR)$(bindir)/nrpe_1k $(PKGROOT)$(bindir)/nrpe_8k cp $(INSTALLISADIR)$(LIBEXECDIR)/check_nrpe 17
18 Modulations and their names The name of a modulation is <modulator1>-<value1>-<modulator2>-<value2>-... Call each phase from a modulation manually with Example: <phase>-<modulation> gmake build-isa-sparcv8 This results in a sub-make-invocation Example: <phase>-modulated MODULATION=<MODULATION> <MODULATOR1>=<value1>... gmake build-modulated MODULATION=isa-sparcv8 ISA=sparcv8 18
19 Merging Why is this needed? Optimized binaries with isaexec Libraries may be located elsewhere in the package than they were configured /lib/32 ->. /lib/64 -> sparcv9 amd64 Pathes stored in pkgconfig-files 19
20 Merging Why is this needed? 32 and 64 bit need different install locations to have sane pkgconfig-files Install build-isa-sparcv8/opt/csw/bin/myapp build-isa-sparcv9/opt/csw/bin/64/myapp Merge pkgroot/opt/csw/bin/myapp pkgroot/opt/csw/bin/sparcv9/myapp Package /opt/csw/bin/myapp -> isaexec /opt/csw/bin/sparcv8/myapp /opt/csw/bin/sparcv9/myapp 20
21 Merging Builtin rules Copy all Copy only some MERGE_DIRS_<mod> Do not relocate copy-all copy-only Do relocate copy-relocate copy-relocated-only 21
22 Merging with custom rules Only merge specific files GARNAME = nrpe... MERGE_SCRIPTS_isa-sparcv8-size-1k = copy-all MERGE_SCRIPTS_isa-sparcv8-size-8k = copy-nrpe-only MERGE_SCRIPTS_isa-i386-size-1k = copy-all MERGE_SCRIPTS_isa-i386-size-8k = copy-nrpe-only include gar/category.mk... merge-copy-nrpe-only: This is the default build Just copy everything over We want to control exactly what is used from the additional modulation Merging copies from the install location to PKGROOT cp $(INSTALLISADIR)$(bindir)/nrpe_1k $(PKGROOT)$(bindir)/nrpe_8k cp $(INSTALLISADIR)$(LIBEXECDIR)/check_nrpe 22
23 Class Action Scripts They mean more or less 'hooks' f cswinitsmf /opt/csw/etc/init.d/cswpuppetd i.<class> scripts handle the files i.cswinitsmf r.cswinitsmf GAR integration: INITSMF = $(prefix)/init\.d/cswpuppetd Fully automated: Texinfo registration Configuration file preservation Placement of README.CSW in package docs... 23
24 checkpkg and overrides Examines a set of.pkg files Looks for common issues Written mostly in Python, with lintian in mind allows to override checks 24
25 Your package is ready! 25
26 Questions? Bueller? Anybody? 26
A Makefile. The Makefile contains various statements that specify how the application should be compiled and where it should be installed on your
What is a port The Ports Collection is essentially a set of Makefiles, patches, and description files placed in /usr/ports. The port includes instructions on how to build source code, but does not include
More informationPackaging Tools for OpenServer & UnixWare. Ron Record John Wolfe
Packaging Tools for OpenServer & UnixWare Ron Record John Wolfe rr@sco.com jlw@sco.com 1 Why Package? Single software administration tool Ease of installation, update, and removal Support for multiply
More informationDynamically-typed Languages. David Miller
Dynamically-typed Languages David Miller Dynamically-typed Language Everything is a value No type declarations Examples of dynamically-typed languages APL, Io, JavaScript, Lisp, Lua, Objective-C, Perl,
More informationWhen talking about how to launch commands and other things that is to be typed into the terminal, the following syntax is used:
Linux Tutorial How to read the examples When talking about how to launch commands and other things that is to be typed into the terminal, the following syntax is used: $ application file.txt
More informationReproducible 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 informationGNU Source Release Collection
GNU Source Release Collection for version 2014.10.11, 6 January 2014 bug-gsrc@gnu.org This manual is for the GNU Source Release Collection (version 2014.10.11, updated 6 January 2014). Copyright c 2011,
More informationFebruary 2 nd Jean Parpaillon
Using GIT with Kerrighed project Kerrighed Summit '07 February 2 nd 2007 Jean Parpaillon Table of contents Kerrighed SCM Subversion GIT GIT with Kerrighed References 2 Kerrighed
More informationThe WebGUI Runtime Environment. Roy Johnson Plain Black Corporation
The WebGUI Runtime Environment Roy Johnson Plain Black Corporation What is the WRE? All the supporting software required to host WebGUI Apache 2 / Mod_Perl 2 MySQL 5 Supporting Perl Modules AWStats Utilities
More informationfpm-cookery Documentation
fpm-cookery Documentation Release 0.33.0 Bernd Ahlers Jun 10, 2018 Contents 1 Features 3 2 Documentation Contents 5 2.1 Getting Started.............................................. 5 2.2 Using Hiera................................................
More informationThe build2 Toolchain Installation and Upgrade
The build2 Toolchain Installation and Upgrade Copyright 2014-2019 Code Synthesis Ltd Permission is granted to copy, distribute and/or modify this document under the terms of the MIT License This revision
More informationScripting Languages Course 1. Diana Trandabăț
Scripting Languages Course 1 Diana Trandabăț Master in Computational Linguistics - 1 st year 2017-2018 Today s lecture Introduction to scripting languages What is a script? What is a scripting language
More informationThe Package Man Always Builds Twice -- From SysV Packaging To The Image Packaging System
From SysV Packages to the IPS Welcome The Package Man Always Builds Twice -- From SysV Packaging To The Image Packaging System Volker A. Brandt Brandt & Brandt Computer GmbH vab@bb-c.de From SysV Packages
More informationQUESTION 1 Tools used: pdf-parser, pdfid, pdftk, oledump
TOPIC QUESTION Visit the following link and analyze the pdf file along with the doc file without executing them. You will need to find relevant tools and commands for analyzing a doc file https://blog.didierstevens.com/2015/08/28/test-file-pdf-with-embedded-doc-dropping-eicar/
More informationUnix/Linux Operating System. Introduction to Computational Statistics STAT 598G, Fall 2011
Unix/Linux Operating System Introduction to Computational Statistics STAT 598G, Fall 2011 Sergey Kirshner Department of Statistics, Purdue University September 7, 2011 Sergey Kirshner (Purdue University)
More informationUsing CVS to Manage Source RTL
Using CVS to Manage Source RTL 6.375 Tutorial 2 February 1, 2008 In this tutorial you will gain experience using the Concurrent Versions System (CVS) to manage your source RTL. You will be using CVS to
More informationpkgsrc for users and developers
pkgsrc for users and developers Guillaume Lasmayous gls@netbsd.org FOSDEM Brussels, Feb. 5 2012 WTF is pkgsrc? aka package source NetBSD packaging system for 3rd party applications Initially based on FreeBSD
More informationHere s another makefile snippet that works some of the time:
Silent Failure Here s another makefile snippet that works some of the time: clean: @-rm *.o &> /dev/null The @ means that the command isn t echoed. The - means that any error returned is ignored and all
More informationWeek - 04 Lecture - 01 Merge Sort. (Refer Slide Time: 00:02)
Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 04 Lecture - 01 Merge Sort (Refer
More informationWhy OpenEmbedded proved a good foundation for MontaVista. Cedric Hombourger Solutions & Services Architect
Why OpenEmbedded proved a good foundation for MontaVista Cedric Hombourger Solutions & Services Architect Moving away from RPM! Shortly after is 10th birthday, MontaVista unleashed MVL6: a complete revamp!
More informationLIS Linux/Unix Command Line Goodness
LIS-3353 Linux/Unix Command Line Goodness Which is primitive? Why the text interface? Because you can very quickly say/relate complex concepts in a concise way, by combining a series of simple symbols.
More informationPackage Managers. What are they and why we use them
Package Managers What are they and why we use them Thoughts of an admin Installing software is painful Installing a lot of software is extremely painful Installing a lot of software on a lot of machines
More informationRed Hat Enterprise Linux 7 RPM Packaging Guide
Red Hat Enterprise Linux 7 RPM Packaging Guide Basic and Advanced RPM Packaging Maxim Svistunov Red Hat Marie Doleželová Red Hat Adam Miller Red Hat Red Hat Enterprise Linux 7 RPM Packaging Guide Basic
More informationGit. all meaningful operations can be expressed in terms of the rebase command. -Linus Torvalds, 2015
Git all meaningful operations can be expressed in terms of the rebase command -Linus Torvalds, 2015 a talk by alum Ross Schlaikjer for the GNU/Linux Users Group Sound familiar? add commit diff init clone
More informationCommon Configuration Management Tasks: How to Do Them with Subversion
Common Configuration Management Tasks: How to Do Them with Subversion Tom Verhoeff October 2007 Contents 1 The Big Picture 2 2 Subversion Help 2 3 Create New Empty Repository 2 4 Obtain Access to Repository
More informationCSE 303 Lecture 2. Introduction to bash shell. read Linux Pocket Guide pp , 58-59, 60, 65-70, 71-72, 77-80
CSE 303 Lecture 2 Introduction to bash shell read Linux Pocket Guide pp. 37-46, 58-59, 60, 65-70, 71-72, 77-80 slides created by Marty Stepp http://www.cs.washington.edu/303/ 1 Unix file system structure
More informationChapter-3. Introduction to Unix: Fundamental Commands
Chapter-3 Introduction to Unix: Fundamental Commands What You Will Learn The fundamental commands of the Unix operating system. Everything told for Unix here is applicable to the Linux operating system
More informationpkgsrc on SmartOS Jonathan Perkin Software Engineer Saturday, 23 March 13
pkgsrc on SmartOS Jonathan Perkin Software Engineer Joyent @jperkin jperkin@joyent.com jperkin@pkgsrc.org Agenda Introduction History and background to SmartOS pkgsrc usage in SmartOS pkgsrc features we
More informationUnix/Linux Basics. Cpt S 223, Fall 2007 Copyright: Washington State University
Unix/Linux Basics 1 Some basics to remember Everything is case sensitive Eg., you can have two different files of the same name but different case in the same folder Console-driven (same as terminal )
More informationAkamai Connector for Varnish Installation Guide
Akamai Connector for Varnish Installation Guide Table of Contents 1 Introduction 3 2 Installation 4 2.1 Overview 4 2.2 Varnish Plus Installation 4 2.2.1 Ubuntu Installation 4 2.2.2 Redhat Enterprise Linux
More informationIntroduction to Unix: Fundamental Commands
Introduction to Unix: Fundamental Commands Ricky Patterson UVA Library Based on slides from Turgut Yilmaz Istanbul Teknik University 1 What We Will Learn The fundamental commands of the Unix operating
More informationIntroduction of Linux
Introduction of Linux 阳 oslab2018_class1@163.com 寅 oslab2018_class2@163.com PART I Brief Introduction Basic Conceptions & Environment Install & Configure a Virtual Machine Basic Commands PART II Shell
More informationINTRODUCTION TO LINUX
INTRODUCTION TO LINUX REALLY SHORT HISTORY Before GNU/Linux there were DOS, MAC and UNIX. All systems were proprietary. The GNU project started in the early 80s by Richard Stallman Goal to make a free
More informationIntroduction to Computing Systems - Scientific Computing's Perspective. Le Yan LSU
Introduction to Computing Systems - Scientific Computing's Perspective Le Yan HPC @ LSU 5/28/2017 LONI Scientific Computing Boot Camp 2018 Why We Are Here For researchers, understand how your instrument
More informationCS354 gdb Tutorial Written by Chris Feilbach
CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that
More informationComputer Programming II Python
EXAM INFORMATION Items 32 Points 33 Prerequisites SECONDARY MATH I COMPUTER PROGRAMMING I Grade Level 10-12 Course Length ONE YEAR DESCRIPTION This is an advanced course in computer programming/software
More informationUnix File System. Class Meeting 2. * Notes adapted by Joy Mukherjee from previous work by other members of the CS faculty at Virginia Tech
Unix File System Class Meeting 2 * Notes adapted by Joy Mukherjee from previous work by other members of the CS faculty at Virginia Tech Unix File System The file system is your interface to: physical
More informationUnix - Basics Course on Unix and Genomic Data Prague, January 2017
Unix - Basics Course on Unix and Genomic Data Prague, January 2017 Libor Mořkovský, Václav Janoušek, Anastassiya Zidkova, Anna Přistoupilová, Filip Sedlák http://ngs-course.readthedocs.org/en/praha-january-2017/
More informationComputer Center, CS, NCTU. Outline. FreeBSD version 9.0-RELEASE 9.1-RC1. Installing FreeBSD. From CD-ROM From USB
FreeBSD huanghs Outline FreeBSD version 9.0-RELEASE 9.1-RC1 Installing FreeBSD From CD-ROM From USB 2 FreeBSD Version 4 FreeBSD Branches/Tags Three parallel development branches: -RELEASE Latest Release
More informationC++ Lab 07 - Introduction to C++ Build Systems
C++ Lab 07 - Introduction to C++ Build Systems 2.680 Unmanned Marine Vehicle Autonomy, Sensing and Communications Spring 2015 Michael Benjamin, mikerb@mit.edu Department of Mechanical Engineering Computer
More informationGanglia is monitring system for high performance computing systems. We have two node potter.isb.ots.com and harry.isb.ots.com both are HPC nodes.
Date : 13-Oct-2009 Ganglia installation Howto By Syed Asim Abbas For comments and suggestions : asimabbas31 at gmail dot com ------------------------------------------------------ Ganglia is monitring
More informationThe vc bundle. June 11, 2018
The vc bundle Roland Hieber Stephan Hennig June 11, 2018 Abstract This is a script based approach to version control for TEX documents. It works more reliably than keyword substitution based approaches,
More informationIntro to Linux & Command Line
Intro to Linux & Command Line Based on slides from CSE 391 Edited by Andrew Hu slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/391/ 1 Lecture summary
More informationProgramming Assignment III
Programming Assignment III First Due Date: (Grammar) See online schedule (submission dated midnight). Second Due Date: (Complete) See online schedule (submission dated midnight). Purpose: This project
More informationOverview. What are community packages? Who installs what? How to compile and install? Setup at FSU RCC. Using RPMs vs regular install
Overview What are community packages? Who installs what? How to compile and install? Setup at FSU RCC Dependency hell Where to install? Using RPMs vs regular install Getting RPMs How to build an RPM Automated
More informationGentoo Ebuilds 101. Arun Raghavan. Foss.in November 30, 2005
Gentoo Ebuilds 101 Arun Raghavan Foss.in November 30, 2005 Abstract A basic introduction to Gentoo Linux ebuild scripts, what they contain, how they work, and most importantly how to write one. Overview
More informationThe role of semantic analysis in a compiler
Semantic Analysis Outline The role of semantic analysis in a compiler A laundry list of tasks Scope Static vs. Dynamic scoping Implementation: symbol tables Types Static analyses that detect type errors
More information2 Installing the Software
INSTALLING 19 2 Installing the Software 2.1 Installation Remember the hour or two of slogging through software installation I promised (or warned) you about in the introduction? Well, it s here. Unless
More informationLinux & Shell Programming 2014
Unit -1: Introduction to UNIX/LINUX Operating System Practical Practice Questions: Find errors (if any) otherwise write output or interpretation of following commands. (Consider default shell is bash shell.)
More informationIntroductory OpenFOAM Course From 2 nd to 6 th July, Joel Guerrero University of Genoa, DICAT
Introductory OpenFOAM Course From 2 nd to 6 th July, 2012 Joel Guerrero University of Genoa, DICAT Dipartimento di Ingegneria delle Costruzioni, dell'ambiente e del Territorio Your Lecturer Joel GUERRERO
More informationCross-compilation with Buildroot
Instituto Superior de Engenharia do Porto Mestrado em Engenharia Eletrotécnica e de Computadores Arquitetura de Computadores Cross-compilation with Buildroot Introduction Buildroot is a tool that can be
More informationWhat about branches? Branch outcomes are not known until EXE What are our options?
What about branches? Branch outcomes are not known until EXE What are our options? 1 Control Hazards 2 Today Quiz Control Hazards Midterm review Return your papers 3 Key Points: Control Hazards Control
More informationThe Command Line. Matthew Bender. September 10, CMSC Command Line Workshop. Matthew Bender (2015) The Command Line September 10, / 25
The Command Line Matthew Bender CMSC Command Line Workshop September 10, 2015 Matthew Bender (2015) The Command Line September 10, 2015 1 / 25 Introduction Section 1 Introduction Matthew Bender (2015)
More informationIntroduction to Programming in C Department of Computer Science and Engineering. Lecture No. #03 The Programming Cycle
Introduction to Programming in C Department of Computer Science and Engineering Lecture No. #03 The Programming Cycle (Refer Slide Time: 00:22) Once we are understood what algorithms are, we will start
More information143a, Spring 2018 Discussion Week 4 Programming Assignment. Jia Chen 27 Apr 2018
143a, Spring 2018 Discussion Week 4 Programming Assignment Jia Chen 27 Apr 2018 Annoucements HW2 posted due Friday, May 4, 2018, 11:55 PM Programming Assignment posted due Friday, Jun 1, 2018, 11:55 PM
More informationRed Hat Enterprise Linux 7
Red Hat Enterprise Linux 7 RPM Packaging Guide Basic and Advanced RPM Packaging Last Updated: 2018-07-19 Red Hat Enterprise Linux 7 RPM Packaging Guide Basic and Advanced RPM Packaging Adam Kvítek Red
More informationInstalling Applications in FreeBSD. wengyc
Installing Applications in FreeBSD wengyc Before we start Permission issue root: the superuser In Unix-like system, root is the conventional name of the user who has all rights or permissions (to all files
More informationSemantic Analysis. Outline. The role of semantic analysis in a compiler. Scope. Types. Where we are. The Compiler Front-End
Outline Semantic Analysis The role of semantic analysis in a compiler A laundry list of tasks Scope Static vs. Dynamic scoping Implementation: symbol tables Types Static analyses that detect type errors
More informationFREEENGINEER.ORG. 1 of 6 11/5/15 8:31 PM. Learn UNIX in 10 minutes. Version 1.3. Preface
FREEENGINEER.ORG Learn UNIX in 10 minutes. Version 1.3 Preface This is something that I had given out to students (CAD user training) in years past. The purpose was to have on one page the basics commands
More informationIntroduction to Linux. Roman Cheplyaka
Introduction to Linux Roman Cheplyaka Generic commands, files, directories What am I running? ngsuser@ubuntu:~$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu
More informationUnderstanding Modelpedia Authorization
With Holocentric Modeler and Modelpedia Understanding Modelpedia Authorization V1.0/HUG003 Table of Contents 1 Purpose 3 2 Introduction 4 3 Roles 4 3.1 System Authority Roles... 5 3.2 Role Inclusion...
More informationCompiling Software on UNIX. System Administration Decal Spring 2009 Lecture #4 George Wu Slides prepared by Joshua Kwan
Compiling Software on UNIX System Administration Decal Spring 2009 Lecture #4 George Wu Slides prepared by Joshua Kwan Today How to turn source code into programs that run on Linux? What if that software
More informationAdvanced Linux Commands & Shell Scripting
Advanced Linux Commands & Shell Scripting Advanced Genomics & Bioinformatics Workshop James Oguya Nairobi, Kenya August, 2016 Man pages Most Linux commands are shipped with their reference manuals To view
More informationVersion Control. 1 Version Control Systems. Ken Bloom. Linux User Group of Davis March 1, 2005
Version Control Ken Bloom Linux User Group of Davis March 1, 2005 You ve probably heard of version control systems like CVS being used to develop software. Real briefly, a version control system is generally
More informationComputer Architecture Lab 1 (Starting with Linux)
Computer Architecture Lab 1 (Starting with Linux) Linux is a computer operating system. An operating system consists of the software that manages your computer and lets you run applications on it. The
More informationESC/Java2 Use and Features David Cok, Joe Kiniry, Erik Poll Eastman Kodak Company, University College Dublin, and Radboud University Nijmegen
ESC/Java2 Use and Features David Cok, Joe Kiniry, Erik Poll Eastman Kodak Company, University College Dublin, and Radboud University Nijmegen David Cok, Joe Kiniry & Erik Poll - ESC/Java2 & JML Tutorial
More informationNew Contributor Tutorial and Best Practices
New Contributor Tutorial and Best Practices Vicențiu Ciorbaru Software Engineer @ MariaDB Foundation * 2018 MariaDB Foundation * Goal of this session Most attendees here are highly experienced devs Let's
More informationComputer Basics 1/24/13. Computer Organization. Computer systems consist of hardware and software.
Hardware and Software Computer Basics TOPICS Computer Organization Data Representation Program Execution Computer Languages Computer systems consist of hardware and software. Hardware includes the tangible
More information416 Distributed Systems. Errors and Failures, part 2 Feb 3, 2016
416 Distributed Systems Errors and Failures, part 2 Feb 3, 2016 Options in dealing with failure 1. Silently return the wrong answer. 2. Detect failure. 3. Correct / mask the failure 2 Block error detection/correction
More informationIntro to Linux. this will open up a new terminal window for you is super convenient on the computers in the lab
Basic Terminal Intro to Linux ssh short for s ecure sh ell usage: ssh [host]@[computer].[otheripstuff] for lab computers: ssh [CSID]@[comp].cs.utexas.edu can get a list of active computers from the UTCS
More informationCreating a Patch. Created by Carl Heymann on 2010 Sep 14 1
Created by on 2010 Sep 14 1 1. Starting a Patch To create a patch, and get it through the review process and into a main branch of a project, you can follow the following steps: Clone the project if you
More informationMigration Howto. Table Of Contents
Migration Howto Migration Howto I Table Of Contents Migration from Cobalt RaQ2 /RaQ3 Servers to 42goISP Servers...1 Prerequisites...1 Proceeding...1 General...1 RaQ...1 42go ISP Manager Server...2 Disclaimer...5
More informationCEU s (Continuing Education Units) 12 Hours (i.e. Mon Thurs 5 9PM or Sat Sun 8AM 5PM)
Course Name: Intro to Ruby Course Number: WITP 312 Credits: Classroom Hours: 1.2 CEU s (Continuing Education Units) 12 Hours (i.e. Mon Thurs 5 9PM or Sat Sun 8AM 5PM) Flex Training - Classroom and On-Line
More informationTool installation for PMC-MC-X2/X4 with P2020 series processor
DYNAMIC ENGINEERING 150 DuBois, Suite C Santa Cruz, CA 95060 (831) 457-8891 Fax (831) 457-4793 http://www.dyneng.com sales@dyneng.com Est. 1988 Tool installation for PMC-MC-X2/X4 with P2020 series processor
More informationLightweight virtualization with GoboLinux Runner
Lightweight virtualization with GoboLinux Runner Lucas C. Villa Real IBM Research - Brazil lucasvr@gobolinux.org About GoboLinux Alternative distribution born in 2002 Explores novel ideas in the Linux
More information9.2 Linux Essentials Exam Objectives
9.2 Linux Essentials Exam Objectives This chapter will cover the topics for the following Linux Essentials exam objectives: Topic 3: The Power of the Command Line (weight: 10) 3.3: Turning Commands into
More informationLinux Software Installation Exercises 2 Part 1. Install PYTHON software with PIP
Linux Software Installation Exercises 2 Part 1. Install PYTHON software with PIP 1.1 Login to the BioHPC machine and install deeptools; Login (ssh) to the machine that you are assigned for this workshop
More informationSimulating Multi-Core RISC-V Systems in gem5
Simulating Multi-Core RISC-V Systems in gem5 Tuan Ta, Lin Cheng, and Christopher Batten School of Electrical and Computer Engineering Cornell University 2nd Workshop on Computer Architecture Research with
More informationLinux Bootcamp Fall 2015
Linux Bootcamp Fall 2015 UWB CSS Based on: http://swcarpentry.github.io/shell-novice "Software Carpentry" and the Software Carpentry logo are registered trademarks of NumFOCUS. What this bootcamp is: A
More informationDalton/LSDalton Installation Guide
Dalton/LSDalton Installation Guide Release 2016.0 Dalton/LSDalton developers October 13, 2016 Contents 1 Supported platforms and compilers 1 2 Basic installation 3 2.1 General..................................................
More informationThese instructions cover how to install and use pre-compiled binaries to monitor AIX 5.3 using NRPE.
Purpose This document describes how to monitor AIX servers using or Nagios Core. The instructions were contributed by Joshua Whitaker, who successfully configured to monitor AIX 5.3 servers, thanks Joshua!
More informationGrasshopper always wrong in argument with Chicken. - Book of Chan
Grasshopper always wrong in argument with Chicken. - Book of Chan Functional Fuzzing with Funk and further explorations into the use of functional languages for network scripting Benjamin Kurtz Q:WTF?
More informationGraphics Performance Benchmarking Framework ATI. Presented to: Jerry Howard. By: Drew Roberts, Nicholas Tower, Jason Underhill
Graphics Performance Benchmarking Framework ATI Presented to: Jerry Howard By: Drew Roberts, Nicholas Tower, Jason Underhill Executive Summary The goal of this project was to create a graphical benchmarking
More informationDeath to whois An exploratory look at RDAP. MATT GRISWOLD
Death to whois An exploratory look at RDAP MATT GRISWOLD INTRODUCTION While writing code for PeeringDB, I did extensive work querying and comparing RDAP results across the RIRs and was
More informationCS 216 Fall 2007 Final Exam Page 1 of 10 Name: ID:
Page 1 of 10 Name: Email ID: You MUST write your name and e-mail ID on EACH page and bubble in your userid at the bottom of EACH page including this page. If you do not do this, you will receive a zero
More informationWorking with Basic Linux. Daniel Balagué
Working with Basic Linux Daniel Balagué How Linux Works? Everything in Linux is either a file or a process. A process is an executing program identified with a PID number. It runs in short or long duration
More informationUsing Git For Development. Shantanu Pavgi, UAB IT Research Computing
Using Git For Development Shantanu Pavgi, pavgi@uab.edu UAB IT Research Computing Outline Version control system Git Branching and Merging Workflows Advantages Version Control System (VCS) Recording changes
More informationUpgrading Your Geant4 Release
Upgrading Your Geant4 Release Joseph Perl, SLAC 1 Contents Major versus Minor releases What to look for in the release notes How to upgrade 2 Major versus Minor Releases Geant4 release numbers are of the
More information12: Memory Management
12: Memory Management Mark Handley Address Binding Program goes through multiple steps from compilation to execution. At some stage, addresses in the program must be bound to physical memory addresses:
More informationUnix Processes. What is a Process?
Unix Processes Process -- program in execution shell spawns a process for each command and terminates it when the command completes Many processes all multiplexed to a single processor (or a small number
More informationmanifold Documentation
manifold Documentation Release 0.0.1 Open Source Robotics Foundation Mar 04, 2017 Contents 1 What is Manifold? 3 2 Installation 5 2.1 Ubuntu Linux............................................... 5 2.2
More informationIPS for OpenIndiana and Solaris 11. Chris Ridd
IPS for OpenIndiana and Solaris 11 Chris Ridd Background to IPS IPS is the Image Packaging System developed in OpenSolaris Currently used by two Solarish distributions - OpenIndiana and Oracle Solaris
More informationCSE 333 Lecture 1 - Systems programming
CSE 333 Lecture 1 - Systems programming Hal Perkins Department of Computer Science & Engineering University of Washington Welcome! Today s goals: - introductions - big picture - course syllabus - setting
More informationPerformance analysis, development and improvement of programs, commands and BASH scripts in GNU/Linux systems
Performance analysis, development and improvement of programs, commands and BASH scripts in GNU/Linux systems Erion ÇANO Prof. Dr Betim ÇIÇO 11 TH W O R K S H O P S O F T W A R E E N G I N E E R I N G
More informationMetasploit. Installation Guide Release 4.4
Metasploit Installation Guide Release 4.4 TABLE OF CONTENTS About this Guide Target Audience...1 Organization...1 Document Conventions...1 Support...2 Support for Metasploit Pro and Metasploit Express...2
More informationIntroduction to Linux. Woo-Yeong Jeong Computer Systems Laboratory Sungkyunkwan University
Introduction to Linux Woo-Yeong Jeong (wooyeong@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating system of a computer What is an
More informationChapter 1 - Introduction. September 8, 2016
Chapter 1 - Introduction September 8, 2016 Introduction Overview of Linux/Unix Shells Commands: built-in, aliases, program invocations, alternation and iteration Finding more information: man, info Help
More informationClass 1 Introduction to Selenium, Software Test Life Cycle.
Class 1 Introduction to Selenium, Software Test Life Cycle. I) Introduction to Selenium 1) What is Selenium? 2) History of the Selenium Project 3) Selenium Components / Selenium s Tool Suite 4) Platforms
More informationAutoconf Tutorial. Mark Galassi
Autoconf Tutorial Mark Galassi Copyright c 1996 Mark Galassi Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved
More informationIntroduction 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 informationComputer Programming II C++ (830)
DESCRIPTION This is an advanced course in computer programming/software engineering and applications. It reviews and builds on the concepts introduced in CP I. It introduces students to dynamic data structures,
More information