2014/03/20(Thu)野良リポジトリからPidora 20 (Pidora release 2014) をRaspberry Piに導入しようとしたが…
2014/05/18 2:31
結構PCにFedoraを入れるようにはいかない…
初期導入
Fedoraの現行バージョンは20の今、Pidoraの公式版は18の模様。しかし調べてみると、18のイメージをSDカードに展開して、rpmでyum repositoryを更新していくとFedora 20相当のPidora release 2014に出来るらしい。
というわけで試してみる。
Pidora 18の導入は簡単で、Pidora - Raspberry Pi Fedora Remixからpidora-18-r2c.zipを落としてきて、imgをSDに焼くだけ。
Windowsで作業するなら、Win32 Disk Imagerを使って焼けばOK。
書き込みが終わったら、SDカードをRaspiに挿してbootするだけでfirstboot画面が現れるので、パスワードや一般ユーザ、タイムゾーンなどをお好みで。
ちなみに私はheadlessで使うつもりなので、graphical bootからtext bootに切り替え。
Pidora 18 -> 19
とりあえずPidora 18から19へ。本当はyum updateして最新にしておくのが好ましいとされているけど、とにかくupdateさせると遅いし、今回はミスってもすぐにやり直せるのでパス。
というわけで、いきなりpidora-releaseのページからRPMを導入し、yum --nogpgcheck distro-syncを実行。*1
pidora-release-19-11が最終版のようなのでそれをチョイス。
# wget http://japan.proximity.on.ca/kojifiles/packages/pidora-release/19/11.rpfr19/noarch/pidora-release-19-11.rpfr19.noarch.rpm
# rpm -Uvh pidora-release-19-11.rpfr19.noarch.rpm
Preparing... ########################################### [100%]
1:pidora-release ########################################### [100%]
# yum --nogpgcheck distro-sync
(snip.)
--> Finished Dependency Resolution
Error: Package: gnome-python2-bonobo-2.28.1-13.fc19.armv6hl (pidora-updates)
Requires: libbonobo(armv6hl-32) >= 2.8.0
Removing: libbonobo-2.32.1-3.fc18.armv6hl (@anaconda-0/bluesky)
libbonobo(armv6hl-32) = 2.32.1-3.fc18
Updated By: libbonobo-2.32.1-5.fc19.armv6hl (pidora)
Not found
Error: Package: gedit-plugins-3.6.1-1ct1.fc18.armv6hl (@anaconda-0/bluesky)
Requires: libgtksourceview-3.0.so.0
Removing: gtksourceview3-3.6.1-1.fc18.armv6hl (@anaconda-0/bluesky)
libgtksourceview-3.0.so.0
Updated By: gtksourceview3-3.8.2-1.fc19.armv6hl (pidora-updates)
Not found
Available: gtksourceview3-3.6.3-1.fc18.armv6hl (pidora)
libgtksourceview-3.0.so.0
Error: Package: 1:perl-Module-Pluggable-4.00-239.fc18.noarch (@anaconda-0/bluesky)
Requires: perl = 4:5.16.2-239.fc18
Removing: 4:perl-5.16.2-239.fc18.armv6hl (@anaconda-0/bluesky)
perl = 4:5.16.2-239.fc18
Updated By: 4:perl-5.16.3-266.fc19.armv6hl (pidora)
perl = 4:5.16.3-266.fc19
Error: Package: gnome-python2-gnomevfs-2.28.1-13.fc19.armv6hl (pidora-updates)
Requires: libbonobo(armv6hl-32) >= 2.8.0
Removing: libbonobo-2.32.1-3.fc18.armv6hl (@anaconda-0/bluesky)
libbonobo(armv6hl-32) = 2.32.1-3.fc18
Updated By: libbonobo-2.32.1-5.fc19.armv6hl (pidora)
Not found
Error: Package: 1:gdm-3.8.3-2.fc19.armv6hl (pidora)
Requires: gnome-shell
Error: Package: gnome-python2-gconf-2.28.1-13.fc19.armv6hl (pidora-updates)
Requires: GConf2(armv6hl-32) >= 2.11.1
Removing: GConf2-3.2.5-2.fc18.armv6hl (@anaconda-0/bluesky)
GConf2(armv6hl-32) = 3.2.5-2.fc18
Updated By: GConf2-3.2.6-6.fc19.armv6hl (pidora)
Not found
Error: Package: gnome-python2-gnomevfs-2.28.1-13.fc19.armv6hl (pidora-updates)
Requires: gnome-vfs2(armv6hl-32) >= 2.14.0
Removing: gnome-vfs2-2.24.4-9.fc18.armv6hl (@anaconda-0/bluesky)
gnome-vfs2(armv6hl-32) = 2.24.4-9.fc18
Updated By: gnome-vfs2-2.24.4-12.fc19.armv6hl (pidora)
Not found
Error: Package: 2:gedit-3.5.1-2.fc18.armv6hl (pidora)
Requires: libgtksourceview-3.0.so.0
Removing: gtksourceview3-3.6.1-1.fc18.armv6hl (@anaconda-0/bluesky)
libgtksourceview-3.0.so.0
Updated By: gtksourceview3-3.8.2-1.fc19.armv6hl (pidora-updates)
Not found
Available: gtksourceview3-3.6.3-1.fc18.armv6hl (pidora)
libgtksourceview-3.0.so.0
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
だめだった……。どうも依存関係が綺麗に解決出来ないようなので、とりあえず壊れている物は後からナントカするとして、skip-brokenで再チャレンジ。
# ここまで来るのにも、ここから先もかなり時間がかかるので、仕掛けて外出したり寝ると良いかな
# yum --nogpgcheck --skip-broken distro-sync
(snip...)
Transaction Summary
======================================================================================================================================================
Install 8 Packages (+12 Dependent packages)
Upgrade 566 Packages (+25 Dependent packages)
Downgrade 1 Package
Skipped (dependency problems) 418 Packages
Total download size: 299 M
Is this ok [y/N]:
(snip...)
Updating : pygobject3-base-3.8.3-1.fc19.armv6hl 185/1214
Updating : libuser-0.59-1.fc19.armv6hl 186/1214
/sbin/ldconfig: libraries librt-2.16.so and librt-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libresolv.so.2 and libresolv-2.16.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libcrypt-2.16.so and libcrypt-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libnss_hesiod-2.16.so and libnss_hesiod-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libnsl.so.1 and libnsl-2.16.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libdl-2.16.so and libdl-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libnss_compat-2.16.so and libnss_compat-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libc-2.16.so and libc-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries ld-2.16.so and ld-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libnss_db.so.2 and libnss_db-2.16.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libutil-2.16.so and libutil-2.17.so in directory /lib have same soname but different type.
Updating : usermode-1.111-3.fc19.armv6hl 187/1214
Updating : binutils-2.23.52.0.1-10.fc19.v6.armv6hl 188/1214
/sbin/ldconfig: libraries librt-2.16.so and librt-2.17.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libresolv.so.2 and libresolv-2.16.so in directory /lib have same soname but different type.
/sbin/ldconfig: libraries libcrypt-2.16.so and libcrypt-2.17.so in directory /lib have same soname but different type.
(snip...)
Removed:
pidora-release.noarch 0:19-11.rpfr19
Installed:
flac-libs.armv6hl 0:1.3.0-2.fc19 libertas-usb8388-firmware.noarch 2:20130724-29.git31f6b30.fc19
linux-firmware.noarch 0:20130724-29.git31f6b30.fc19 mesa-filesystem.armv6hl 0:9.2-0.12.20130610.fc19
openrdate.armv6hl 0:1.2-2.fc19 pidora-release.noarch 0:19-10.rpfr19
ppl.armv6hl 0:1.0-3.fc19.5 raspberrypi-kernel.armv6hl 0:3.12.0-10.20131106git839f349.rpfr19
(snip...)
Dependency Installed:
compat-libffi.armv6hl 0:3.0.10-3.fc19 dtc.armv6hl 0:1.4.0-1.fc19
graphite2.armv6hl 0:1.2.2-1.fc19 libatomic.armv6hl 0:4.8.1-3.v6.fc19
libwayland-cursor.armv6hl 0:1.1.90-0.1.20130515.fc19 libxkbcommon.armv6hl 0:0.3.0-1.fc19
mozjs17.armv6hl 0:17.0.0-7.fc19 opus.armv6hl 0:1.0.2-3.fc19
(snip...)
Updated:
ConsoleKit.armv6hl 0:0.4.5-5.fc19 ConsoleKit-x11.armv6hl 0:0.4.5-5.fc19
ORBit2.armv6hl 0:2.14.19-8.fc19 abattis-cantarell-fonts.noarch 0:0.0.12-2.fc19
accountsservice.armv6hl 0:0.6.34-1.fc19 accountsservice-libs.armv6hl 0:0.6.34-1.fc19
acl.armv6hl 0:2.2.51-9.fc19 adwaita-cursor-theme.noarch 0:3.8.1-1.fc19
(snip...)
Dependency Updated:
ConsoleKit-libs.armv6hl 0:0.4.5-5.fc19 Thunar.armv6hl 0:1.6.3-1.fc19 avahi.armv6hl 0:0.6.31-11.fc19
cronie.armv6hl 0:1.4.10-5.fc19 cronie-anacron.armv6hl 0:1.4.10-5.fc19 dnsmasq.armv6hl 0:2.66-7.fc19
fipscheck.armv6hl 0:1.3.1-3.fc19 gtk2.armv6hl 0:2.24.19-2.fc19 gtk3.armv6hl 0:3.8.2-2.fc19
iputils.armv6hl 0:20121221-2.fc19 jack-audio-connection-kit.armv6hl 0:1.9.9.5-2.fc19 libgusb.armv6hl 0:0.1.6-1.fc19
(snip...)
Skipped (dependency problems):
ConsoleKit-libs.armv6hl 0:0.4.5-5.fc19 GConf2.armv6hl 0:3.2.6-6.fc19
NetworkManager.armv6hl 1:0.9.8.2-2.fc19 NetworkManager.armv6hl 1:0.9.8.2-2.fc19
NetworkManager-glib.armv6hl 1:0.9.8.2-2.fc19 NetworkManager-glib.armv6hl 1:0.9.8.2-2.fc19
NetworkManager-openvpn.armv6hl 1:0.9.6.0-2.fc19 NetworkManager-vpnc.armv6hl 1:0.9.3.997-4.fc19
(snip...)
Replaced:
Terminal.armv6hl 0:0.4.8-4.fc18 flac.armv6hl 0:1.2.1-10.fc18.1302260907kf libertas-usb8388-firmware.noarch 2:5.110.22.p23-6.fc17
mesa-dri-filesystem.armv6hl 0:9.0.1-1.fc18 ppl-pwl.armv6hl 0:0.11.2-9.fc18 ql2400-firmware.noarch 0:5.08.00-1.fc18
ql2500-firmware.noarch 0:5.08.00-1.fc18 rdate.armv6hl 0:1.4-20.fc18
Failed:
cronie.armv6hl 0:1.4.10-1.fc18 lightdm.armv6hl 0:1.4.0-2.fc18 mdadm.armv6hl 0:3.2.6-1.fc18
raspberrypi-kernel.armv6hl 0:3.6.11-7.20130415git197d15b.rpfr18 rng-tools.armv6hl 0:4-2.fc18.1302271711kf rtkit.armv6hl 0:0.11-3.fc18
usbmuxd.armv6hl 0:1.0.8-5.fc18.1302271922kf
というわけで一応入った。一旦ここでreboot。Pidora 19導入後処理
ARM - Pi to Kernel 3.13.2… Pidora 19 Woes.. Odroid to Fedora 20.. を参考に、Failedになったコンポーネントを削除する。調べてみると、Failedな理由はPidrao 19用のものが見つからなかったのではなくて、削除に失敗して競合状態のまま残ってしまっているようだ。
# cat /etc/redhat-release Pidora release 19 (Raspberry Pi Fedora Remix) # uname -a Linux raspi.local 3.12.0-10.20131106git839f349.rpfr19.bcm2708 #1 PREEMPT Wed Dec 18 11:53:21 EST 2013 armv6l armv6l armv6l GNU/Linux # package-cleanup --dupes Loaded plugins: presto, refresh-packagekit rng-tools-4-2.fc18.1302271711kf.armv6hl rng-tools-4-3.fc19.armv6hl lightdm-1.4.0-2.fc18.armv6hl lightdm-1.6.0-10.fc19.armv6hl usbmuxd-1.0.8-7.fc19.armv6hl usbmuxd-1.0.8-5.fc18.1302271922kf.armv6hl cronie-1.4.10-1.fc18.armv6hl cronie-1.4.10-5.fc19.armv6hl rtkit-0.11-3.fc18.armv6hl rtkit-0.11-3.fc19.armv6hl raspberrypi-kernel-3.6.11-7.20130415git197d15b.rpfr18.armv6hl raspberrypi-kernel-3.12.0-10.20131106git839f349.rpfr19.armv6hl mdadm-3.2.6-19.fc19.armv6hl mdadm-3.2.6-1.fc18.armv6hlというわけで消す。
参考元のログには
rng-tools-4-2.fc18.1302271711kf.armv6hl usbmuxd-1.0.8-5.fc18.1302271922kf.armv6hl cronie-1.4.10-1.fc18.armv6hl at-3.1.13-10.fc18.1302272309kf.armv6hl rtkit-0.11-3.fc18.armv6hlを消したと書いてあるけど、微妙に違うのはtargetにしたPidora 19が違うからかな?
# rpm -e cronie-1.4.10-1.fc18.armv6hl raspberrypi-kernel-3.6.11-7.20130415git197d15b.rpfr18.armv6hl usbmuxd-1.0.8-5.fc18.1302271922kf.armv6hl lightdm-1.4.0-2.fc18.armv6hl rng-tools-4-2.fc18.1302271711kf.armv6hl mdadm-3.2.6-19.fc19.armv6hl rtkit-0.11-3.fc18.armv6hl /var/tmp/rpm-tmp.2yVRMh: line 1: fg: no job control error: %preun(rtkit-0.11-3.fc18.armv6hl) scriptlet failed, exit status 1 error: rtkit-0.11-3.fc18.armv6hl: erase failed /var/tmp/rpm-tmp.DZd80w: line 1: fg: no job control error: %preun(rng-tools-4-2.fc18.1302271711kf.armv6hl) scriptlet failed, exit status 1 error: rng-tools-4-2.fc18.1302271711kf.armv6hl: erase failed /var/tmp/rpm-tmp.sma1uJ: line 1: fg: no job control error: %preun(lightdm-1.4.0-2.fc18.armv6hl) scriptlet failed, exit status 1 error: lightdm-1.4.0-2.fc18.armv6hl: erase failed /var/tmp/rpm-tmp.LWlOt1: line 1: fg: no job control /var/tmp/rpm-tmp.LWlOt1: line 3: fg: no job control /var/tmp/rpm-tmp.LWlOt1: line 5: fg: no job control error: %preun(usbmuxd-1.0.8-5.fc18.1302271922kf.armv6hl) scriptlet failed, exit status 1 error: usbmuxd-1.0.8-5.fc18.1302271922kf.armv6hl: erase failed /var/tmp/rpm-tmp.Ku4mR1: line 2: fg: no job control error: %preun(cronie-1.4.10-1.fc18.armv6hl) scriptlet failed, exit status 1 error: cronie-1.4.10-1.fc18.armv6hl: erase failed素直に消えればこんな事になっていないか…。raspberrypi-kernelとmdadmは消えた模様。
というわけで、%preunスクリプトを実行しないように--noscriptsを指定して再実行。
# rpm -e --noscripts cronie-1.4.10-1.fc18.armv6hl usbmuxd-1.0.8-5.fc18.1302271922kf.armv6hl lightdm-1.4.0-2.fc18.armv6hl rng-tools-4-2.fc18.1302271711kf.armv6hl rtkit-0.11-3.fc18.armv6hl # package-cleanup --dupes Loaded plugins: presto, refresh-packagekitというわけでこれでスッキリ消える。
Pidora 19 -> 20
同じ要領で次も。現在のPidora 20最新は、pidora-release-20-5のようなので、これをRPM導入してからyum distro-syncを実行。
例によってRPMは、pidora-releaseから。
# wget http://japan.proximity.on.ca/kojifiles/packages/pidora-release/20/5.rpfr20/noarch/pidora-release-20-5.rpfr20.noarch.rpm
# rpm -Uvh pidora-release-20-5.rpfr20.noarch.rpm
Preparing... ########################################### [100%]
1:pidora-release ########################################### [100%]
# yum --nogpgcheck distro-sync
(snip...)
--> Finished Dependency Resolution
Error: Package: gnome-shell-3.9.5-2.fc20.armv6hl (pidora)
Requires: libedataserver-1.2.so.17
Error: mutter conflicts with gnome-shell-3.9.5-2.fc20.armv6hl
Error: Package: perl-Device-BCM2835-1.7-2.rpfr18.armv6hl (@anaconda-0/bluesky)
Requires: perl(:MODULE_COMPAT_5.16.2)
Removing: 4:perl-5.16.2-239.fc18.armv6hl (@anaconda-0/bluesky)
perl(:MODULE_COMPAT_5.16.2)
Updated By: 4:perl-5.18.1-291.fc20.armv6hl (pidora)
Not found
Error: Package: gnome-shell-3.9.5-2.fc20.armv6hl (pidora)
Requires: libcamel-1.2.so.44
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
またダメだったので、--skip-brokenを指定してretry。# yum --nogpgcheck --skip-broken distro-sync (snip...) Transaction Summary ====================================================================================================================================================== Install 1 Package (+ 6 Dependent packages) Upgrade 463 Packages (+32 Dependent packages) Remove ( 3 Dependent packages) Downgrade 9 Packages Skipped (dependency problems) 626 Packages Total download size: 237 M Is this ok [y/N]: y (snip...) Running Transaction Check ERROR with transaction check vs depsolve: fedora-logos is obsoleted by (installed) pidora-logos-1-4.rpfr18.noarch samba4-libs < 2:4.0.0-168.fc18.rc5 is obsoleted by (installed) samba-libs-2:4.0.0-168.fc18.rc5.armv6hl Please report this error in https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&version=rawhide&component=yum You could try running: rpm -Va --nofiles --nodigest Your transaction was saved, rerun it with: yum load-transaction /tmp/yum_save_tx.2013-06-21.15-05.BgJ66H.yumtxARM - The Secret is Out - ‘Pidora 2014′ is Here..を参考に、pidora-logosをpidora-logosを外して再試行。
# # yum --skip-broken --nogpgcheck --exclude=pidora-logos distro-sync (snip...) Running Transaction Check ERROR with transaction check vs depsolve: samba4-libs < 2:4.0.0-168.fc18.rc5 is obsoleted by (installed) samba-libs-2:4.0.0-168.fc18.rc5.armv6hl Please report this error in https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&version=rawhide&component=yum You could try running: rpm -Va --nofiles --nodigest Your transaction was saved, rerun it with: yum load-transaction /tmp/yum_save_tx.2013-06-21.15-31._JYpGI.yumtx
どうやら調べてみると、v18の時のパッケージが大量に残っていてupdateされていないので、依存関係の解決がきちんと出来ていない感じ……。
# rpm -qa | grep f[cr]18 | wc -l
238
例えば上でエラーになったsamba-libsのupdateをかけてみると……出るわ出るわ、依存関係の山。(しかも解決出来ていない)これ以上続けても不毛なので、ここで打ち切り。