Benutzer-Werkzeuge

Webseiten-Werkzeuge


comp:zypp2smart

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

comp:zypp2smart [2009-02-14 1422] (aktuell)
werner angelegt
Zeile 1: Zeile 1:
 +====== Zypper-Repos an Smart übergeben ======
  
 +Heute saß ich am PC, tippte ''​smart update''​ und der Paketmanager smart war der Meinung, dass er alle Channel entfernene solle. Anscheinend war ein Update eingetroffen,​ das mal so nebenbei ein ''​rm -rf /​etc/​smart/​channels/​*''​ abgesetzt hat, und meine mühsam synchronisierten Kanäle waren weg :-(
 +
 +Also: wie kann ich ''​smart''​ überreden, die Repositorioes von ''​zypp''​ zu benutzen? Ein kleines Shellscript reicht:
 +
 +<code bash>
 +#!/bin/bash
 +
 +# this script is intended to copy zypper repositories to smart sources
 +# written by Werner Flamme <​w.flamme@web.de>​ 2009-02-14
 +
 +ZYPPERDIR=/​etc/​zypp/​repos.d
 +SMARTDIR=/​etc/​smart/​channels
 +
 +# loop over all zypper repositories
 +for DAT in $ZYPPERDIR/​*.repo;​ do
 + # do we have to care about the repo?
 + grep -q '​enabled=0'​ "​$DAT"​ && continue
 +
 + # get the name of the repo, so that it will be understood by smart
 + FIRSTPART=$(basename "​$DAT"​ '​.repo'​)
 + # where do we write to?
 + NEWFILE="​$SMARTDIR/​${FIRSTPART}.channel"​
 + # write the channel'​s name
 + echo "​[$FIRSTPART]"​ > "​$NEWFILE"​
 + echo "Alias = $FIRSTPART"​ >> "​$NEWFILE"​
 + # get the zypper repo info we need
 + BASEURL=$(grep '​baseurl='​ "​$DAT"​)
 + REPOTYPE=$(grep '​type='​ "​$DAT"​)
 + echo "​$BASEURL" ​ >> "​$NEWFILE"​
 + echo "​$REPOTYPE"​ >> "​$NEWFILE"​
 +done
 +</​code>​
 +
 +Damit erstelle ich aus jedem aktiven Zypper-Repository einen Smart-Kanal. Und zwar recht schnell... ;-)
 +
 +Anschließend noch ein ''​%%smart channel --show%%'',​ damit smart alle neuen Kanäle einliest, und noch ein ''​%%smart channel --show > /​etc/​smart/​channelsik%%'',​ um eine Sicherungskopie der Channel anzulegen :-). Damit sollte das nächste Update keine Probleme mehr bereiten ;-)
comp/zypp2smart.txt · Zuletzt geändert: 2009-02-14 1422 von werner