-
Notifications
You must be signed in to change notification settings - Fork 59
CondinAPT MiniOS it
Questo documento descrive gli aspetti specifici dell'utilizzo di CondinAPT nel sistema di build di MiniOS.
📚 Documentazione principale: Per le funzionalità di base di CondinAPT, consulta il documento principale
CondinAPT.md
- Integrazione con il sistema di build di MiniOS
- Configurazione di MiniOS
- Utilizzo nei moduli
- Esempi per MiniOS
CondinAPT è uno strumento standard per l'installazione dei pacchetti nei moduli MiniOS. Si integra nel processo di build tramite l'interfaccia standard dei moduli.
Nello script di installazione del modulo (install):
#!/bin/bash
set -e
<a id="load-minios-library"></a>
# Load MiniOS library
. /minioslib || exit 1
<a id="install-packages-via-condinapt"></a>
# Install packages via CondinAPT
/linux-live/condinapt \
-l "$CWD/packages.list" \
-c /linux-live/build.conf \
-m /linux-live/condinapt.mapOgni modulo in /linux-live/scripts/ segue una struttura standardizzata:
XX-module-name/
├── packages.list # Package list with conditions
├── install # Installation script (uses CondinAPT)
├── rootcopy-install/ # (optional) Files to copy
└── rootcopy-postinstall/ # (optional) Files after installation
d=DISTRIBUTION
da=DISTRIBUTION_ARCH
dt=DISTRIBUTION_TYPE
de=DESKTOP_ENVIRONMENT
pv=PACKAGE_VARIANT
ik=INSTALL_KERNEL
kf=KERNEL_FLAVOUR
ka=KERNEL_AUFS
kbd=KERNEL_BUILD_DKMS
ib=INITRAMFS_BUILDER
lo=LOCALE
ml=MULTILINGUAL
kl=KEEP_LOCALES
Principali variabili da build.conf:
-
DISTRIBUTION- distribuzione di destinazione (bookworm, trixie, jammy, noble) -
DISTRIBUTION_ARCH- architettura (amd64, i386, i386-pae) -
DESKTOP_ENVIRONMENT- ambiente desktop (core, flux, xfce, lxqt) -
PACKAGE_VARIANT- variante del pacchetto (minimum, standard, toolbox, ultra) -
INSTALL_KERNEL- installa il pacchetto kernel (true/false) -
KERNEL_FLAVOUR- tipo di kernel (none, rt, cloud) -
KERNEL_AUFS- supporto AUFS (true/false) -
KERNEL_BUILD_DKMS- compila moduli DKMS (true/false) -
INITRAMFS_BUILDER- generatore initramfs (livekit, dracut) -
LOCALE- locale di sistema (C, en_US, ru_RU, es_ES, pt_BR) -
MULTILINGUAL- supporto multilingua (true/false) -
KEEP_LOCALES- mantieni le localizzazioni (true/false)
Variabili calcolate automaticamente (da minioslib):
-
DISTRIBUTION_TYPE- tipo di distribuzione (debian, ubuntu) - determinato automaticamente in base aDISTRIBUTION-
legacy: stretch, buster, orel, bionic -
current: bullseye, bookworm, focal, jammy, noble -
future: trixie, kali-rolling, sid
-
packages.list:
<a id="basic-multimedia-codecs---always"></a>
# Basic multimedia codecs - always
gstreamer1.0-plugins-base
gstreamer1.0-plugins-good
<a id="additional-codecs---not-for-minimal-variant"></a>
# Additional codecs - not for minimal variant
gstreamer1.0-plugins-bad -pv=minimum
gstreamer1.0-plugins-ugly -pv=minimum
gstreamer1.0-libav -pv=minimum
<a id="professional-tools---only-for-toolbox-and-ultra"></a>
# Professional tools - only for toolbox and ultra
audacity +{pv=toolbox|pv=ultra}
kdenlive +{pv=toolbox|pv=ultra} +{de=xfce|de=lxqt}
---
<a id="distribution-specific-packages-from-backports"></a>
# Distribution-specific packages from backports
ffmpeg @bookworm-backports +d=bookworm
packages.list:
<a id="basic-drivers"></a>
# Basic drivers
mesa-utils
xserver-xorg-video-all
<a id="nvidia-drivers---only-for-non-free-distributions"></a>
# NVIDIA drivers - only for non-free distributions
nvidia-driver +d=bookworm -{pv=minimum&de=core}
<a id="amd-drivers---for-modern-distributions"></a>
# AMD drivers - for modern distributions
firmware-amd-graphics +{d=trixie|d=noble}
mesa-vulkan-drivers +{d=trixie|d=noble}
<a id="old-drivers---for-old-systems"></a>
# Old drivers - for old systems
xserver-xorg-video-radeon +d=bookworm
packages.list:
<a id="basic-locales---always"></a>
# Basic locales - always
locales
<a id="russian-localization"></a>
# Russian localization
language-pack-ru +lo=ru_RU
fonts-liberation +lo=ru_RU
firefox-esr-l10n-ru +lo=ru_RU +{de=xfce|de=lxqt}
<a id="multilingual-support"></a>
# Multilingual support
task-russian +ml=true +lo=ru_RU
hunspell-ru +ml=true +lo=ru_RU
<a id="keeping-locales"></a>
# Keeping locales
vlc-l10n +kl=true +{pv=toolbox|pv=ultra}
<a id="regional-settings-for-different-locales"></a>
# Regional settings for different locales
language-pack-pt +lo=pt_BR
language-pack-de +lo=de_DE
language-pack-fr +lo=fr_FR
packages.list:
<a id="dkms-modules-with-kernel-and-distribution-conditions"></a>
# DKMS modules with kernel and distribution conditions
ntfs3-dkms -ka=true -d=buster -d=trixie -d=sid
zfs-dkms +{pv=toolbox|pv=ultra} +da=amd64 +kbd=true -kf=none
<a id="drivers-for-old-systems"></a>
# Drivers for old systems
broadcom-sta-dkms -d=jammy -ka=true -da=i386
aufs-dkms +dt=debian +d=buster
<a id="exclusion-for-new-distributions"></a>
# Exclusion for new distributions
realtek-rtl8821cu-dkms -d=trixie -d=sid
firmware-b43-installer -d=bionic
<a id="complex-alternatives-with-filters"></a>
# Complex alternatives with filters
exfatprogs -pv=minimum || exfat-utils -pv=minimum && exfat-fuse -pv=minimum
<a id="localization-with-exclusions-and-conditions"></a>
# Localization with exclusions and conditions
vlc-l10n -lo=en_US +{pv=toolbox|pv=ultra}
language-pack-gnome-ru-base +lo=ru_RU +dt=ubuntu
language-pack-gnome-ru-base +ml=true +dt=ubuntu
language-pack-gnome-ru-base +kl=true +dt=ubuntu
Raggruppamento per funzionalità:
#=== Core System ===
systemd +pv=standard +pv=toolbox +pv=ultra
dbus
#=== Desktop Environment ===
xfce4-panel +de=xfce
lxqt-panel +de=lxqt
fluxbox +de=flux
#=== Applications by Variant ===
firefox-esr +{pv=standard|pv=toolbox|pv=ultra}
thunderbird +{pv=toolbox|pv=ultra}
libreoffice +pv=ultra
Nel contesto del modulo MiniOS, sono disponibili le seguenti variabili:
-
$CWD- directory corrente del modulo -
$LIVEKITNAME- nome del sistema (solitamente "minios") -
$MODULE- nome del modulo corrente
#!/bin/bash
set -e
<a id="load-minios-library-1"></a>
# Load MiniOS library
. /minioslib || exit 1
<a id="check-module-conditions"></a>
# Check module conditions
if [ "$PACKAGE_VARIANT" = "minimum" ] && [ "$DESKTOP_ENVIRONMENT" = "core" ]; then
echo "Skipping module for minimal core build"
exit 0
fi
<a id="install-packages"></a>
# Install packages
/linux-live/condinapt \
-l "$CWD/packages.list" \
-c /linux-live/build.conf \
-m /linux-live/condinapt.mapPer informazioni complete sulle funzionalità di CondinAPT, consulta il documento principale CondinAPT.md
🌐 Languages
📋 About MiniOS
🚀 Installation
⚙️ Configuration
🛡️ Administration
🛠️ Development
📋 Über MiniOS
🚀 Installation
- Schnellstartanleitung
- Hardware-Kompatibilität
- MiniOS Installation
- MiniOS Installer
- USB-Erstellungstools
⚙️ Konfiguration
🛡️ Administration
🛠️ Entwicklung
📋 Acerca de MiniOS
🚀 Instalación
- Guía de Inicio Rápido
- Compatibilidad de Hardware
- Instalando MiniOS
- Instalador de MiniOS
- Herramientas para Crear USB
⚙️ Configuración
- Menús de Arranque
- Parámetros de Arranque
- Archivo de Configuración
- Parámetros de live-config
- Gestión de Sesiones
🛡️ Administración
- Lista de Paquetes
- Gestión del Kernel
- Endurecimiento de Seguridad
- Optimización de Rendimiento
- Virtualización
🛠️ Desarrollo
📋 À propos de MiniOS
🚀 Installation
- Guide de démarrage rapide
- Compatibilité matérielle
- Installation de MiniOS
- Programme d’installation MiniOS
- Outils de création USB
⚙️ Configuration
- Menus de démarrage
- Paramètres de démarrage
- Fichier de configuration
- Paramètres live-config
- Gestion de session
🛡️ Administration
- Liste des paquets
- Gestion du noyau
- Renforcement de la sécurité
- Optimisation des performances
- Virtualisation
🛠️ Développement
📋 Tentang MiniOS
🚀 Instalasi
- Panduan Mulai Cepat
- Kompatibilitas Perangkat Keras
- Menginstal MiniOS
- Installer MiniOS
- Alat Pembuatan USB
⚙️ Konfigurasi
🛡️ Administrasi
🛠️ Pengembangan
📋 Informazioni su MiniOS
🚀 Installazione
- Guida Rapida
- Compatibilità Hardware
- Installazione di MiniOS
- Installatore MiniOS
- Strumenti per Creare USB
⚙️ Configurazione
🛡️ Amministrazione
- Elenco Pacchetti
- Gestione Kernel
- Rafforzamento della Sicurezza
- Ottimizzazione Prestazioni
- Virtualizzazione
🛠️ Sviluppo
📋 Sobre o MiniOS
🚀 Instalação
- Guia de Início Rápido
- Compatibilidade de Hardware
- Instalando o MiniOS
- Instalador do MiniOS
- Ferramentas de Criação de USB
⚙️ Configuração
- Menus de Boot
- Parâmetros de Boot
- Arquivo de Configuração
- Parâmetros live-config
- Gerenciamento de Sessão
🛡️ Administração
- Lista de Pacotes
- Gerenciamento de Kernel
- Reforço de Segurança
- Otimização de Desempenho
- Virtualização
🛠️ Desenvolvimento
📋 О MiniOS
🚀 Установка
- Краткое руководство
- Совместимость с оборудованием
- Установка MiniOS
- Установщик MiniOS
- Инструменты для создания USB
⚙️ Конфигурация
🛡️ Администрирование
🛠️ Разработка