GoogleEarth
Быстрая установка
Источник: [1]
apt-get install lsb-desktop rpm -Uhv --excludepath /etc/cron.daily google-earth-stable_current_i386.rpm
P7 x86_64 / Гуглобус 7.1.1.1580
Наконец-то появился нормальный пакет для x86_64. Правда, spec всё ещё кривоват, надо править с помощью rpmrebuild. Теперь при первой пересборке достаточно установить зависимости:
lsb-core libGL libGLU libICE libSM libX11 libXext libXrender fontconfig libfreetype libsqlite3
Затем перепаковки можно использовать скрипт google-earth-rehack.sh (он делает всё, что описано для P6):
$ ./google-earth-rehack.sh Загрузки/google-earth-stable_current_x86_64.rpm Do you want to continue ? (y/N) Обрабатываются файлы: google-earth-stable-7.1.1.1580-0 Поиск Provides (используя /usr/lib/rpm/find-provides) … Записан: /home/<user>/RPM/RPMS/x86_64/google-earth-stable-7.1.1.1580-0.x86_64.rpm result: /home/<user>/RPM/RPMS/x86_64/google-earth-stable-7.1.1.1580-0.x86_64.rpm
И собственно
# apt-get install /home/<user>/RPM/RPMS/x86_64/google-earth-stable-7.1.1.1580-0.x86_64.rpm
P6 x86_64 / Гуглобус 6.2.2.6613
- Подключаем arepo2
- Ставим i586-glibc-nss, i586-libXrender, i586-lsb-core, 586-fontconfig, i586-libGL.32bit, i586-libstdc++6.32bit и (необязательно) i586-libXi и i586-libXcursor . Список получен путём запуска гуглобуса, считывания сообщений об ошибках, а когда они кончились — вот такого grep-а:
$ strace -efile -foo google-earth; grep '"\(/usr\)\?/lib/[^/]*\.so.*NOENT' o
- Скачиваем пакет для Fedora64
- Говорим
rpmrebuild -ep Загрузки/google-earth-stable_current_x86_64.rpm
- В процессе редактирования накладываем вот такой diff (или правим руками). Смысл в том, чтобы:
- Убрать зависимость на lsb
- Убрать обновлялку по крону
- Убрать пропихивание ключей и репозиториев
--- etc/googleearth.spec 2012-05-07 14:23:32.000000000 +0400 +++ etc/googleearth.spec.new 2012-05-07 14:31:02.000000000 +0400 @@ -50,7 +50,7 @@ Provides: google-earth = 6.2.2.6613 Provides: google-earth-stable = 6.2.2.6613-0 #Requires: rpmlib(VersionedDependencies) <= 3.0.3-1 -Requires: lsb >= 3.2 +#Requires: lsb >= 3.2 Requires: wget Requires: xdg-utils Requires: /bin/sh @@ -66,8 +66,8 @@ Google Earth lets you fly anywhere to see satellite imagery, 3D buildings, 3D trees, terrain, Street View, planets and much more. %files -%dir %attr(0755 root root) "/etc/cron.daily" -%attr(0755 root root) "/etc/cron.daily/google-earth" +#dir %attr(0755 root root) "/etc/cron.daily" +#attr(0755 root root) "/etc/cron.daily/google-earth" %dir %attr(0755 root root) "/opt/google/earth/free" %attr(0444 root root) "/opt/google/earth/free/ImporterGlobalSettings.ini" %attr(0444 root root) "/opt/google/earth/free/ImporterUISettings.ini" @@ -453,6 +453,7 @@ # http://www.google.com/linuxrepositories/aboutkey.html) install_rpm_key() { # Check to see if key already exists. + return 0 rpm -q gpg-pubkey-7fac5991-4615767f > /dev/null 2>&1 if [ "$?" -eq "0" ]; then # Key already exists @@ -798,8 +799,8 @@ # what we want here. Also preemptively start atd because for some reason it's # not always running, which kind of defeats the purpose of having 'at' as a # required LSB command. -service atd start -echo "sh /etc/cron.daily/google-earth" | at now + 2 minute +# service atd start +# echo "sh /etc/cron.daily/google-earth" | at now + 2 minute exit 0 @@ -824,6 +825,7 @@ # http://www.google.com/linuxrepositories/aboutkey.html) install_rpm_key() { # Check to see if key already exists. + return 0 rpm -q gpg-pubkey-7fac5991-4615767f > /dev/null 2>&1 if [ "$?" -eq "0" ]; then # Key already exists
Ставим получившийся пакет:
# apt-get install RPM/RPMS/x86_64/google-earth-stable-6.2.2.6613-0.x86_64.rpm
«Кентавр бета КДЕ4 20101227» / «Google Earth for GNU/Linux 6.0.1.2032» с сайта Google
Проблема
При попытке запустить инсталлятор получаю:
sudo ./GoogleEarthLinux.bin Verifying archive integrity... All good. Uncompressing Google Earth for GNU/Linux 6.0.1.2032...................................... setup.data/setup.xml:1: parser error : Document is empty ^ setup.data/setup.xml:1: parser error : Start tag expected, '<' not found ^ ./setup.sh: line 158: 7253 Segmentation fault "$setup" "$@"
Решение
Было найдено здесь, хотя там страдали поклонники Дебиана и Убунту:
chmod +x GoogleEarthLinux.bin ./GoogleEarthLinux.bin --target /tmp/ge cd /tmp/ge/setup.data/bin/Linux/x86/ mv setup.gtk setup.gtk2 cd /tmp/ge ./setup.sh # нажимаем правую нижнюю кнопку su - apt-get install lsb-core ~/google-earth/googleearth %f
В нашем случае начинать нужно с: apt-get install lsb-core . «Правую нижнюю кнопку» написано потому, что надписи на кнопках совершенно нечитабельные. После установки будет предложено запустить программу или выйти. Запускать ни коем случае нельзя, потому как установка производилась из-под root и в дальнейшем запустить её из под пользователя будет очень сложно, поэтому нужно просто выйти и запускать уже из под пользователя. Если в меню КДЕ «Интернет» не появился значок «3D planet viewer…», то запустить нужно так: /opt/google-earth/googleearth
После запуска Google Earth все надписи будут изображены квадратиками до тех пор, пока мы не воспользуемся мудрым советом Геннадия Моцьо (Drool) и не поставим шрифты fonts-bitmap-100dpi и fonts-bitmap-cyrillic. Если эти шрифты и рекомендованные Андреем Рахматуллиным (wRAR) шрифты fonts-ttf-vera и fonts-ttf-dejavu поставить перед установкой GoogleEarth, то никаких проблем со шрифтами ни в процессе установки, ни после неё не будет