Files
voculinux/install.d/package_map.sh
T
5e97773ebb fix(installer): install cairo headers on suse, void, solus and alpine (#937)
The pinned pycairo builds from source everywhere, and the sdist needs
cairo.pc. Fedora, mageia and the debian/ubuntu maps list the headers
explicitly; suse relied on gobject-introspection-devel pulling
pkgconfig(cairo) transitively, which the current Tumbleweed image no
longer does, so the opensuse/tumbleweed install gate now fails at
"Dependency cairo not found" during pycairo metadata generation.
void, solus and alpine have the same latent gap; each gets the same
package spelled in its own convention.

Co-authored-by: Jatin K Malik <jatinkrmalik@gmail.com>
2026-10-09 00:53:02 -07:00

130 lines
6.5 KiB
Bash

#!/bin/bash
# Generated by scripts/generate_distro_package_map.py -- do not edit.
# Regenerate with `just distro-packages` after editing
# scripts/distro-package-map.yaml.
DEBIAN_13_PLUS_PROBE_PACKAGE=libgirepository-2.0-dev
load_distro_package_map() {
local package_map_key="$1"
SYSTEM_PACKAGES=()
APPINDICATOR_PACKAGES=()
GI_DEVELOPMENT_PACKAGES=()
OPTIONAL_SYSTEM_PACKAGES=()
PYTHON_PIP_SUFFIX=""
PYTHON_GOBJECT_SUFFIX=""
PYTHON_GOBJECT_CAIRO_SUFFIX=""
PYTHON_DEVEL_SUFFIX=""
PYTHON_VIRTUALENV_SUFFIX=""
PYTHON_VENV_SUFFIX=""
SHADER_COMPILER_PACKAGES=()
VULKAN_PACKAGES=()
XDOTOOL_PACKAGES=()
WTYPE_PACKAGES=()
YDOTOOL_PACKAGES=()
case "$package_map_key" in
ubuntu)
SYSTEM_PACKAGES=(python3-pip python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-ibus-1.0 libcairo2-dev cmake python3-dev build-essential portaudio19-dev python3-venv pkg-config wget curl unzip vulkan-tools libvulkan-dev xclip xsel wl-clipboard libssl-dev autoconf automake libtool patchelf)
APPINDICATOR_PACKAGES=(gir1.2-appindicator3-0.1 gir1.2-ayatanaappindicator3-0.1)
GI_DEVELOPMENT_PACKAGES=(libgirepository-2.0-dev libgirepository1.0-dev)
OPTIONAL_SYSTEM_PACKAGES=(util-linux-extra)
SHADER_COMPILER_PACKAGES=(glslc glslang-tools)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
debian_12)
SYSTEM_PACKAGES=(python3-pip python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-ibus-1.0 libcairo2-dev cmake python3-dev build-essential portaudio19-dev python3-venv pkg-config wget curl unzip vulkan-tools libvulkan-dev xclip xsel wl-clipboard libssl-dev autoconf automake libtool patchelf libgirepository1.0-dev gir1.2-ayatanaappindicator3-0.1)
OPTIONAL_SYSTEM_PACKAGES=(util-linux-extra)
SHADER_COMPILER_PACKAGES=(glslc glslang-tools)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
debian_13_plus)
SYSTEM_PACKAGES=(python3-pip python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-ibus-1.0 libcairo2-dev cmake python3-dev build-essential portaudio19-dev python3-venv pkg-config wget curl unzip vulkan-tools libvulkan-dev xclip xsel wl-clipboard libssl-dev autoconf automake libtool patchelf libgirepository-2.0-dev gir1.2-ayatanaappindicator3-0.1)
OPTIONAL_SYSTEM_PACKAGES=(util-linux-extra)
SHADER_COMPILER_PACKAGES=(glslc glslang-tools)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
fedora)
SYSTEM_PACKAGES=(python3-pip python3-gobject gtk3 ibus-devel gobject-introspection-devel python3-devel portaudio-devel cairo-devel python3-virtualenv pkg-config cmake wget curl unzip vulkan-tools vulkan-loader-devel glslc patchelf xclip xsel wl-clipboard)
APPINDICATOR_PACKAGES=(libayatana-appindicator-gtk3 libappindicator-gtk3)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
arch)
SYSTEM_PACKAGES=(python-pip python-gobject gtk3 ibus gobject-introspection python-cairo portaudio python-virtualenv pkg-config cmake wget curl unzip base-devel vulkan-tools vulkan-headers shaderc patchelf xclip xsel wl-clipboard)
APPINDICATOR_PACKAGES=(libayatana-appindicator libappindicator-gtk3)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
suse)
SYSTEM_PACKAGES=(gtk3 ibus typelib-1_0-IBus-1_0 gobject-introspection-devel portaudio-devel cairo-devel pkg-config cmake gcc gcc-c++ make wget curl unzip xclip xsel wl-clipboard typelib-1_0-Notify-0_7 libnotify4 patchelf)
APPINDICATOR_PACKAGES=(typelib-1_0-AyatanaAppIndicator3-0_1 typelib-1_0-AppIndicator3-0_1 typelib-1_0-AyatanaAppIndicator-0_1 libayatana-appindicator3-1 libappindicator3-1 libappindicator-gtk3)
SHADER_COMPILER_PACKAGES=(shaderc glslang-devel glslang)
VULKAN_PACKAGES=(vulkan-tools vulkan-devel)
PYTHON_DEVEL_SUFFIX=devel
PYTHON_GOBJECT_SUFFIX=gobject
PYTHON_GOBJECT_CAIRO_SUFFIX=gobject-cairo
PYTHON_PIP_SUFFIX=pip
PYTHON_VENV_SUFFIX=venv
PYTHON_VIRTUALENV_SUFFIX=virtualenv
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
gentoo)
SYSTEM_PACKAGES=(dev-python/pygobject:3 x11-libs/gtk+:3 dev-libs/libayatana-appindicator media-libs/portaudio dev-lang/python:3.11 pkgconf cmake media-libs/shaderc dev-util/patchelf x11-misc/xclip x11-misc/xsel gui-apps/wl-clipboard)
XDOTOOL_PACKAGES=(x11-misc/xdotool)
WTYPE_PACKAGES=(x11-misc/wtype)
YDOTOOL_PACKAGES=(app-misc/ydotool)
;;
alpine)
SYSTEM_PACKAGES=(py3-gobject3 py3-pip gtk+3.0 py3-cairo portaudio-dev cairo-dev py3-virtualenv pkgconf cmake wget curl unzip shaderc patchelf vulkan-tools xclip xsel wl-clipboard)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
void)
SYSTEM_PACKAGES=(python3-pip python3-gobject gtk+3 libappindicator-gtk3 gobject-introspection portaudio-devel cairo-devel python3-devel pkg-config cmake wget curl unzip shaderc patchelf Vulkan-Tools xclip xsel wl-clipboard)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
solus)
SYSTEM_PACKAGES=(python3-pip python3-gobject gtk3 libappindicator gobject-introspection-devel portaudio-devel cairo-devel python3-virtualenv pkg-config cmake wget curl unzip shaderc patchelf vulkan-tools xclip xsel wl-clipboard)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
mageia)
SYSTEM_PACKAGES=(python3-pip python3-gobject gtk3 ibus-devel gobject-introspection-devel python3-devel portaudio-devel cairo-devel python3-virtualenv pkg-config cmake wget curl unzip vulkan-tools vulkan-loader-devel glslc patchelf xclip xsel wl-clipboard)
XDOTOOL_PACKAGES=(xdotool)
WTYPE_PACKAGES=(wtype)
YDOTOOL_PACKAGES=(ydotool)
;;
*)
echo "Unknown distro package map key: $package_map_key" >&2
return 1
;;
esac
}