packet management toolchainsa list of packet management systems and their unique features:
Konzepte, Ansaetze verschiedener DistributionenDies sind im Wesentlichen die groessten Distributionen welche sich im Konzept des Paketbaus grundsaetzlich unterscheiden.
Linux allg.DebianHier gib es das Paketformat deb Pakete werden dynamisch gelinkt und die Libraries müssen immer zusammen mit dem Paket verteilt werden. D.h. wenn einzelene Programme neuere Libraries benötigen und alte noch nicht portiert sind, kommt es zu einem nicht auflösbaren Konflikt es sei denn, die gleichnamigen Libraries können parallel installiert werden. SuSEHier werden eigentlich alle Pakete von der Firma Novell erstellt. Hier sollte man sich auf jeden fall den SuSE build service ansehen [7]. Redhat (Fedora Core)funtooa gentoo variant, very interesting http://www.funtoo.org/en/funtoo/faq/ GentooEs existieren zwei 'installer'. Einmal klassisch das 'portge' und als ersatz 'paludis'. Hier wird im Prinzip alles direkt aus dem Source uebersetzt. Der Vorteil, man hat immer ein aktuelles System, welches sich optimal an den Rechner und dessen Architektur anpasst. Gentoo bringt ca. 13k pakete mit, beachtlich! ls -d /usr/portage/*-*/* | wc -l 13448 Vorteile:
Nachtiele:
Gentoo core system (emerge -e system)Wir schauen uns mal an, was z.b. gentoo als core braucht um zu arbeiten. So viel ist das garnicht. Die untere Ausgabe von emerge zeigt den merge an, also die Reihenfolge in der die Pakete installiert werden. # emerge -et system -pa These are the packages that would be merged, in reverse order: Calculating dependencies... done! [ebuild U ] sys-libs/glibc-2.8_p20080602-r1 [2.6.1] [ebuild R ] sys-devel/gcc-4.3.1-r1 USE="(-fixed-point)" [ebuild U ] net-misc/openssh-5.1_p1-r2 [4.7_p1-r6] [ebuild N ] virtual/pager-0 [ebuild R ] sys-apps/which-2.19 [ebuild R ] sys-process/procps-3.2.7 [ebuild R ] virtual/editor-0 [ebuild U ] sys-fs/e2fsprogs-1.41.3-r1 [1.41.3] [ebuild U ] sys-process/psmisc-22.6 [22.5-r2] [ebuild U ] sys-apps/busybox-1.13.2 [1.7.4] [ebuild R ] sys-apps/util-linux-2.14.1 [nomerge ] sys-libs/ncurses-5.6-r2 [ebuild R ] sys-libs/gpm-1.20.5 [nomerge ] sys-apps/portage-2.1.6.7 [ebuild R ] app-admin/eselect-news-20080320 [nomerge ] net-misc/wget-1.11.3 [1.10.2] [nomerge ] dev-libs/openssl-0.9.8k [0.9.8j] [nomerge ] dev-lang/perl-5.8.8-r5 [ebuild R ] app-admin/perl-cleaner-1.05 [nomerge ] sys-apps/util-linux-2.14.1 [nomerge ] sys-devel/gettext-0.17 [ebuild U ] dev-libs/libxml2-2.7.3 [2.7.2-r2] [ebuild U ] sys-apps/groff-1.20.1-r1 [1.19.2-r3] LINGUAS="-ja%" [nomerge ] sys-fs/e2fsprogs-1.41.3-r1 [1.41.3] [ebuild R ] sys-libs/e2fsprogs-libs-1.41.3-r1 [ebuild R ] sys-devel/bc-1.06.95 [nomerge ] app-admin/eselect-news-20080320 [ebuild R ] app-admin/eselect-1.0.11-r1 [nomerge ] virtual/editor-0 [ebuild U ] app-editors/nano-2.1.7-r1 [2.0.6] [nomerge ] sys-apps/groff-1.20.1-r1 [1.19.2-r3] LINGUAS="-ja%" [ebuild R ] x11-libs/libXaw-1.0.4 [ebuild R ] sys-apps/ed-1.0 [nomerge ] virtual/pager-0 [ebuild U ] sys-apps/less-418 [409] [nomerge ] net-misc/openssh-5.1_p1-r2 [4.7_p1-r6] [ebuild R ] net-nds/openldap-2.3.43 USE="-kerberos*" [ebuild R ] sys-apps/shadow-4.1.2.2 [ebuild R ] sys-apps/file-4.23 [nomerge ] sys-apps/busybox-1.13.2 [1.7.4] [ebuild U ] sys-libs/pam-1.0.4 [1.0.1] [ebuild U ] sys-libs/cracklib-2.8.13 [2.8.12] [ebuild R ] sys-apps/coreutils-6.9-r1 [nomerge ] sys-apps/shadow-4.1.2.2 [nomerge ] sys-libs/cracklib-2.8.13 [2.8.12] [ebuild R ] dev-lang/python-2.5.2-r7 USE="xml%*" [ebuild R ] sys-libs/readline-5.2_p13 [ebuild R ] app-shells/bash-3.2_p39 [ebuild U ] sys-apps/texinfo-4.13 [4.11-r1] [ebuild R ] sys-libs/ncurses-5.6-r2 [ebuild U ] net-misc/rsync-3.0.5 [3.0.4] [nomerge ] x11-libs/libXaw-1.0.4 [ebuild R ] x11-libs/libXpm-3.5.7 [nomerge ] net-misc/openssh-5.1_p1-r2 [4.7_p1-r6] [ebuild R ] x11-apps/xauth-1.0.3 [ebuild R ] x11-libs/libXmu-1.0.3 [ebuild R ] x11-libs/libXext-1.0.4 [ebuild R ] x11-libs/libXt-1.0.5 [ebuild R ] x11-libs/libX11-1.1.5 [ebuild R ] x11-proto/xcmiscproto-1.1.2 [ebuild R ] x11-libs/libXdmcp-1.0.2 [ebuild R ] x11-proto/bigreqsproto-1.0.2 [ebuild R ] x11-proto/xf86bigfontproto-1.1.2 [nomerge ] sys-apps/coreutils-6.9-r1 [ebuild R ] sys-apps/acl-2.2.47 [ebuild U ] sys-apps/attr-2.4.43 [2.4.41] [nomerge ] x11-apps/xauth-1.0.3 [nomerge ] x11-libs/libXext-1.0.4 [ebuild R ] x11-proto/xextproto-7.0.4 [ebuild R ] x11-proto/inputproto-1.5.0 [nomerge ] x11-libs/libXaw-1.0.4 [nomerge ] x11-libs/libXt-1.0.5 [ebuild R ] x11-libs/libSM-1.0.3 [ebuild R ] x11-libs/libICE-1.0.4 [ebuild R ] x11-proto/kbproto-1.0.3 [nomerge ] x11-apps/xauth-1.0.3 [ebuild R ] x11-libs/libXau-1.0.4 [nomerge ] sys-apps/groff-1.20.1-r1 [1.19.2-r3] LINGUAS="-ja%" [nomerge ] x11-libs/libSM-1.0.3 [ebuild R ] x11-libs/xtrans-1.2.3 [ebuild R ] x11-proto/xproto-7.0.14 [ebuild R ] x11-misc/util-macros-1.1.5 [ebuild R ] sys-devel/libtool-1.5.26 [ebuild R ] sys-devel/automake-1.10.2 [nomerge ] sys-apps/man-pages-3.18 [3.16] [ebuild R ] app-i18n/man-pages-de-0.5-r1 [ebuild R ] sys-apps/man-pages-posix-2003a [ebuild U ] sys-apps/man-1.6f-r3 [1.6f-r2] USE="-lzma%" [ebuild U ] net-misc/wget-1.11.3 [1.10.2] [ebuild R ] sys-devel/make-3.81 [ebuild U ] app-arch/tar-1.20 [1.19] [ebuild U ] sys-apps/gawk-3.1.6 [3.1.5-r5] [ebuild U ] sys-apps/net-tools-1.60_p20071202044231-r1 [1.60-r13] [ebuild R ] sys-apps/kbd-1.13-r1 [ebuild U ] app-arch/gzip-1.3.12-r1 [1.3.12] [ebuild R ] sys-apps/grep-2.5.1a-r1 [ebuild U ] sys-apps/module-init-tools-3.5 [3.4] [ebuild R ] sys-apps/findutils-4.4.0 [nomerge ] net-misc/rsync-3.0.5 [3.0.4] [ebuild R ] dev-libs/popt-1.10.7 [nomerge ] sys-devel/libtool-1.5.26 [ebuild R ] sys-apps/help2man-1.36.4 [ebuild R ] dev-perl/Locale-gettext-1.05 [nomerge ] sys-devel/gcc-4.3.1-r1 USE="(-fixed-point)" [ebuild R ] media-libs/libart_lgpl-2.3.20 [nomerge ] net-misc/openssh-5.1_p1-r2 [4.7_p1-r6] [ebuild U ] dev-libs/openssl-0.9.8k [0.9.8j] [ebuild R ] sys-apps/diffutils-2.8.7-r2 [ebuild R ] sys-devel/bison-2.3 [ebuild R ] sys-devel/flex-2.5.35 [ebuild R ] sys-apps/sed-4.1.5-r1 [ebuild R ] sys-devel/binutils-2.18-r3 [ebuild R ] sys-devel/gettext-0.17 [ebuild R ] sys-devel/autoconf-2.63 [nomerge ] sys-devel/binutils-2.18-r3 [ebuild R ] sys-devel/binutils-config-1.9-r4 [nomerge ] sys-apps/file-4.23 [nomerge ] dev-lang/python-2.5.2-r7 USE="xml%*" [nomerge ] dev-libs/openssl-0.9.8k [0.9.8j] [ebuild R ] app-misc/ca-certificates-20080809 [ebuild U ] sys-apps/man-pages-3.18 [3.16] [ebuild R ] sys-fs/udev-124-r1 [ebuild R ] sys-apps/baselayout-1.12.11.1 [nomerge ] net-misc/openssh-5.1_p1-r2 [4.7_p1-r6] [ebuild U ] sys-auth/pambase-20081028 [20080318] USE="sha512%* -ssh%" [nomerge ] sys-devel/autoconf-2.63 [nomerge ] dev-lang/perl-5.8.8-r5 [ebuild R ] perl-core/PodParser-1.35 [ebuild R ] perl-core/Test-Harness-3.10 [ebuild R ] dev-lang/perl-5.8.8-r5 [ebuild R ] sys-devel/libperl-5.8.8-r2 [ebuild U ] net-misc/iputils-20071127 [20070202] [ebuild R ] app-arch/cpio-2.9-r2 [ebuild R ] app-arch/bzip2-1.0.5-r1 [ebuild R ] sys-devel/patch-2.5.9 [nomerge ] sys-apps/grep-2.5.1a-r1 [ebuild U ] dev-libs/libpcre-7.8 [7.7-r1] USE="bzip2*" [nomerge ] sys-libs/glibc-2.8_p20080602-r1 [2.6.1] [ebuild U ] sys-libs/timezone-data-2009b [2008i] [nomerge ] sys-devel/automake-1.10.2 [ebuild R ] sys-devel/automake-wrapper-3-r1 [nomerge ] sys-apps/baselayout-1.12.11.1 [ebuild R ] virtual/init-0 [nomerge ] sys-devel/autoconf-2.63 [ebuild R ] sys-devel/autoconf-wrapper-6 [nomerge ] app-misc/ca-certificates-20080809 [ebuild R ] sys-apps/debianutils-2.28.5 [nomerge ] sys-apps/portage-2.1.6.7 [nomerge ] dev-lang/python-2.5.2-r7 USE="xml%*" [ebuild R ] app-admin/python-updater-0.5 [ebuild U ] dev-db/sqlite-3.6.10 [3.6.6.2] [nomerge ] sys-devel/gcc-4.3.1-r1 USE="(-fixed-point)" [ebuild R ] dev-libs/mpfr-2.4.1_p1 [ebuild R ] app-arch/zip-2.32-r1 [ebuild R ] app-arch/unzip-5.52-r2 [nomerge ] sys-apps/portage-2.1.6.7 [ebuild R ] app-misc/pax-utils-0.1.19 [ebuild R ] sys-apps/sandbox-1.2.18.1-r3 [nomerge ] virtual/init-0 [ebuild R ] sys-apps/sysvinit-2.86-r10 [nomerge ] net-misc/openssh-5.1_p1-r2 [4.7_p1-r6] [ebuild R ] sys-apps/tcp-wrappers-7.6-r8 [nomerge ] sys-apps/sed-4.1.5-r1 [nomerge ] sys-devel/gettext-0.17 [ebuild R ] dev-libs/expat-2.0.1-r1 [nomerge ] sys-devel/gcc-4.3.1-r1 USE="(-fixed-point)" [ebuild R ] sys-devel/gcc-config-1.4.0-r4 [ebuild R ] dev-libs/gmp-4.2.4 [nomerge ] sys-devel/automake-1.10.2 [nomerge ] sys-apps/help2man-1.36.4 [nomerge ] dev-lang/perl-5.8.8-r5 [ebuild R ] sys-libs/gdbm-1.8.3-r3 [nomerge ] sys-apps/net-tools-1.60_p20071202044231-r1 [1.60-r13] [nomerge ] sys-devel/gettext-0.17 [ebuild R ] virtual/libiconv-0 [ebuild U ] sys-devel/gnuconfig-20080928 [20080123] [ebuild R ] sys-kernel/linux-headers-2.6.27-r2 [ebuild U ] sys-devel/m4-1.4.12 [1.4.11] [ebuild R ] app-arch/lzma-utils-4.32.7 [ebuild R ] sys-libs/zlib-1.2.3-r1 [nomerge ] net-misc/openssh-5.1_p1-r2 [4.7_p1-r6] [nomerge ] sys-libs/pam-1.0.4 [1.0.1] [ebuild R ] virtual/libintl-0 [ebuild R ] dev-util/pkgconfig-0.23 [ebuild R ] sys-apps/portage-2.1.6.7 archlinuxmac os xMac os X hat kein Paketmanagement und ist meiner meinung sogar schlampiger designed als Windows XP. Z.b. kann man waerend der Installation eine Auswahl an Sprachen im Language-pack configurator auswaehlen. Wenn man dann nachdem Mac os X installiert ist die install cd (leopard) einlegt, dann sind wieder alle Sprachen auswaehlbar und nicht wie man erwarten wuerde etwa nur die noch installierbaren. Das System ist so designed, dass der Nutzer wenig Aufwand hat neue Software zu installieren, diese vermuellt aber das System sehr stark. ms windowsUnter MS Windows gibt es zwei Zweige für deployment:
SystemupdatesSystemupdates, also "service packs", haben eine gewisse Ordnung. Allerdings kann ich mich erinnern, dass man diese in der falschen Reihenfolge installieren/deinstallieren kann. Siehe dazu [6]. Es gibt hier keine wirkliche Ordnung und keine höhere Abstraktion im Sinne von "Paketmanagement". Man sollte sich darunter ehr ein Paket voller "fixes/hotfixes" vorstellen was mehr oder weniger gut andere files überschreibt also ersetzt. UserprogrammeUnter den userprogrammen hat sich das Konzept des "install shields" etabliert. Allerdings hat windows allg. eine "registry" und diese wird im Normalfall nicht richtig deinstalliert. (entsprechen den files unter /etc bei linux) install shield Einfaches Management, nicht geeignet fuer updates im Sinne von "apt-get update; apt-get upgrade". Kein Zentrales Paketmanagement, alle installierten Programme kuemmern sich selbst um ev. Updates. Das fuehrt zum SETI@home Phaenomen, alle wollen nach-hause-telefonieren.
openmoko, SHRI own a openmoko neo freerunner and i'm very happy with it. I use it as:
The reason writing this is that it is yet another very good example of how work can be quadruplicated not using a base dependency graph to build software. Using [12] for software updates shows exactly how not to do it. The developers operating this service are very eager to do it right but never the less the software stack kind of sucks since if you fix a) then b) and c) get broken.... the usual Linux phenomenon I came along on several occasions using debian. Please don't get this wrong - i love openmoko and shr and opkg.org is a very good service but the point is that a software stack should be build with a better tool. However i like that one can give comments to packets which are build from external - this is a concept i've been thinking about ever since and i mentioned it in the features section already. pda / mobilesbasiert auf:
various
bios updateshier gibt es eigentlich keinen standard um updates dieser art zu verteilen. im pc bios fall heute mittels fat16 partitionieren usb sticks (sehr modern). i.A. aber mit dos oder win32 patcher die eine proprietaere platform voraussetzen.
firmware updates
zusammengefasst: sehr effektive methode ein geraet vor guter opensource integration zu schuetzen da der open source treiber meist ohne die unfreie firmware garnicht tut. http://www.ssi.gouv.fr/site_article185.html ![]() |