3# Dieses Skript wird nur ein einziges Mal nach einem Upgrade oder der Erstinstallation ausgefuehrt: 
   10# Alle openwrt-Releases bis einschliesslich Chaos Calmer 15.05-rc3 haben die opkg.conf als 
   11# erhaltenswerte Nutzer-Konfiguration behandelt und somit bei Updates unverändert gelassen. 
   12# Dies führt naturgemäß zu unbrauchbaren Paket-Feeds nach einer Firmware-Aktualisierung. 
   13# Das Problem ist hier beschrieben: 
   16# Und hier ist die Loesung (ab Chaos Chalmer (final release)): 
   18# Bei dieser Problembehebung werden die alten Repositories (aus der /etc/opkg.conf) in die 
   19# /etc/opkg/customfeeds.conf verschoben. Die /etc/opkg.conf enthaelt daraufhin nur noch 
   20# grundlegende Einstellungen. 
   21# Die neue Datei /etc/opkg/customfeeds.conf enthaelt dagegen alle distributions-spezifischen 
   22# Repositories. Diese Datei gilt nicht als Konfigurationsdatei und wird somit bei einer 
   23# Aktualisierung ersetzt. 
   24# Somit muessen wir alte unbrauchbare Feeds aus der Datei "customfeeds" entfernen.
 
   26    # die opkg.conf-Datei der folgenden Releases ist zu ersetzen: 
   27    # backfire: Release v0.4-1 
   28    # attitude_adjustment: Release v0.4-5 
   29    # barrier_breaker: Release v0.5.0/1 
   30    # chaos_calmer/15.05-rc: Entwicklungsversionen von v0.5.2 
   31    local opkg_file=
"/etc/opkg/customfeeds.conf" 
   32    grep -v 
'\(backfire\|attitude_adjustment\|barrier_breaker\|chaos_calmer\/15\.05-rc\)' "$opkg_file" | \
 
   37# Der openwrt-Build-Prozess fügt den opennet-Feed zur /etc/opkg/distfeeds.conf hinzu. 
   38# Wir möchten dies jedoch nicht (siehe opennet-Doku zur Paketverwaltung). 
   40    local opkg_file=
"/etc/opkg/distfeeds.conf" 
   45# Fuege den Hinweis auf die separate opennet-opkg-Konfigurationsdatei in die opkg.conf ein. 
   46# Bis Version 0.5.1 war es üblich, alle Pakete einfach via "opkg install" zu installieren.
 
   47# Ab Version 0.5.2 sind die Konfigurationsdateien für die opennet- und die openwrt-Feeds 
   48# getrennt zu verwenden. 
   50    grep -q 
"Opennet" /etc/opkg.conf || 
return 0
 
   51    cat >>/etc/opkg.conf <<EOF
 
   52######################################################################### 
   53# Hinweis: verwende "on-function install_from_opennet_repository PAKET" #
 
   54#          um Opennet-Pakete zu installieren.                           # 
   55######################################################################### 
update_file_if_changed(target_filename)
Aktualisiere eine Datei, falls sich ihr Inhalt geändert haben sollte.
 
set eu remove_obsolete_repositories()
 
remove_opennet_feed_from_distfeeds_opkg_conf()