-
Notifications
You must be signed in to change notification settings - Fork 102
Install the latest documentation toolchain
This installation covers installation of the latest 2025 of the local devel tool-chain on a fresh OpenSUSE Leap 15.6 or Ubuntu 24.04 system with no additional packages installed.
💡
|
This method is intended solely for tooling development and maintenance! This stack can be used locally for building. However, we strongly recommend using the following container for regular contributions: Container: Uyuni Docs Helper |
On a fresh system:
-
Install Git:
sudo zypper in git
-
Clone the doc repo:
git clone [email protected]:uyuni-project/uyuni-docs.git
-
Install the Required patterns:
sudo zypper in -t pattern devel_C_C++ devel_python3 devel_perl
ℹ️You can search for available patterns with:
sudo zypper search -t pattern
-
Install required libraries:
sudo zypper install libyaml-devel sqlite3-devel readline-devel libopenssl-devel
-
Install rbenv the ruby version manager:
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
-
Add rbenv to path:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
-
Add init to bashrc:
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
-
Update terminal with latest bashrc:
source ~/.bashrc
-
Install rbenv ruby-build tools:
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
-
List ruby versions:
> rbenv install -l ... 2.7.7 3.0.5 3.1.3 3.2.0 ...
-
Install Ruby:
rbenv install 3.0.0
ℹ️Ruby 3.0.0 build depends on libopenssl 1.0.0 and libopenssl-devel 1.0.0. If Ruby 3.0.0 installation fails, install libopenssl-devel 1.0.0 with yast or zypper. In case of a package conflict, remove a later devel package temporarily. After Ruby installation you can re-install any other devel version again.
-
Set global version of ruby:
rbenv global 3.0.0
-
Install po4a (Requires >= 0.62 or you will encounter build failures):
sudo zypper install -n po4a
-
Install perl libraries. Run each of the following commands one at a time:
sudo cpan install Locale::gettext sudo cpan install Text::WrapI18N sudo cpan install Term::ReadKey sudo cpan install Unicode::GCString
Add Locales
sudo locale-gen ja_JP.UTF-8 zh_CN.UTF-8 ko_KR.UTF-8
sudo update-locale
locale -a | grep -E "ja_JP|zh_CN|ko_KR"
Install image optimization libraries:
sudo zypper install -n GraphicsMagick GraphicsMagick-devel
-
Install Git:
sudo apt update sudo apt install git git --version
-
Clone the doc repo:
git clone [email protected]:uyuni-project/uyuni-docs.git
Install Build Essentials:
sudo apt update
sudo apt install -y build-essential python3-dev libperl-dev libssl-dev
-
Install required libraries:
sudo apt update sudo apt install -y libyaml-dev libsqlite3-dev libreadline-dev
-
Install rbenv the ruby version manager:
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
-
Add rbenv to path:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
-
Add init to bashrc:
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
-
Update terminal with latest bashrc:
source ~/.bashrc
-
Install rbenv ruby-build tools:
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
-
List ruby versions:
> rbenv install -l ... 2.7.7 3.0.5 3.1.3 3.2.0 ...
-
Install Ruby:
rbenv install 3.0.0
-
Set global version of ruby:
rbenv global 3.0.0
Install image support libraries:
sudo apt install graphicsmagick graphicsmagick-libmagick-dev-compat
This tools are required for build localized versions of documentation.
-
Install perl libraries. Run each of the following commands one at a time:
sudo cpan install Locale::gettext sudo cpan install Text::WrapI18N sudo cpan install Term::ReadKey sudo cpan install Unicode::GCString
Add Locales
sudo locale-gen ja_JP.UTF-8 zh_CN.UTF-8 ko_KR.UTF-8
sudo update-locale
locale -a | grep -E "ja_JP|zh_CN|ko_KR"
-
Install NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
-
Update terminal:
source ~/.bashrc
-
Install LTS version of node:
nvm install --lts
-
Use the latest version of node (prevents conflicts with older versions of antora):
nvm use --lts
-
Install antora 3.1:
npm i -g @antora/[email protected] @antora/[email protected]
-
Install Lunrjs extension:
npm i -g @antora/lunr-extension
-
Install Ruby Asciidoctor:
gem install asciidoctor -v 2.0.17
-
Install Asciidoctor tabs
npm i -g @asciidoctor/tabs
