6 причин использовать opensuse
Содержание:
- Введение
- Разработка
- 4. Легкая установка программ в OpenSUSE Build Service
- Walk-through
- Расскажите о нас!
- Настройка и дополнительные репозитарии
- Информация о пакетах
- Что необходимо
- Что внутри?
- Отслеживание пакетов
- Установка
- Что такое программное решение (software appliance)?
- Сервер и другое программное обеспечение
- Other Methods
- deb based repositories
- Configuration migration
Введение
Впервые v15 OpenSUSE станет новой основной версией — вместе с новой номенклатурой. OpenSUSE теперь переходит с версии 42 на 15. Уже в прошлом команда дала понять, что это имеет смысл.
Поскольку дистрибутив по-прежнему основывался на Suse Linux Enterprise (SLE), они решили взять версию SUSE в качестве шаблона. С выпуском новой основной версии дистрибутив теперь возвращается к прежней номенклатуре и адаптирует имя к Enterprise.
Если спустя менее года SLE 15 SP1 будет обновлен до версии Enterprise, версия OpenSUSE также будет увеличена до v. 15.1.
Итак, OpenSuse Leap 15 поставляется в текущей версии в нескольких вариантах. До сих пор существуют специальные версии с рабочими столами Gnome и KDE, которые имеют размер около 1 ГБ.
ОС в 15 версии поставляется обширным пакетом, но ограничено свободным программным обеспечением. Пользователи, которые также хотят дополнения, должны установить их из онлайн-каталога.
Это предназначено для того, чтобы облегчить разработчикам создание бесплатных продуктов на основе базового дистрибутива.
Еще одна часть программного обеспечения предостаемая компанией Suse. Open Build Service (OBS) может быть интегрирована непосредственно в OpenSUSE. Сервис дает пользователю возможность создавать пакеты для дистрибутива. Он включает в себя неисчерпаемый пул приложений, библиотек и инструментов.
Таким образом, вряд ли найдется какое-либо приложение, созданное и предоставленное в рамках сервиса другими пользователями.
В связи с изменением базы, период поддержки также был скорректирован. Новая версия будет поставляться с долгосрочным обслуживанием в течение нескольких лет — как минимум три.
Разработка
Сборка пакетов
Сборка пакетов это жизненные силы для проекта. Это процесс с помощью которого программное обеспечение попадает в openSUSE и становится доступным для установки с DVD или интернет репозиториев. Одно из преимуществ openSUSE — свежие пакеты KDE, которые часто обновляются из KDE SVN для исправлениями ошибок перед тем, как становятся доступными в качестве релиза.
Многие пакеты из состава KDE Core собираются командой KDE, а программное обеспечение от третьих сторон, например из kde-apps.org, доступно в репозиториях Сообщества.
- Package Wishlist KDE
- Typical spec files for KDE 3.x packages
- Typical spec files for KDE 4.x packages (TBD)
- Packaging Cookbook for KDE on openSUSE
- KDE4 Packaging Macros
Building KDE Yourself
KDE:KDE4:UNSTABLE:Desktop в Build Service содержит новейшие пакеты из KDE 4.4 SVN. Однако, если Вы хотите сделать что-то большее, чем просто попробовать KDE 4, Вы можете самостоятельно скомпилировать KDE 4 из исходных кодов:
Руководство по компиляции KDE в openSUSE
Идеи и планы
KDE в составе openSUSE развивается и открыто для будущего. Помните, ВАШ вклад важен — участвуйте в обсуждении!
- Challenges — общие обзоры изменений
- KDE on openSUSE 11.3 — мнения и идеи о KDE в openSUSE 11.3
- KDE on openSUSE 11.2 — мнения и идеи о KDE в openSUSE 11.2
4. Легкая установка программ в OpenSUSE Build Service
Linux — не очень простая платформа для распространения своих программ. Не так сложно написать программу, которая работает, но нужно собрать версии для каждого дистрибутива, поскольку каждый использует различные инструменты сборки и упаковки, разные библиотеки, а также имеет другие особенности. Поддержка всего может создать много проблем.
Разработчики из компании Canonical и Red Hat решили что могут исправить эту проблему с помощью универсальных пакетов. Это значит что программа будет содержать все необходимые ей компоненты и работать независимо от дистрибутива.
OpenSUSE придерживается немного другого подхода. В течение десяти лет разработчики создали такую платформу, на которой другие разработчики могут загружать туда свои программы не заботясь об отличиях в дистрибутивах. Обо всем позаботится система.
Это еще одна причина использовать OpenSUSE, но это больше плюс в пользу экосистемы в целом. Большая часть программного обеспечения будет работать в OpenSUSE без изменений.
Walk-through
Авторизация
При первом запуске osc запросит у вас некоторые сведения и сохранит их в файле ~/.oscrc. Пароль сохраняется в виде обычного, текста поэтому соответствующим образом отнеситесь к защите этого файла и всей файловой системы.
Было зафиксировано, что python-keyring и авторизация с помощью Gnome keyring не работает. Чтобы обойти эту проблему нужно удалить python-keyring и добавить строку gnome_keyring=1 вместо keyring=1 в секции описания сервера.
Примеры использования
Простые примеры по использованию osc приведены ниже. Более сложные примеры приводятся в статье Руководство по использованию службы сборки.
Получить справку об использовании команды можно так:
osc help osc help <cmd>
Получить информацию о содержимом сервера:
osc ls # список проектов osc ls Apache # список пакетов в конкретном проекте osc ls Apache subversion # список файлов конкретного пакета
Получить данные с сервера:
osc co Apache # весь проект osc co Apache subversion # пакет osc co Apache subversion foo # конкретный файл
Обновить рабочий каталог
osc up osc up <директория> osc up * # находясь внутри каталога проекта, обновить все пакеты osc up # находясь внутри каталога проекта, обновить все пакеты и проверить наличие новых пакетов
Отправить измененные данные на сервер:
osc ci # в текущем каталоге osc ci <файл1> <файл2> # только для указанных файлов osc ci <каталог1> <каталог2> ... # для нескольких проектов osc ci -m "обновлен foobar" # указав комментарий
Просмотр истории фиксаций:
osc log
Показать статус (какие файлы были изменены локально)
osc st osc st <директория>
Если при обновлении нельзя автоматически объединить правки, то состояние таких файлов помечаются ‘C’ (конфликт), а место возникновения неоднозначности помечается строками и .
После ручного разрешения проблемы используйте
osc resolved <проблемный_файл>
Добавить или удалить файлы при следующей фиксации:
osc add foo osc rm foo
Добавить все новые и удалить несуществующие файлы в локальной копии:
osc addremove
Сформировать список изменений:
osc diff
Показать статус сборки пакета
osc results osc results <платформа>
Показать журнал сборки (находясь в директории пакета)
osc buildlog <платформа> <архитектура>
Эта статья содержит фрагменты на иностранном языке. Вы можете помочь переведя её до конца. (cм. руководство по переводу) |
Show the URLs of .repo files which are packages sources for Yum/YaST/smart
osc repourls
Запустить пересборку пакетов для всех репозиториев/архитектур:
osc rebuildpac
Собрать пакет локально для указанной платформы:
osc build <platform> <arch> <specfile>
Show the configured platforms/build targets.
osc platforms
Показать доступные цели сборки для текущего проекта:
osc repos
Показать мета-информацию:
osc meta prj <проект> osc meta pkg <проект> <пакет> osc meta user <пользователь> osc meta prjconf <проект>
osc meta prj -e <project> osc meta pkg -e <project> <package> osc meta prjconf -e <project>
(The project configuration (prjconf) may well be empty. It is needed in special cases only.)
Обновить метаданные пакеты используя данные из spec-файла:
osc updatepacmetafromspec <dir>
Расскажите о нас!
Как помочь OpenSUSE? Разместите нашу кнопку на своем сайте, блоге, профиле или других веб-сайтах Интернета!
- Список пользователей в Twitter
- Список пользователей в Identica
- Список пользователей в Facebook
чтобы другие пользователи openSUSE могли узнать о вас и могли воспользоваться существующим/новым соответствующим аккаунтом для общения. Так что Вы все можете нести наше слово миру.
Если у вас есть свой блог, то постарайтесь выделить несколько мнут и описать в своем блоге о том, как вы используете OpenSUSE!
Присоединяйтесь к нам на одном из Праздновании выхода 11.2 или организуйте свое собственное.
Настройка и дополнительные репозитарии
Suspend
To get suspend to disk and RAM to work you just need to add
Version: 11.1 |
Version: 11.0 |
Version: 10.3 |
Suspend to RAM works quite well (by using the hotkey and/or closing the cover), but you need to add some code to the power management in e.g. /etc/pm/sleep.d/60eeepc (script adapted from original Xandros):
#!/bin/bash case $1 in hibernate) /etc/init.d/network stop /sbin/modprobe -r ath_pci #/sbin/modprobe -r ndiswrapper ;; suspend) /etc/init.d/network stop /sbin/modprobe -r ath_pci #/sbin/modprobe -r ndiswrapper ;; thaw) /sbin/modprobe ath_pci #/sbin/modprobe ndiswrapper /etc/init.d/network start /etc/init.d/acpid restart # hotkeys do not work after resume, /etc/acpi ;; resume) /sbin/modprobe ath_pci #/sbin/modprobe ndiswrapper /etc/init.d/network start /etc/init.d/acpid restart # hotkeys do not work after resume, /etc/acpi ;; *) echo "EeePC power management script called incorrectly." ;; esac
Problems:
- Resume fails if the camera is in use (e.g. by Skype)
- Suspend to RAM does not work if openSUSE is installed on the SDHC card, because internally the SDHC adapter is connected via USB and cannot be unmounted.
Беспроводная связь (WLAN), Звук (Alsa), Ethernet, ACPI
WLAN needs the madwifi package from this repository:
and to keep updates:
The appleonkel repositories contain also packages for Alsa, Ethernet and ACPI drivers.
For starting the asus_acpi module at system startup, you should add it to the file /etc/sysconfig/kernel:
MODULES_LOADED_ON_BOOT="asus_acpi"
To get WLAN working again after disconnecting it with Fn+F2, you must have started the EeePC with the wireless card deactivated in the bios. If not, you can get an error like ‘Hardware didn’t respond as expected’ (HAL status 3)
ath5k
The ath5k driver in openSUSE 11.1 still does not work correctly with the wifi card in the 701. When the module is installed it creates the wlan0 device (as well as the controlling device), but it will not successfully connect to an access point.
ndiswrapper
Ndiswrapper does work on 11.1
CPUFreq
The CPU in the eeePC supports CPUFreq via the p4-clockmod driver. For some reason, this is not probed for by default by haldaemon, so you’ll need to edit part of /etc/rc.d/haldaemon to read:
function load_cpufreq_driver()
{
CPUFREQ_MODULES="p4_clockmod speedstep_centrino powernow_k8 powernow_k7 powernow_k6 longrun speedstep_ich acpi_cpufreq" CPUFREQ_MODULES_GREP="^p4_clockmod\|^speedstep_centrino\|^speedstep_ich\|^powernow_k8\|^powernow_k7\|^powernow_k6\|^longrun\|^longhaul\|^acpi_cpufreq" ###### load CPUFREQ modules############
Please note that some users on other distributions have reported instability using this driver. I, however, am using it right now on OpenSUSE 10.3 and have no issues. YMMV.
Веб-камера
To activate the camera you first have to turn it on in the BIOS.
Then add
and to keep updates
to you repositories and install the «uvcvideo-kmp-default» package.
After a reboot the camera should work out of the box (tested with kopete). The camera works in Skype but not in ucview.
Add this to your repository and install the «eeeFancontrol» package. After a reboot or by running /etc/init.d/eeefanctrl start the script will control the fan.
Информация о пакетах
From Evergreen:11.4 we decided to follow openSUSE maintenance workflow. So if you want to update packages for Evergreen supported distribution version which is higher then 11.2 follow steps below.
Версия 11.4 и выше
Как правило, вы просто хотите обновить некоторые Evergreen пакеты. Тогда вы должны создать ветку обслуживания, как для регулярного проекта openSUSE. Но для Evergreen есть и другие атрибуты, где osc должен искать затронутые пакеты и обновления проекта.
Примечание: для создания пакетов рекомендуется использовать OSC командной строки.
Последовательность выполняемых действий должно выглядеть так:
создание ветки обслуживания:
osc mbranch -u Evergreen:UpdateProject -a Evergreen:Maintained $PACKAGE
проверка и локальная загрузка ветки:
osc co home:LOGIN:branches:Evergreen_Maintained:$PACKAGE
наличие исходников всего проекта, поддерживаемого Evergreen под атрибутом:
home:LOGIN:branches:Evergreen_Maintained:$PACKAGE
- обновление исходников, добавление патчей, тестирование сборки, регистрации изменений в *.changes-файле и т.д.; \
- регистрация своих пакетов на сервере:
osc ci
создание или обновление patchinfo пакета:
cd home:LOGIN:branches:Evergreen_Maintained:$PACKAGE; osc patchinfo
отправка локально созданного patchinfo пакета:
osc ci
запрос на начало обслуживания события Evergreen проекта:
osc mr -a Evergreen:MaintenanceProject
Состояние обновления
Краткий обзор текущего состояния обновления с исправленными или улучшенными пакетами показан на странице Evergreen 11.1 и Evergreen 11.2.
Что необходимо
Version: 10.3 |
и выше |
- Любой приличный десктоп/сервер, примерно 1 GB ОЗУ на каждые 5 тонких клиентов.
- Тонким клиентом может служить любой PC с возможностью PXE загрузки, 128 MB ОЗУ желательно, но можно попробывать и меньше, если будет работать у Вас.
- Есть ограничение на число клиентов, которые можно загрузить с одного сервера. Сервер с 4Gb ОЗУ может обслуживать 60 тонких клиентов.
- LTSP сервера/клиенты лучше собирать в отдельной сети. Не используйте рабочую сеть для экспериментов с kiwi-ltsp.
- openSUSE 10.3 или openSUSE 11.0A2 и выше i386 DVD диск или iso образ. (Необязательно, если используете prebuilt образ. Все другое работать не будет, включая интернет-репозитарии)
- Сервер необходимо подключить к интернет, для получения пакетов, которые будут установлены.
- SSH, tftp, dhcp, nfs службы должны быть запущенны, а порты используемые ими открыты в фаерволе на данном сервере на интерфейсе в локальной сети. Лучше вовсе отключить фаервол на этом интерфейсе.
Что внутри?
openSUSE 11.2 также содержит новые и обновленные драйвера для поддержки вашего оборудования, позволяющие openSUSE работать с большим количеством новых устройств
Кроме того, особое внимание было уделено рынку нетбуков, и новые драйверы позволят openSUSE работать лучше на более широком их круге.. Новое desktop-ядро — рабочие станции и серверы могут использовать одно и то же ядро, но все же лучше его настроить для работы в конкретной ситуации
Вот почему OpenSUSE включает специально настроенное desktop-ядро для пользователей настольных ПК.
Новое desktop-ядро — рабочие станции и серверы могут использовать одно и то же ядро, но все же лучше его настроить для работы в конкретной ситуации. Вот почему OpenSUSE включает специально настроенное desktop-ядро для пользователей настольных ПК.
Отслеживание пакетов
C osc также можно управлять пакетами в стиле svn. Эта возможность называется отслеживание пакетов и должна быть включена в ~/.oscrc’s секции
# manage your packages in a svn like way do_package_tracking = 1
Добавить новый пакет в проект
osc mkpac <package>
Добавить существующую директорию и её файлы в проект
osc add <directory>
Удалить пакет и его файлы из проекта
osc deletepac <package>
Все вышеприведенные команды изменяют только вашу локальную рабочую копию. Чтобы отправить изменения в buildservice, вам необходимо зафиксировать их ().
Команда status также отображает состояние пакетов
osc st
Установка
openSUSE вместе с KDE
Можно установить openSUSE вместе с KDE используя следующие загрузочные Live CD, которые содержат утилиты для установки на жесткий диск:
openSUSE 15.2 KDE 4 Reloaded Live-CDs
Обновление KDE к текущей версии
Используйте эту ссылку для обновления к наиболее новой версии KDE.
Обновление openSUSE KDE
Руководство по обновлению KDE до последней версии находится здесь.
Переход на KDE
Ищите приложения с более широкими функциональностью и контролем для своего рабочего стола? Обратите внимание на руководство по установке KDE из других рабочих окружений.
Репозитории Open Build Service
KDE/Репозитории содержит список репозиториев KDE.
Все перечисленные там репозитории можно использовать как источники для Zypper или YaST, или либого другого менеджера пакетов (например Smart), не забудьте убедится, что вы используете репозиторий именно для вашей версии дистрибутива (например для openSUSE_10.3).
Это пакеты из самого последнего , они обновляются каждую неделю. Это является идеальным решением для тех программистов, которые хотят разрабатывать приложения KDE, с легкостью используя последние библиотеки KDE(kdelib), и поддерживая пакеты.
Что такое программное решение (software appliance)?
Программное решение — это, предварительно сконфигурированная комбинация:
- операционной системы (например SUSE Linux Enterprise Server);
- приложений (например базы данных, браузера);
- общих настроек.
Эти составляющие объединяются в единый образ для последующей установки на стандартные аппаратные средства.
Если установка предполагается на сервере, то подготавливается простой образ программного решения (software appliance).
Если на гипервизоре или в облачной вычислительной сети, то имеется возможность создания образа виртуальной машины (virtual appliance) для запуска на платформах виртуализации.
Сервер и другое программное обеспечение
В дополнение к возможности запуска OpenSUSE на рабочем столе, дистрибутив также позволяет установку в качестве сервера. Почти все серверы, которые предоставляет OpenSuse Leap 15, либо предварительно сконфигурированы, либо поставляются с практически функциональной установкой.
Особенно приятными для пользователей должны быть многие модули в инструменте управления YaST.
Универсальный инструмент также доступен в OpenSUSE Leap 15 в различных вариантах и может использоваться как в графической среде, так и в командной строке. Естественно, использование инструмента в среде Ncurses менее интуитивно понятно.
Особенно приятно, что Yast предлагает те же функции в командной строке, что и в графической среде. Пользователю не нужно обходиться без функций на консоли — как и во многих других инструментах производителя.
Suse еще раз включил модули Yast для настройки AppArmor, Cluster, File, DHCP, Printer, FTP, HTTP, Inetd, iSCSI, LDAP, системные, почтовые, сетевые, NFS, NTP, прокси, сканер, SLP, звуковые, Squid или серверы или сервисы хранения.
Однако качество инструментов значительно отличается. В то время как некоторые модули допускают только минимальные настройки, другие допускают очень сложную конфигурацию.
Для тщательной настройки и продуктивного использования следует обратиться к соответствующей технической литературе.
Одним из наиболее важных нововведений в текущем SUSE является преобразование конфигурации брандмауэра. После того, как SUSE реализовал дополнительную поддержку для firewalld в Leap, инструмент теперь полностью интегрирован.
Старый по-прежнему включен в дистрибутив, но не устанавливается по умолчанию, что отражается в конфигурации. Инструментарий теперь также является неотъемлемой частью.
Еще одно изменение — это переход с ntpd на chrony. Он затрагивает всех пользователей AutoYast, так как требует обновления профилей. Для корпоративных клиентов может быть интересна возможность обновления установок до SUSE Linux Enterprise.
Прежде всего, системным интеграторам будет предоставлена возможность упростить разработку кода. Впоследствии, и преобразование для сертификации или расширенной долгосрочной поддержки.
Other Methods
Zypper
Since openSUSE 10.2, you can also use the command line tool named zypper to add repositories:
zypper ar <URL_to_your_repo_file>
For example:
For more information, use
zypper help ar
To install packages, use
zypper ref zypper in packagname
To list packages in your OBS repo, or search in them, use
zypper se -r your-OBS-repo-alias
If you don’t know the alias yet, you’ll find out using zypper repos.
Smart
smart channel --add http://download.opensuse.org/repositories/<projectname>/<directory>/<project>.repo
You must include the gpg key
rpm --import http://download.opensuse.org/repositories/<projectname>/<directory>/repodata/repomd.xml.key
To install a package you need to call
smart update smart install <package> smart upgrade # Performs an upgrade of all installed packages using the new repositories.
yum
YUM can use the repositories after the generated .repo file got copied into the /etc/yum.repos.d/ directory.
Afterwards you can use yum commandline tools or GUI tools like kyum.
APT
First we need apt and apt-libs. Both packages can be found on the DVD. The graphical front-end for Apt — Synaptic — is missing for an unknown reason, so we must be content with the command line version.
In a further step we launch:
install-apt4suse --update-srclist
which updates the current list of mirrors. The result can be checked in /etc/apt/sources.list. The following table shows the commands which can be used with APT:
apt-get update | Creates a list of available packets |
apt-get upgrade | Updates pre-installed packets by newer versions |
apt-get -s upgrade | Shows more details about what is to be updated |
apt-get -s install «packet name» | Shows more details about what is to be installed |
apt-get install «packet name» | Installs a packet |
apt-get reinstall «packet name» | Re-installs a packet |
apt-get remove «packet name» | Removes a packet |
apt-get clean | Cleanup of the buffered setups |
In case of errors with GPG during the installation process open the file
/etc/apt/apt.conf.d/gpg-checker.conf
and change the entry
GPG::Check true;
to
GPG::Check false;
The usage of APT is faster and more transparent to end users compared to YaST and the new ZEN installer.
deb based repositories
Debian or distributions based on it use apt or newer derivates to manage installed software. To use packages from the Open Build Service. You should repositories to the /etc/apt/sources.list in order to use apt-get to install your package.
For example, if you want to add the kraft repository to a Debian distro, add the following line to sources.list:
For Ubuntu change the last field with the Ubuntu directory
Yes, we do plan to implement a nice search in software.opensuse.org.
We do also plan to write a GUI tool for easier searching, browsing and repository subscriptions.
Configuration migration
Version 0.114 got some cleanups for the configfile handling and therefore some options are now deprecated, namely:
- apisrv
- scheme
One new option was added:
apiurl = :// # use this as the default apiurl. If this option isn’t specified the default (https://api.opensuse.org) is used.
So far osc still has some backward compatibility for these options but it might get removed in the future that’s why it issues a deprecation warning in case one of those options is still in use.
The new configuration scheme looks like the following:
# entry for an apiurl [<protocol>://<apiurl>] user = <username> password = <password> ...
Before starting the migration please save your ~/.oscrc file!
Migration case I (apisrv only)
The apisrv option is used to specify the default apihost. If apisrv isn’t specified at all the default («api.opensuse.org») is used.
The current section looks like this:
... apisrv = <somehost> # or apisrv = <protocol>://<somehost>
apisrv got superseded by the new apiurl option which looks like this:
... apiurl = <protocol>://<somehost>
If apisrv has no «<protocol>» https is used. Make sure all apiurl sections have the new format which is described above. Afterwards apisrv can be removed.
Migration case II (scheme only)
The current section looks like this:
... scheme = <protocol>
This means every apiurl section which don’t have the new format which is described above for instance
user = <username> password = <password> ...
has to be converted to
[<protocol>://<somehost>] user = <username> password = <password> ...
Afterwards the scheme option can be removed from the section (it might be the case that some sections already have the correct format).
Migration case III (apisrv and scheme)
The current section looks like this:
... apisrv = <somehost> scheme = <protocol>
Both options can be removed if all apiurl sections have the new format which is described above. So basically just adjust all apiurl sections (it might be the case that some sections already have the correct format).