Meego Wiki
Views

Create and update repos

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
(Use Repo to update your system =)
(Use Repo to update your system)
Line 64: Line 64:
Once your repo is installed correctly in MeeGo, next work would be update packages from repo. There're several way you can follow.
Once your repo is installed correctly in MeeGo, next work would be update packages from repo. There're several way you can follow.
-
# Package Manager UI (gnome-packagekit, ect.)
+
===Package Manager UI (gnome-packagekit, ect.)===
If your repo is official update repo, you can use this method to update patches, but for package update, you'd better use command line tool, such as pkcon or zypper.
If your repo is official update repo, you can use this method to update patches, but for package update, you'd better use command line tool, such as pkcon or zypper.
-
# PackageKit command line toole (pkcon)
+
=== PackageKit command line toole (pkcon)===
-
# zypper
+
 
 +
pkcon get-updates # list the avaliable updates
 +
pkcon update [package name or patch name]
 +
=== zypper ===
 +
zypper list-patches, lp # List needed patches.
 +
zypper list-updates, lu # List available updates.
 +
zypper update, up        # Update installed packages with newer versions

Revision as of 10:13, 1 July 2011

This page describes the basic steps to create and update a Zypper repo that can be used with MeeGo systems.

Contents

Why and when should I create a new repo?

Requirements

A useful repo should reside on a web server that your MeeGo client machines can access. The only requirement on the host server is that it runs an HTTP service and can share a directory. Either Linux or Windows IIS are fine. If you are using Windows as a web server, you do need another Linux machine to create and maintain the repo.

Create a repo

General repository creation

Update repository creation

You need to write additional updateinfo for your updaterepo. Example can be got from

Add a repo to MeeGo

Package Management subsystem responsible for repo management.

Add repo from remote repo file

OBS always create a repo for each OBS project, for example project 'Trunk' have a repo http://download.meego.com/live/Trunk/standard/. and there's also a repo file named Trunk.repo. zypper can help to add the repo to meego system, commands as follows:

 zypper addrepo http://download.meego.com/live/Trunk/standard/Trunk.repo

Add repo from base url

If the repo file does not exist, and we just know the repo base url (eg: http://download.meego.com/live/Trunk/standard/), pkcon command can help to add this repo, commands as follows:

 #zypper addrepo -t rpm-md http://download.meego.com/live/Trunk/standard/ Trunk
 #cat /etc/zypp/repos.d/Trunk.repo 
 [Trunk]
 name=Trunk
 enabled=1
 autorefresh=0
 baseurl=http://download.meego.com/live/Trunk/standard
 type=rpm-md
 keeppackages=0 
 #zypper addrepo --help //More infomation about adding repo

Add new packages to an old repo

Local Repository in MeeGo

Local repo is useful, and it does not depend on http server, and can be used to update/install packages with complicate dependency.

How to Create a local repo

You need to install createrepo first, and then prepare the RPMs you want to put them to repo:

 cp XX/YY/*.rpm .
 createrepo .

How to use local repo in MeeGo =

 #zypper addrepo -t plaindir file:///root/repo/ local
 #cat /etc/zypp/repos.d/local.repo
 [local]
 name=local
 enabled=1
 autorefresh=0
 baseurl=file:///root/repo/
 type=plaindir 
 keeppackages=0 

If you want to list the package in your local repo, the follow command can helo you.

   #zypper search --repo local

Use Repo to update your system

Once your repo is installed correctly in MeeGo, next work would be update packages from repo. There're several way you can follow.

Package Manager UI (gnome-packagekit, ect.)

If your repo is official update repo, you can use this method to update patches, but for package update, you'd better use command line tool, such as pkcon or zypper.

PackageKit command line toole (pkcon)

pkcon get-updates # list the avaliable updates
pkcon update [package name or patch name]

zypper

zypper list-patches, lp	 # List needed patches.
zypper list-updates, lu	 # List available updates.
zypper update, up        # Update installed packages with newer versions
Personal tools