From 3f69895046c1096fc677c3c7ac4d0124f0b08e94 Mon Sep 17 00:00:00 2001 From: Romain Dartigues Date: Mon, 27 Dec 2021 14:41:37 +0100 Subject: [PATCH] WIP: support Linux Mint and LMDE Without this patch, Linux Mint and LMDE are detected as "debian" which, somehow, does work, but do not take in consideration those distributions specifics (such as mirror, upstream version, etc.). This is flagged WIP as long as I do not run the tests on LMDE. --- cdist/conf/explorer/os | 7 +++++++ cdist/conf/explorer/os_version | 4 ++-- cdist/conf/type/__apt_backports/manifest | 4 ++-- cdist/conf/type/__apt_default_release/manifest | 2 +- cdist/conf/type/__apt_norecommends/manifest | 2 +- cdist/conf/type/__apt_pin/manifest | 2 +- cdist/conf/type/__consul/manifest | 2 +- cdist/conf/type/__consul_agent/manifest | 5 ++++- cdist/conf/type/__docker/manifest | 2 +- cdist/conf/type/__firewalld_start/gencode-remote | 3 ++- cdist/conf/type/__go_get/manifest | 2 +- cdist/conf/type/__grafana_dashboard/manifest | 1 + cdist/conf/type/__hostname/gencode-remote | 2 +- cdist/conf/type/__hostname/manifest | 2 +- cdist/conf/type/__hwclock/manifest | 5 +++-- .../conf/type/__install_bootloader_grub/explorer/target_os | 7 +++++++ cdist/conf/type/__install_bootloader_grub/gencode-remote | 2 +- cdist/conf/type/__letsencrypt_cert/manifest | 3 ++- cdist/conf/type/__locale/manifest | 3 ++- cdist/conf/type/__locale_system/manifest | 3 ++- cdist/conf/type/__localedef/gencode-remote | 2 +- cdist/conf/type/__localedef/manifest | 2 +- cdist/conf/type/__openldap_server/manifest | 4 ++-- cdist/conf/type/__package/manifest | 2 +- cdist/conf/type/__package_update_index/explorer/type | 2 +- cdist/conf/type/__package_upgrade_all/gencode-remote | 2 +- cdist/conf/type/__postfix_master/manifest | 2 +- cdist/conf/type/__postfix_postconf/explorer/value | 2 +- cdist/conf/type/__postfix_postconf/gencode-remote | 2 +- cdist/conf/type/__postfix_reload/gencode-remote | 2 +- cdist/conf/type/__postgres_conf/explorer/postgres_user | 2 +- cdist/conf/type/__sensible_editor/explorer/editor_path | 2 +- cdist/conf/type/__sensible_editor/manifest | 2 +- cdist/conf/type/__sshd_config/manifest | 2 +- cdist/conf/type/__start_on_boot/explorer/state | 4 ++-- cdist/conf/type/__start_on_boot/gencode-remote | 3 ++- cdist/conf/type/__sysctl/gencode-remote | 2 +- cdist/conf/type/__sysctl/manifest | 2 +- cdist/conf/type/__timezone/gencode-remote | 2 +- cdist/conf/type/__timezone/manifest | 2 +- cdist/conf/type/__unpack/manifest | 4 ++-- cdist/conf/type/__xymon_apache/gencode-remote | 2 +- cdist/conf/type/__xymon_apache/manifest | 2 +- cdist/conf/type/__xymon_client/manifest | 2 +- cdist/conf/type/__xymon_server/manifest | 2 +- cdist/test/autil/fixtures/explorer/os | 7 +++++++ cdist/test/autil/fixtures/explorer/os_version | 3 ++- 47 files changed, 81 insertions(+), 49 deletions(-) diff --git a/cdist/conf/explorer/os b/cdist/conf/explorer/os index 46d87f3e..32bb282c 100755 --- a/cdist/conf/explorer/os +++ b/cdist/conf/explorer/os @@ -51,6 +51,13 @@ if grep -q ^DISTRIB_ID=Ubuntu /etc/lsb-release 2>/dev/null; then exit 0 fi +if grep -q ^DISTRIB_ID=LinuxMint /etc/lsb-release 2>/dev/null; then + echo linuxmint + exit 0 +fi + +#FIXME: Linux Mint Debian Edition/lmde + # devuan ascii has both devuan_version and debian_version, so we need to check devuan_version first! if [ -f /etc/devuan_version ]; then echo devuan diff --git a/cdist/conf/explorer/os_version b/cdist/conf/explorer/os_version index bbc9e4f0..edc92a77 100755 --- a/cdist/conf/explorer/os_version +++ b/cdist/conf/explorer/os_version @@ -41,7 +41,7 @@ in # empty, but well... cat /etc/arch-release ;; - debian) + debian|lmde) debian_version=$(cat /etc/debian_version) case $debian_version in @@ -134,7 +134,7 @@ in cat /etc/SuSE-release fi ;; - ubuntu) + ubuntu|linuxmint) if command -v lsb_release >/dev/null 2>&1 then lsb_release -sr diff --git a/cdist/conf/type/__apt_backports/manifest b/cdist/conf/type/__apt_backports/manifest index 6fcd9212..46bf8eb2 100755 --- a/cdist/conf/type/__apt_backports/manifest +++ b/cdist/conf/type/__apt_backports/manifest @@ -36,7 +36,7 @@ codename_os_release() { # detect backport distribution os="$(cat "$__global/explorer/os")" case "$os" in - debian) + debian|lmde) dist="$( codename_os_release )" components="main" mirror="http://deb.debian.org/debian/" @@ -46,7 +46,7 @@ case "$os" in components="main" mirror="http://deb.devuan.org/merged" ;; - ubuntu) + ubuntu|linuxmint) dist="$( codename_os_release )" components="main restricted universe multiverse" mirror="http://archive.ubuntu.com/ubuntu" diff --git a/cdist/conf/type/__apt_default_release/manifest b/cdist/conf/type/__apt_default_release/manifest index 1232efb5..bbdf6311 100755 --- a/cdist/conf/type/__apt_default_release/manifest +++ b/cdist/conf/type/__apt_default_release/manifest @@ -24,7 +24,7 @@ os=$(cat "$__global/explorer/os") release="$(cat "$__object/parameter/release")" case "$os" in - ubuntu|debian|devuan) + ubuntu|debian|devuan|linuxmint|lmde) __file /etc/apt/apt.conf.d/99-default-release \ --owner root --group root --mode 644 \ --source - << DONE diff --git a/cdist/conf/type/__apt_norecommends/manifest b/cdist/conf/type/__apt_norecommends/manifest index fc187784..05bc369e 100755 --- a/cdist/conf/type/__apt_norecommends/manifest +++ b/cdist/conf/type/__apt_norecommends/manifest @@ -24,7 +24,7 @@ os=$(cat "${__global:?}/explorer/os") case ${os} in - (ubuntu|debian|devuan) + (ubuntu|debian|devuan|linuxmint|lmde) __file /etc/apt/apt.conf.d/00InstallRecommends --state present \ --owner root --group root --mode 0644 --source - <<-'EOF' APT::Install-Recommends "false"; diff --git a/cdist/conf/type/__apt_pin/manifest b/cdist/conf/type/__apt_pin/manifest index e72a8fdd..22368d7a 100755 --- a/cdist/conf/type/__apt_pin/manifest +++ b/cdist/conf/type/__apt_pin/manifest @@ -35,7 +35,7 @@ priority="$(cat "$__object/parameter/priority")" case "$os" in - debian|ubuntu|devuan) + debian|ubuntu|devuan|linux|lmde) ;; *) printf "This type is specific to Debian and it's derivatives" >&2 diff --git a/cdist/conf/type/__consul/manifest b/cdist/conf/type/__consul/manifest index 156eb667..cc4221c5 100755 --- a/cdist/conf/type/__consul/manifest +++ b/cdist/conf/type/__consul/manifest @@ -24,7 +24,7 @@ os=$(cat "$__global/explorer/os") case "$os" in - alpine|scientific|centos|redhat|ubuntu|debian|devuan|archlinux|gentoo) + alpine|scientific|centos|redhat|ubuntu|debian|devuan|archlinux|gentoo|linuxmint|lmde) # any linux should work : ;; diff --git a/cdist/conf/type/__consul_agent/manifest b/cdist/conf/type/__consul_agent/manifest index 7b54529c..a90b7d9d 100755 --- a/cdist/conf/type/__consul_agent/manifest +++ b/cdist/conf/type/__consul_agent/manifest @@ -58,6 +58,7 @@ esac distribution_setup () { case "$os" in +#FIXME: Linux Mint Debian Edition/lmde debian) # consul is only available starting Debian 10 (buster). # See https://packages.debian.org/buster/consul @@ -136,7 +137,7 @@ init_upstart() manual_setup () { case "$os" in - alpine|scientific|centos|debian|devuan|redhat|ubuntu) + alpine|scientific|centos|debian|devuan|redhat|ubuntu|linuxmint|lmde) # whitelist safeguard : ;; @@ -191,6 +192,7 @@ manual_setup () { esac ;; +#FIXME: Linux Mint Debian Edition/lmde debian) os_version=$(cat "$__global/explorer/os_version") major_version="${os_version%%.*}" @@ -209,6 +211,7 @@ manual_setup () { esac ;; +#FIXME: Linux Mint ubuntu) init_upstart ;; diff --git a/cdist/conf/type/__docker/manifest b/cdist/conf/type/__docker/manifest index 6a57d85a..cb82f7f9 100755 --- a/cdist/conf/type/__docker/manifest +++ b/cdist/conf/type/__docker/manifest @@ -44,7 +44,7 @@ case "$os" in exit 1 fi ;; - ubuntu|debian) + ubuntu|debian|linuxmint|lmde) if [ "${state}" = "present" ]; then __package apt-transport-https __package ca-certificates diff --git a/cdist/conf/type/__firewalld_start/gencode-remote b/cdist/conf/type/__firewalld_start/gencode-remote index 3e767f68..2e9099ee 100755 --- a/cdist/conf/type/__firewalld_start/gencode-remote +++ b/cdist/conf/type/__firewalld_start/gencode-remote @@ -45,6 +45,7 @@ if [ "$init" = 'systemd' ]; then echo "systemctl \"$cmd\" \"$name\"" else case "$os" in +#FIXME: Linux Mint Debian Edition/lmde debian) case "$os_version" in [1-7]*) @@ -72,7 +73,7 @@ else echo "/etc/init.d/\"$name\" \"$cmd\"" ;; - ubuntu) + ubuntu|linuxmint) echo "service \"$name\" \"$cmd\"" ;; diff --git a/cdist/conf/type/__go_get/manifest b/cdist/conf/type/__go_get/manifest index a5cc4c80..3440f310 100755 --- a/cdist/conf/type/__go_get/manifest +++ b/cdist/conf/type/__go_get/manifest @@ -5,7 +5,7 @@ go_executable=$(cat "$__object/explorer/go-executable") os=$(cat "$__global/explorer/os") case $os in - debian|devuan|ubuntu) + debian|devuan|ubuntu|linuxmint|lmde) __package build-essential ;; *) diff --git a/cdist/conf/type/__grafana_dashboard/manifest b/cdist/conf/type/__grafana_dashboard/manifest index 0d944482..e94fc954 100755 --- a/cdist/conf/type/__grafana_dashboard/manifest +++ b/cdist/conf/type/__grafana_dashboard/manifest @@ -5,6 +5,7 @@ os_version=$(cat "$__global/explorer/os_version") require="" case $os in +#FIXME: Linux Mint Debian Edition/lmde debian|devuan) case $os_version in 8*|jessie) diff --git a/cdist/conf/type/__hostname/gencode-remote b/cdist/conf/type/__hostname/gencode-remote index c1a97ac8..b09fef3e 100755 --- a/cdist/conf/type/__hostname/gencode-remote +++ b/cdist/conf/type/__hostname/gencode-remote @@ -59,7 +59,7 @@ echo 'changed' >>"${__messages_out:?}" # Use the good old way to set the hostname. case ${os} in - (alpine|debian|devuan|ubuntu) + (alpine|debian|devuan|ubuntu|linuxmint|lmde) echo 'hostname -F /etc/hostname' ;; (archlinux) diff --git a/cdist/conf/type/__hostname/manifest b/cdist/conf/type/__hostname/manifest index b80aa2ef..7bceb120 100755 --- a/cdist/conf/type/__hostname/manifest +++ b/cdist/conf/type/__hostname/manifest @@ -56,7 +56,7 @@ fi case ${os} in - (alpine|debian|devuan|ubuntu|void) + (alpine|debian|devuan|ubuntu|void|linuxmint|lmde) echo "${name_should}" | __file /etc/hostname --source - ;; (archlinux) diff --git a/cdist/conf/type/__hwclock/manifest b/cdist/conf/type/__hwclock/manifest index 7d9ab88f..c5939a30 100755 --- a/cdist/conf/type/__hwclock/manifest +++ b/cdist/conf/type/__hwclock/manifest @@ -104,11 +104,12 @@ in unset CDIST_ORDER_DEPENDENCY fi ;; - (debian|devuan|ubuntu) + (debian|devuan|ubuntu|linuxmint|lmde) os_major=$(sed 's/[^0-9].*$//' "${__global:?}/explorer/os_version") case ${os} in +#FIXME: Linux Mint Debian Edition/lmde (debian) if test "${os_major}" -ge 7 then @@ -129,7 +130,7 @@ in (devuan) update_rcS=false ;; - (ubuntu) + (ubuntu|linuxmint) update_rcS=$(test "${os_major}" -lt 16 && echo true || echo false) ;; esac diff --git a/cdist/conf/type/__install_bootloader_grub/explorer/target_os b/cdist/conf/type/__install_bootloader_grub/explorer/target_os index f235710a..117a8c53 100755 --- a/cdist/conf/type/__install_bootloader_grub/explorer/target_os +++ b/cdist/conf/type/__install_bootloader_grub/explorer/target_os @@ -48,6 +48,13 @@ if grep -q ^DISTRIB_ID=Ubuntu "$chroot/etc/lsb-release" 2>/dev/null; then exit 0 fi +if grep -q ^DISTRIB_ID=LinuxMint "$chroot/etc/lsb-release" 2>/dev/null; then + echo linuxmint + exit 0 +fi + +#FIXME: Linux Mint Debian Edition/lmde + if [ -f "$chroot/etc/debian_version" ]; then echo debian exit 0 diff --git a/cdist/conf/type/__install_bootloader_grub/gencode-remote b/cdist/conf/type/__install_bootloader_grub/gencode-remote index 1caebbbf..3c5bf3e8 100755 --- a/cdist/conf/type/__install_bootloader_grub/gencode-remote +++ b/cdist/conf/type/__install_bootloader_grub/gencode-remote @@ -34,7 +34,7 @@ exec > "$install_script" printf '#!/bin/sh -l\n' case "$target_os" in - ubuntu|debian) + ubuntu|debian|linuxmint|lmde) if [ -s "$__global/explorer/efi" ]; then # FIXME: untested. maybe also just run update-grub for EFI system? printf 'grub-mkconfig --output=/boot/efi/EFI/%s/grub.cfg\n' "$target_os" diff --git a/cdist/conf/type/__letsencrypt_cert/manifest b/cdist/conf/type/__letsencrypt_cert/manifest index 638a99e0..971cdf17 100644 --- a/cdist/conf/type/__letsencrypt_cert/manifest +++ b/cdist/conf/type/__letsencrypt_cert/manifest @@ -15,6 +15,7 @@ if [ -z "${certbot_fullpath}" ]; then alpine) __package certbot ;; +#FIXME: Linux Mint Debian Edition/lmde debian) case "$os_version" in 8*) @@ -88,7 +89,7 @@ if [ -z "${certbot_fullpath}" ]; then __package py37-certbot certbot_fullpath="/usr/local/bin/certbot" ;; - ubuntu) + ubuntu|linuxmint) __package certbot ;; *) diff --git a/cdist/conf/type/__locale/manifest b/cdist/conf/type/__locale/manifest index 9f1e17ac..a83cabae 100755 --- a/cdist/conf/type/__locale/manifest +++ b/cdist/conf/type/__locale/manifest @@ -26,11 +26,12 @@ os=$(cat "$__global/explorer/os") case "$os" in +#FIXME: Linux Mint Debian Edition/lmde debian|devuan) # Debian needs a seperate package __package locales --state present ;; - archlinux|suse|ubuntu|scientific|centos|alpine) + archlinux|suse|ubuntu|scientific|centos|alpine|linuxmint) : ;; *) diff --git a/cdist/conf/type/__locale_system/manifest b/cdist/conf/type/__locale_system/manifest index 4b996ebc..7172f1f9 100755 --- a/cdist/conf/type/__locale_system/manifest +++ b/cdist/conf/type/__locale_system/manifest @@ -55,6 +55,7 @@ os=$(cat "$__global/explorer/os") case $os in +#FIXME: Linux Mint Debian Edition/lmde debian) if version_ge 4 <"${__global}/explorer/os_version" then @@ -67,7 +68,7 @@ in devuan) locale_conf="/etc/default/locale" ;; - ubuntu) + ubuntu|linuxmint) if version_ge 6.10 <"${__global}/explorer/os_version" then # Ubuntu 6.10 (edgy) and later diff --git a/cdist/conf/type/__localedef/gencode-remote b/cdist/conf/type/__localedef/gencode-remote index 4538151f..af0bc783 100755 --- a/cdist/conf/type/__localedef/gencode-remote +++ b/cdist/conf/type/__localedef/gencode-remote @@ -61,7 +61,7 @@ in printf '%s does not support locales.\n' "${os}" >&2 exit 1 ;; - (archlinux|debian|devuan|ubuntu|suse|centos|fedora|redhat|scientific) + (archlinux|debian|devuan|ubuntu|suse|centos|fedora|redhat|scientific|linuxmint|lmde) # FIXME: The code below only works for glibc-based installations. # NOTE: Hardcoded, create a pull request in case it is at another diff --git a/cdist/conf/type/__localedef/manifest b/cdist/conf/type/__localedef/manifest index 3ab3ad8c..3f2a8022 100755 --- a/cdist/conf/type/__localedef/manifest +++ b/cdist/conf/type/__localedef/manifest @@ -24,7 +24,7 @@ case $(cat "${__global:?}/explorer/os") in - (debian|devuan) + (debian|devuan|lmde) __package_apt locales --state present ;; esac diff --git a/cdist/conf/type/__openldap_server/manifest b/cdist/conf/type/__openldap_server/manifest index 2aeece26..54dd6a1c 100644 --- a/cdist/conf/type/__openldap_server/manifest +++ b/cdist/conf/type/__openldap_server/manifest @@ -37,7 +37,7 @@ case "${os}" in tls_cipher_suite="HIGH:MEDIUM:+SSLv2" fi ;; - debian|ubuntu|devuan) + debian|ubuntu|devuan|linuxmint|lmde) PKGS="slapd ldap-utils" ETC="/etc" SLAPD_DIR="/etc/ldap" @@ -157,7 +157,7 @@ case "${os}" in --comment "# LDAP Listener URLs" \ "${__target_host}__slapd_flags" ;; - debian|ubuntu|devuan) + debian|ubuntu|devuan|linuxmint|lmde) require="__package/${PKG_MAIN}" __line rm_slapd_conf \ --file ${ETC}/default/slapd \ --regex 'SLAPD_CONF=.*' \ diff --git a/cdist/conf/type/__package/manifest b/cdist/conf/type/__package/manifest index a453c32b..e6dfd840 100755 --- a/cdist/conf/type/__package/manifest +++ b/cdist/conf/type/__package/manifest @@ -33,7 +33,7 @@ else case "$os" in amazon|scientific|centos|fedora|redhat) type="yum" ;; archlinux) type="pacman" ;; - debian|ubuntu|devuan) type="apt" ;; + debian|ubuntu|devuan|linuxmint|lmde) type="apt" ;; freebsd) if [ -n "$(cat "$__object/explorer/pkgng_exists")" ]; then type="pkgng_freebsd" diff --git a/cdist/conf/type/__package_update_index/explorer/type b/cdist/conf/type/__package_update_index/explorer/type index c98e1e67..07c06184 100644 --- a/cdist/conf/type/__package_update_index/explorer/type +++ b/cdist/conf/type/__package_update_index/explorer/type @@ -24,7 +24,7 @@ else os="$("$__explorer/os")" case "$os" in amazon|scientific|centos|fedora|redhat) echo "yum" ;; - debian|ubuntu|devuan) echo "apt" ;; + debian|ubuntu|devuan|linuxmint|lmde) echo "apt" ;; archlinux) echo "pacman" ;; alpine) echo "apk" ;; *) diff --git a/cdist/conf/type/__package_upgrade_all/gencode-remote b/cdist/conf/type/__package_upgrade_all/gencode-remote index d332e851..e2250c55 100755 --- a/cdist/conf/type/__package_upgrade_all/gencode-remote +++ b/cdist/conf/type/__package_upgrade_all/gencode-remote @@ -39,7 +39,7 @@ else os="$(cat "$__global/explorer/os")" case "$os" in amazon|scientific|centos|fedora|redhat) type="yum" ;; - debian|ubuntu|devuan) type="apt" ;; + debian|ubuntu|devuan|linuxmint|lmde) type="apt" ;; archlinux) type="pacman" ;; *) echo "Don't know how to manage packages on: $os" >&2 diff --git a/cdist/conf/type/__postfix_master/manifest b/cdist/conf/type/__postfix_master/manifest index 0960ea41..5e2a9ddc 100755 --- a/cdist/conf/type/__postfix_master/manifest +++ b/cdist/conf/type/__postfix_master/manifest @@ -22,7 +22,7 @@ os=$(cat "$__global/explorer/os") case "$os" in - ubuntu|debian|archlinux|scientific|centos|devuan) + ubuntu|debian|archlinux|scientific|centos|devuan|linuxmint|lmde) : ;; *) diff --git a/cdist/conf/type/__postfix_postconf/explorer/value b/cdist/conf/type/__postfix_postconf/explorer/value index 67dacad8..a84ec127 100755 --- a/cdist/conf/type/__postfix_postconf/explorer/value +++ b/cdist/conf/type/__postfix_postconf/explorer/value @@ -22,7 +22,7 @@ os=$("$__explorer/os") case "$os" in - alpine|ubuntu|debian|archlinux|suse|scientific|centos|devuan) + alpine|ubuntu|debian|archlinux|suse|scientific|centos|devuan|linuxmint|lmde) : ;; *) diff --git a/cdist/conf/type/__postfix_postconf/gencode-remote b/cdist/conf/type/__postfix_postconf/gencode-remote index 279dddd4..94f0b82a 100755 --- a/cdist/conf/type/__postfix_postconf/gencode-remote +++ b/cdist/conf/type/__postfix_postconf/gencode-remote @@ -22,7 +22,7 @@ os=$(cat "$__global/explorer/os") case "$os" in - alpine|archlinux|centos|debian|devuan|suse|scientific|ubuntu) + alpine|archlinux|centos|debian|devuan|suse|scientific|ubuntu|linuxmint|lmde) : ;; *) diff --git a/cdist/conf/type/__postfix_reload/gencode-remote b/cdist/conf/type/__postfix_reload/gencode-remote index 7720dc49..3bdc7e4b 100755 --- a/cdist/conf/type/__postfix_reload/gencode-remote +++ b/cdist/conf/type/__postfix_reload/gencode-remote @@ -22,7 +22,7 @@ os=$(cat "$__global/explorer/os") case "$os" in - ubuntu|debian|archlinux|scientific|centos|devuan) + ubuntu|debian|archlinux|scientific|centos|devuan|linuxmint|lmde) echo "postfix reload" ;; *) diff --git a/cdist/conf/type/__postgres_conf/explorer/postgres_user b/cdist/conf/type/__postgres_conf/explorer/postgres_user index c6582dc4..d2a6fa96 100644 --- a/cdist/conf/type/__postgres_conf/explorer/postgres_user +++ b/cdist/conf/type/__postgres_conf/explorer/postgres_user @@ -29,7 +29,7 @@ in (centos|rhel|scientific) echo 'postgres' ;; - (debian|devuan|ubuntu) + (debian|devuan|ubuntu|linuxmint|lmde) echo 'postgres' ;; (freebsd) diff --git a/cdist/conf/type/__sensible_editor/explorer/editor_path b/cdist/conf/type/__sensible_editor/explorer/editor_path index dcf63c9b..b7a43886 100644 --- a/cdist/conf/type/__sensible_editor/explorer/editor_path +++ b/cdist/conf/type/__sensible_editor/explorer/editor_path @@ -39,7 +39,7 @@ test "$(cat "${__object}/parameter/state")" != 'absent' || exit 0 case $("${__explorer}/os") in - debian|devuan|ubuntu) + debian|devuan|ubuntu|linuxmint|lmde) has_alternatives=true # NOTE: Old versions do not support `--list`, in this case ignore the errors. diff --git a/cdist/conf/type/__sensible_editor/manifest b/cdist/conf/type/__sensible_editor/manifest index 1cdb0c2c..6b8e3da7 100644 --- a/cdist/conf/type/__sensible_editor/manifest +++ b/cdist/conf/type/__sensible_editor/manifest @@ -57,7 +57,7 @@ package_name='sensible-utils' case $os in - debian) + debian|linuxmint|lmde) pkg_type='apt' ;; devuan) diff --git a/cdist/conf/type/__sshd_config/manifest b/cdist/conf/type/__sshd_config/manifest index e37afebb..54485155 100755 --- a/cdist/conf/type/__sshd_config/manifest +++ b/cdist/conf/type/__sshd_config/manifest @@ -24,7 +24,7 @@ state_should=$(cat "${__object:?}/parameter/state") case ${os} in - (alpine|centos|fedora|redhat|scientific|debian|devuan|ubuntu) + (alpine|centos|fedora|redhat|scientific|debian|devuan|ubuntu|linuxmint|lmde) if test "${state_should}" != 'absent' then __package openssh-server --state present diff --git a/cdist/conf/type/__start_on_boot/explorer/state b/cdist/conf/type/__start_on_boot/explorer/state index b7a6cf0f..232a78bc 100644 --- a/cdist/conf/type/__start_on_boot/explorer/state +++ b/cdist/conf/type/__start_on_boot/explorer/state @@ -37,7 +37,7 @@ if [ "$init" = 'systemd' ]; then else case "$os" in - debian|openwrt|devuan) + debian|openwrt|devuan|lmde) state="absent" for file in "/etc/rc$runlevel.d/S"??"$name" do @@ -48,7 +48,7 @@ else fi done ;; - ubuntu) + ubuntu|linuxmint) state="absent" for file in "/etc/rc$runlevel.d/S"??"$name" do diff --git a/cdist/conf/type/__start_on_boot/gencode-remote b/cdist/conf/type/__start_on_boot/gencode-remote index c900933f..b03feeef 100755 --- a/cdist/conf/type/__start_on_boot/gencode-remote +++ b/cdist/conf/type/__start_on_boot/gencode-remote @@ -40,6 +40,7 @@ case "$state_should" in echo "systemctl -q enable '$name'" else case "$os" in +#FIXME: Linux Mint Debian Edition/lmde debian) case "$os_version" in [1-7]*) @@ -73,7 +74,7 @@ case "$state_should" in echo "'/etc/init.d/$name' enable || [ -f /etc/rc.d/S??'$name' ]" ;; - ubuntu) + ubuntu|linuxmint) echo "update-rc.d '$name' defaults >/dev/null" ;; diff --git a/cdist/conf/type/__sysctl/gencode-remote b/cdist/conf/type/__sysctl/gencode-remote index f0f6deef..3812eda1 100755 --- a/cdist/conf/type/__sysctl/gencode-remote +++ b/cdist/conf/type/__sysctl/gencode-remote @@ -30,7 +30,7 @@ fi os=$(cat "$__global/explorer/os") case "$os" in # Linux - redhat|centos|ubuntu|debian|devuan|archlinux|gentoo|coreos) + redhat|centos|ubuntu|debian|devuan|archlinux|gentoo|coreos|linuxmint|lmde) flag='-w' ;; # BusyBox diff --git a/cdist/conf/type/__sysctl/manifest b/cdist/conf/type/__sysctl/manifest index 71dea7f7..8c9e7ec2 100755 --- a/cdist/conf/type/__sysctl/manifest +++ b/cdist/conf/type/__sysctl/manifest @@ -25,7 +25,7 @@ os=$(cat "$__global/explorer/os") case "$os" in # Linux - alpine|redhat|centos|ubuntu|debian|devuan|archlinux|coreos) + alpine|redhat|centos|ubuntu|debian|devuan|archlinux|coreos|linuxmint|lmde) : ;; # BSD diff --git a/cdist/conf/type/__timezone/gencode-remote b/cdist/conf/type/__timezone/gencode-remote index b685c990..9ec7aae3 100755 --- a/cdist/conf/type/__timezone/gencode-remote +++ b/cdist/conf/type/__timezone/gencode-remote @@ -30,7 +30,7 @@ if [ "$timezone_is" = "$timezone_should" ]; then fi case "$os" in - ubuntu|debian|devuan|coreos|alpine) + ubuntu|debian|devuan|coreos|alpine|linuxmint|lmde) echo "echo \"$timezone_should\" > /etc/timezone" ;; esac diff --git a/cdist/conf/type/__timezone/manifest b/cdist/conf/type/__timezone/manifest index 0eb7fb9c..1ebbc841 100755 --- a/cdist/conf/type/__timezone/manifest +++ b/cdist/conf/type/__timezone/manifest @@ -26,7 +26,7 @@ timezone=$(cat "$__object/parameter/tz") os=$(cat "$__global/explorer/os") case "$os" in - archlinux|debian|ubuntu|devuan|alpine) + archlinux|debian|ubuntu|devuan|alpine|linuxmint|lmde) __package tzdata export require="__package/tzdata" ;; diff --git a/cdist/conf/type/__unpack/manifest b/cdist/conf/type/__unpack/manifest index 6bdf5a10..ca8e4408 100755 --- a/cdist/conf/type/__unpack/manifest +++ b/cdist/conf/type/__unpack/manifest @@ -20,7 +20,7 @@ case "$src" in ;; *.lzma|*.xz|*.txz) case "$os" in - debian|ubuntu|devuan) + debian|ubuntu|devuan|linuxmint|lmde) __package xz-utils ;; alpine|centos) @@ -30,7 +30,7 @@ case "$src" in ;; *.rar) case "$os" in - debian|ubuntu|devuan|alpine|freebsd) + debian|ubuntu|devuan|alpine|freebsd|linuxmint|lmde) __package unrar ;; esac diff --git a/cdist/conf/type/__xymon_apache/gencode-remote b/cdist/conf/type/__xymon_apache/gencode-remote index e7d8e344..a6f90f1c 100755 --- a/cdist/conf/type/__xymon_apache/gencode-remote +++ b/cdist/conf/type/__xymon_apache/gencode-remote @@ -21,7 +21,7 @@ state=$(cat "$__object/parameter/state") os=$(cat "$__global/explorer/os") case "$os" in - debian|ubuntu) + debian|ubuntu|linuxmint|lmde) : ;; *) diff --git a/cdist/conf/type/__xymon_apache/manifest b/cdist/conf/type/__xymon_apache/manifest index bfd0af79..6e85ee98 100755 --- a/cdist/conf/type/__xymon_apache/manifest +++ b/cdist/conf/type/__xymon_apache/manifest @@ -21,7 +21,7 @@ state=$(cat "$__object/parameter/state") os=$(cat "$__global/explorer/os") case "$os" in - debian|ubuntu) + debian|ubuntu|linuxmint|lmde) : ;; *) diff --git a/cdist/conf/type/__xymon_client/manifest b/cdist/conf/type/__xymon_client/manifest index 88293a12..c75b92d0 100755 --- a/cdist/conf/type/__xymon_client/manifest +++ b/cdist/conf/type/__xymon_client/manifest @@ -22,7 +22,7 @@ servers=$(cat "$__object/parameter/servers") os=$(cat "$__global/explorer/os") case "$os" in - debian|ubuntu) + debian|ubuntu|linuxmint|lmde) : ;; *) diff --git a/cdist/conf/type/__xymon_server/manifest b/cdist/conf/type/__xymon_server/manifest index 7cee0d23..4b31d8ad 100755 --- a/cdist/conf/type/__xymon_server/manifest +++ b/cdist/conf/type/__xymon_server/manifest @@ -26,7 +26,7 @@ fi os=$(cat "$__global/explorer/os") case "$os" in - debian|ubuntu) + debian|ubuntu|linuxmint|lmde) : ;; *) diff --git a/cdist/test/autil/fixtures/explorer/os b/cdist/test/autil/fixtures/explorer/os index 094685ea..c357bfc0 100755 --- a/cdist/test/autil/fixtures/explorer/os +++ b/cdist/test/autil/fixtures/explorer/os @@ -50,6 +50,13 @@ if grep -q ^DISTRIB_ID=Ubuntu /etc/lsb-release 2>/dev/null; then exit 0 fi +if grep -q ^DISTRIB_ID=LinuxMint /etc/lsb-release 2>/dev/null; then + echo linuxmint + exit 0 +fi + +#FIXME: Linux Mint Debian Edition/lmde + if [ -f /etc/debian_version ]; then echo debian exit 0 diff --git a/cdist/test/autil/fixtures/explorer/os_version b/cdist/test/autil/fixtures/explorer/os_version index 380782cc..92335e74 100755 --- a/cdist/test/autil/fixtures/explorer/os_version +++ b/cdist/test/autil/fixtures/explorer/os_version @@ -30,6 +30,7 @@ case "$($__explorer/os)" in # empty, but well... cat /etc/arch-release ;; +#FIXME: Linux Mint Debian Edition/lmde debian) cat /etc/debian_version ;; @@ -67,7 +68,7 @@ case "$($__explorer/os)" in cat /etc/SuSE-release fi ;; - ubuntu) + ubuntu|linuxmint) lsb_release -sr ;; esac