1 Introduction to PiSi (Pardus Package Manager) Görkem Çetin TÜBİTAK/UEKAE

Slides:



Advertisements
Similar presentations
Computer Software 3 Section A Software Basics CHAPTER PARSONS/OJA
Advertisements

1. What is Subversion? Why do we need CM? Basic concepts Repositories Options Setup Clients Options Setup Operation Troubleshooting Slide 2.
om om GIT - Tips & Tricks / git.dvcs git-tips.com
18 June 2010 Upgrading Your Geant4 Release J. Perl 1 Upgrading Your Geant4 Release Joseph Perl, SLAC.
6 November 2009 Upgrading Your Geant4 Release J. Perl 1 Upgrading Your Geant4 Release Joseph Perl, SLAC Geant4 v9.2p02.
Software installation Chapter 7. Software installation Numerous software options Usually free Open source Several sources Installation CD Websites sourceforge.net.
PowerPoint 2002 Linking Video in Presentation and Delivering Presentation on the Road.
14 January 2011 Upgrading Your Geant4 Release J. Perl 1 Upgrading Your Geant4 Release Joseph Perl, SLAC.
DB Audit Expert v1.1 for Oracle Copyright © SoftTree Technologies, Inc. This presentation is for DB Audit Expert for Oracle version 1.1 which.
Use my floppy disk. 1. copy short cut to desktop. 2.run NoAdHOSTS.exe 3. Surf without ad’s. 4.to reverse everything -edit out all url s you want to return.
Downloading & Installing Software Chapter 13. Maintaining the System Yum Pirut BitTiorrent Rpm Keeping Software Up To Date Up2date Red Hat Network Wget.
Managing Software using RPM. ♦ Overview In Linux, Red Hat Package Manager referred as RPM is a tool used for managing software packages and its main function.
Linux Operations and Administration
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
SUSE Linux Enterprise Server Administration (Course 3037) Chapter 4 Manage Software for SUSE Linux Enterprise Server.
علیرضا فراهانی استاد درس: جعفری نژاد مهر Version Control ▪Version control is a system that records changes to a file or set of files over time so.
Trilinos 101: Getting Started with Trilinos November 7, :30-9:30 a.m. Mike Heroux Jim Willenbring.
DELOVODNIK PRO A short presentation. Standard mail record keeping Most companies these days receive and send a lot of paper mail. Too many of them keep.
LiveCycle Data Services Introduction Part 2. Part 2? This is the second in our series on LiveCycle Data Services. If you missed our first presentation,
Installing Windows Vista Lesson 2. Skills Matrix Technology SkillObjective DomainObjective # Performing a Clean Installation Set up Windows Vista as the.
Marcel Casado NCAR/RAP WEATHER WARNING TOOL NCAR.
Updating FireRMS Presented by Dan Cook Implementation Team Lead ZOLL.
DEV325 Deploying Visual Studio.NET Applications Billy Hollis Author / Consultant.
A Practical Guide to Fedora and Red Hat Enterprise Linux Unit 8: Installing Software in Linux Chapter 13: Downloading and Installing Software By Fred R.
SUSE Linux Enterprise Desktop Administration Chapter 6 Manage Software.
Progress with migration to SVN Part3: How to work with g4svn and geant4tags tools. Geant4.
1Offline Weekly Meeting May May 2006 AliRoot Build Integration and (Testing) System Peter Hristov Vagner Morais.
AIP Backup & Restore Sunita Barve NCRA, Pune. AIP The latest version of DSpace 1.7.0, supports backup and restore of all its contents as a set of AIP.
1 / 22 AliRoot and AliEn Build Integration and Testing System.
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.
Prepared by: Steve Teo Contributors: Tong Huu Khiem.
Anand Maheshwari Product Highlights GA iWay Data Quality Portal 1.
Yannick Patois - Datagrid Software Repository Presentation - March, n° 1 Datagrid Software Repository Presentation CVS, packages and automatic.
Sys Admin Course Package Management Fourie Joubert.
Software in the Data Protector Architecture
Hyperion Artifact Life Cycle Management Agenda  Overview  Demo  Tips & Tricks  Takeaways  Queries.
RedHat Package Management RPM and YUM in RedHat Enterprise, Fedora, Suse and Centos.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
How to configure, build and install Trilinos November 2, :30-9:30 a.m. Jim Willenbring.
System Requirements  Supports 32 bit i586 and 64 bit x86-64 PC hardware.  PowerPC(PPC) processors.  RAM: 256 MB minimum, 512 MB recommended.  Hard.
ITMT 1371 – Window 7 Configuration 1 ITMT Windows 7 Configuration Chapter 8 – Managing and Monitoring Windows 7 Performance.
CACI Proprietary Information | Date 1 Upgrading to webMethods Product Suite Name: Semarria Rosemond Title: Systems Analyst, Lead Date: December 8,
The main purpose of my program is computer cleaning. You can make your computer work faster (sometimes up to 40%). Many programs have very big requirements.
Building programs LinuxChix-KE. What happens in your CPU? ● It executes a small set of instructions called "machine code" ● Each instruction is just a.
1 April 2, Software Packaging and Releasing Best Practices William Cohen NCSU CSC 591W April 2, 2008.
Installing and Learning Software
Installation of the ALICE Software
Installation of MySQL Objectives Contents Practical Summary
Installing and Learning Software
What are they? The Package Repository Client is a set of Tcl scripts that are capable of locating, downloading, and installing packages for both Tcl and.
Using the AASHTO Materials Library
Using E-Business Suite Attachments
Work report Xianghu Zhao Nov 11, 2014.
Upgrade SFX V3 to V4 Lieve Rottiers.
PRACE-EGI helpdesk integration
DHCP server & Client Objectives Contents
Software Testing With Testopia
Ubuntu Working in Terminal
How to Upgrade Your Geant4 Release
Software basics on the Internet
Lecture 13 RPM and its advantages.
DDPS in Action: Session 11 Hydration
More Scripting & Chapter 11
RedHat Package Management
University of Texas Rio Grande Valley Systems Administration CSCI 6175
IS3440 Linux Security Unit 7 Securing the Linux Kernel
OPS235 PACKAGE MANAGEMENT
Discussing an OVS/OVN Split
David Cleverly – Development Lead
Presentation transcript:

1 Introduction to PiSi (Pardus Package Manager) Görkem Çetin TÜBİTAK/UEKAE

2 Agenda ● What is PiSi? ● The command line ● Basic commands with examples ● Other infrequent commands ● Tips & tricks ● Questions?

3 Main features of PiSi ● PiSi: A new package approach and model for Pardus Linux. ● PiSi: Packages installed successfully as intended ● Developed in TUBITAK/UEKAE Pardus Labs ● Fully written in Python ● Uses Berkeley DB as a backend ● Fast and efficient ● Includes a CLI and a GUI ● Source package specifications are defined in XML files, and source building instructions are given in small python scripts

4 Other features ● Dependencies are calculated with fast algorithms ● Each package has a component and a category ● Packages benefit from LZMA compression ● Can be run over http/ftp transparently ● Full localization support (for English, Turkish, Dutch) ● No need for distinct commands for repository and the dependencies (i.e urpmi and rpm)

5 Components and categories ● Component: A sub-system of Pardus packages (system.base, desktop.kde, etc) Makes it easy to install a group of packages which is used for a particular purpose ● Category: Type of the package itself (i.e app:gui, app:cli, library, daemon) Shows the package type ● Each package has a component and could have several categories

6 Command parameters at a glance ● Basic package commands: upgrade, update, remove, install ● Searching commands: search, search-file, list- available, list-components, list-installed, list-pending, list-repo, list-upgrades, graph,... ● Repository commands: add-repo, remove-repo, update-repo, list-repo,... ● Building commands: build ● There are more commands than listed here (more than 25)

7 Command parameters at a glance ● PiSi takes at least one command and optionally a parameter, i.e pisi help pisi install kdesdk pisi pisi search firefox ● Many PiSi commands have their short forms it for install up for upgrade rm for remove

8 Installing a package with PiSi ● PiSi can install a package transparently from hard disk, on a web page or ftp site. ● While installing, dependencies of the corresponding package is resolved and necessary actions are taken. ● Installing KDE educational package from Pardus repository pisi install kdeedu ● Installing KDE games package from a web page pisi it

9 Updating a package ● A package can be updated on demand using PiSi commands ● Old package is deleted, new one is installed ● If configuration files of the package (if there are any) are modified by user, new configuration file is installed side by side. Otherwise they are upgraded too.

10 Updating a package ● Updating a package (from repository) pisi upgrade firefox ● Updating a category pisi upgrade desktop.kde ● Updating a package (as a file) pisi upgrade postfix pisi

11 Removing a package ● If a package (B) is dependent on another (A), then removing B will also remove A. ● Removing a package with rm (--remove) option pisi remove firefox ● Don't really remove, just see what will happen with -n (--dry-run) pisi remove firefox -n ● Remove a package ignoring the dependency with -- ignore-dependency (this may break other packages which are dependent to this package, so be careful!) pisi remove mysql-client --ignore-dependency

12 Getting package information ● A package information consists of a version information, summary, a description, component and category data. Version and release are numbers pointing to the current information of the corresponding package (i.e version release 1) Summary gives a very short summary of the package Description is used to give more information for the impatient ● “info” command is used to get information from a specific package

13 Getting package information

14 Upgrading the whole system ● Applying all the updates available at a time is very easy with PiSi pisi upgrade ● This command will ask which packages need to be updated and the size of the downloaded packages ● All packages are downloaded and cached for future use to /var/cache/pisi/packages

15 Tricks while upgrading ● Get a list of which packages need an upgrade, without downloading them with -n (--dry-run) option pisi upgrade –n ● Only download the upgraded packages, but do not install them with -f (--fetch-only) pisi upgrade -f ● Do not upgrade a specific package or a list of packages with -x (--exclude) pisi upgrade -x openoffice pisi upgrade -x desktop.kde

16 Repository commands ● PiSi uses a repository to download and install the packages ● Adding or removing a repository is possible ● The current repositories can be listed with list- repo command: pisi list-repo pardus playground Name of the repositoryAddress of the repository

17 Repository commands (2) ● A repository can be added in order to download more packages ● A repository is added with add-repo command ● This command takes two arguments: the name and the address of the repository pisi add-repo 3rdparty htp://reponame/dir/pisi-index.xml.bz2 Repo 3rdparty added to system. Update PiSi database for repository 3rdparty? (yes/no)

18 Repository commands (3) ● A repository can be removed from the repository list. ● A repository is removed with remove-repo command ● This command takes one argument: the name of the repository pisi remove-repo 3rdparty

19 Searching for files in the system ● The Pardus repository keeps a track of file list each package contains. ● This database knows which file a particular package contains ● In the database, a SHA1SUM of each file is also recorded. This sum is helpful when checking if a file is modified or not. ● The file database of the system is fully searchable.

20 Searching for files in the system ● Show the list of files and their sizes in a specific package with -f (--files) pisi search -f kdebase ● Show the file path only with -F (--files-path) pisi search -F whois ● Only show the package information with -l (--long) pisi search -l openoffice

21 Listing the packages ● All packages, whether they are installed or in the repository can be listed ● List all packages in the current repository/ies with la (--list-available) pisi la ● List components with lc (--list-components) pisi lc ● List all installed packages with li (--list- installed) pisi li ● List all packages to be upgraded with lu (--list- upgrades) pisi lu

22 Building a package ● A user can build a package from its own specification file, pspec.xml ● Building a package is done with build command given to pisi ● The pspec.xml file can be retrieved from internet, or it can reside on a local disk. ● After a successful build, the package resides in the current working directory ● If the build requires other packages to be downloaded, the user is informed on this matter

23 What happens during a build? ● A build consists of the following steps: 1. Fetch (download the source archive) 2. Unpack (unpack source and apply patches) 3. Setup (configure the package) 4. Build (compile the package) 5. Install (install the package) ● PiSi build system can apply any of these steps to a source file ● For example, a package source can only be fetched, or fetched+unpacked, or fetched+unpacked+setup or totally built and installed on the system.

24 Package build examples ● Only fetch a source file pisi build --fetch pspec.xml ● Fetch+unpack the source pisi build --unpack pspec.xml ● Fetch+unpack+setup the source pisi build --setup pspec.xml ● Fetch+unpack+setup+build the source pisi build --build pspec.xml ● Generate the package pisi build --package pspec.xml ● Build the source and install it pisi build --install pspec.xml

25 Checking all installed packages ● PiSi can check all files in a package for consistency, and report if a problem exists pisi check Checking all installed packages * Checking 3cp OK * Checking 855resolution... OK * Checking DirectFB... OK * Checking FusionSound... OK * Checking IO-Socket-SSL... OK * Checking Net-SSLeay... OK * Checking PolicyKit... OK

26 Rebuilding the PiSi database ● PiSi can rebuild the files database from scratch if the file database needs to be updated. pisi rebuild-db Rebuild PiSi databases? (yes/no) yes * Adding 'PyKDEeXtensions' to db... OK. * Adding 'libsynaptics' to db... OK. * Adding 'cdparanoia' to db... OK. * Adding 'pth' to db... OK. * Adding 'iputils' to db... OK. * Adding 'rt2400' to db... OK.

27 Cleaning up the PiSi cache ● All packages to be upgraded is saved in a cache directory on the disk for future use ● This directory can be cleaned with dc (-- delete-cache) command. ● Example: pisi dc

28 QUESTIONS?