#!/usr/bin/bash
#
# Author: Dmitry Razumov <asmeron@ublinux.com>
# Copyright (c) 2021-2025 UBLinux <support@ublinux.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
#

##
## This file contains default values for ublinux configurations
##

declare -A AUTHPAM
declare -A JOURNALD
declare -A SYSTEMD_COREDUMP
declare -A DOMAIN
declare -A REPOSITORY
declare -A REPOPUBLIC_CACHE
declare -A AUTOUPDATE
declare -A UBPILE
declare -A AUTOINSTALL
declare -A UPDATEHOME
declare -A XKBMODEL XKBLAYOUT XKBVARIANT
declare -A CONSOLE_FONT CONSOLE_FONT_MAP CONSOLE_FONT_UNIMAP CONSOLE_KEYMAP CONSOLE_KEYMAP_TOGGLE

SYSCONF=/etc/ublinux

DISTRNAME="ublinux"
DISTRNAME_DATA="ublinux-data"

##/rc.desktop/all/* is launching when desktop is ready

## /rc.desktop/all/autoexec
## Autostart apps/scripts
#AUTOEXEC=

## /rc.desktop/all/placeondesktop
## /rc.desktop/deonly/xfce4-ubinstall-trust
UBINSTALL_DESKTOP="ubinstall-gtk,ubinstall-tui"
UBINSTALL_POLKIT="com.ublinux.ubinstall-gtk.,com.ublinux.ubinstall-gtk-legacy.,com.ublinux.ubinstall-tui.,org.manjaro.pamac.,org.gnome.gparted,org.freedesktop.udisks2.,org.freedesktop.NetworkManager.,com.ublinux.ubmodulemenu."

##/rc.desktop/all/fusion-icon
## Timeout to start fusion-icon
#FUSION_ICON_TIMEOUT=5
## Disable fusion-icon for de
#FUSION_ICON_DE_DIS=gnome-shell,gnome,i3term

## /rc.desktop/all/keyboard
## Set keyboard layout when system start
#RESETKBMODE=yes
## Set on/off/autoset numlock kbd mode
#NUMLOCK=on

## /rc.desktop/all/ublinuxupdate

## /rc.desktop/all/xbindkeys
#XBINDKEYS_START=yes
#XBINDKEYS_OPTIONS=

## /rc.desktop/all/pulseaudio
#PULSEAUDIO_START=yes

## /rc.domain.d/30-usershwaccess
DOMAIN_USERGROUPS="audio,video,usb,vboxusers,bumblebee,cdrom,cdwriter,lp,floppy"

## /rc.halt/20-grub
GRUB_BOOT_SILENT="splash loglevel=3"

## /rc.halt/20-timesave
#HALTSAVETIME=yes

## /rc.post.d/10-brand-backgrounds
BACKGROUND_RES=1920x1080

#DELETE
## /rc.local.d/01-background
#WPDEFDIR=/mnt/livedata/ublinux-data/backgrounds/wallpapers/Default
#SSDEFDIR=/mnt/livedata/ublinux-data/backgrounds/screensaver/Default
#WPSYSDIR=/usr/share/ublinux/wallpapers/Default
#SSSYSDIR=/usr/share/ublinux/screensaver/Default
#WPDEFFILE=/usr/share/ublinux/wallpapers/default.jpg

## /rc.profile/01-de-background
BACKGROUND_DE=/usr/share/backgrounds/background.jpg

## /rc.post.d/12-dm-background
BACKGROUND_DM=/usr/share/backgrounds/dm.jpg

## /rc.local.d/10-network
## Start interface if its not networkmanager
#AUTOSTARTIFNNM=yes
#NFSMOUNTTM=10
#NFSMOUNTWAIT=6
#NFSOPTS="vers=3,nolock,users,noauto"

## /rc.local.d/31-sound
## To set default alsa card in case of 0 card is HDMI (see aplay -l)
#SNDFINCARD=yes
## Mixer settings (see amixer)
#SNDMIXSET=yes
#SNDMIX_MASTER_N=Master
#SNDMIX_MASTER_VOL=35%
#SNDMIX_DEFAULT_VOL=90%
#SNDMIX_SWITCH_ON="IEC958 Playback Default,IEC958 Playback Switch"
#SNDMIX_SWITCH_OFF="Beep Playback Switch,Mic Playback Switch"

## /rc.local.d/50-update-cache-gtk-icon
#UPDATE_GTK_ICON_CACHE=yes
#UPDATE_GTK_ICONO_PTS="-fit /usr/share/icons/hicolor"

## /rc.local.d/51-mozilla_extensions
#REGISTER_MOZEXT=yes

## /rc.local.d/81-samba
# make random passwords for samba users (for home nets)
#MKSMBPWD=yes

## /rc.post.d/02-hwclock
#SETCLKATSTART=yes

## For help "man xkeyboard-config"
## /rc.post.d/11-xorg
HARDCONF=/etc/ublinux/service.conf
## make /etc/X11/xorg.conf.d/00-keyboard.conf
#SETXORGRES=yes
## Отключить глобально настройку раскладки из параметров конфигурации
#MKKBDFXORG=no

##  Настройка параметров раскладки
## /rc.post.d/11-xorg
## /rc.profile/10-fixkeyboard_layout
XKBMODEL[en]=pc104
XKBMODEL[ar]=pc105
XKBMODEL[fr]=pc105
XKBMODEL[de]=pc105
XKBMODEL[ru]=pc105
#XKBMODEL=pc105
#
XKBLAYOUT[en]=us
XKBLAYOUT[ar]=us,ara
XKBLAYOUT[fr]=fr
XKBLAYOUT[de]=de
XKBLAYOUT[ru]=us,ru
#XKBLAYOUT=us,ru,fr,de
#
#XKBVARIANT[en]=
#XKBVARIANT[ar]=
#XKBVARIANT[fr]=
#XKBVARIANT[de]=
#XKBVARIANT[ru]=
#XKBVARIANT=
XKBOPTIONS[en]=grp_led:scroll,compose:rwin
XKBOPTIONS[ar]=grp:lctrl_lshift_toggle,grp_led:scroll,compose:rwin
XKBOPTIONS[fr]=grp_led:scroll,compose:rwin
XKBOPTIONS[de]=grp_led:scroll,compose:rwin
XKBOPTIONS[ru]=grp:lctrl_lshift_toggle,grp_led:scroll,compose:rwin
#XKBOPTIONS=grp:lctrl_lshift_toggle,grp_led:scroll,compose:rwin

## Настройка раскладки консоли
## /rc.preinit.d/53-language
CONSOLE_FONT[en]="latarcyrheb-sun16"
CONSOLE_FONT[ar]="latarcyrheb-sun16"
CONSOLE_FONT[fr]="eurlatgr"
CONSOLE_FONT[de]="eurlatgr"
CONSOLE_FONT[ru]="latarcyrheb-sun16"
#CONSOLE_FONT="latarcyrheb-sun16"
#
CONSOLE_KEYMAP[en]="us"
CONSOLE_KEYMAP[ar]="fa"
CONSOLE_KEYMAP[fr]="fr-latin9"
CONSOLE_KEYMAP[de]="de-latin1"
CONSOLE_KEYMAP[ru]="ruwin_ct_sh-UTF-8"
#CONSOLE_KEYMAP="us"
#
#CONSOLE_KEYMAP_TOGGLE[en]=
#CONSOLE_KEYMAP_TOGGLE[ar]=
#CONSOLE_KEYMAP_TOGGLE[fr]=
#CONSOLE_KEYMAP_TOGGLE[de]=
#CONSOLE_KEYMAP_TOGGLE[ru]=
#CONSOLE_KEYMAP_TOGGLE=

## Настройка локализации
## /rc.preinit.d/53-language
## Всегда принудительно генерироваль локализацию
#FORCE_LOCALE_GEN=yes
#LOCALE="en_US.UTF-8,ru_RU.UTF-8"
#LOCALE="en_US.UTF-8"
#LANG="ru_RU.UTF-8"
#LANG="en_US.UTF-8"

## /rc.preinit/10-accounts
FILE_USERS_CREDENTIAL="${SYSCONF}/.users_credential"
DEFAULTPASSWD='$6$E7stRhRS8fCKk7UU$Qoqw62AUaUa5uLIc2KC7WV3MUThhrR8kjXtCODmnKCzKe2zHu1/wmsiWBHZEIk/IQnk/aELQYbUK93OUtrwg60'
DEFAULTROOTPASSWD='$6$E7stRhRS8fCKk7UU$Qoqw62AUaUa5uLIc2KC7WV3MUThhrR8kjXtCODmnKCzKe2zHu1/wmsiWBHZEIk/IQnk/aELQYbUK93OUtrwg60'
DEFAULTUSER=superadmin
## Для параметра NEEDEDUSERS: если указана основная группа 'x', то основная будет DEFAULTGROUP
## Для параметра ADDUSER: группа DEFAULTGROUP будет добавлена к USERGROUPS
DEFAULTGROUP=users
USERGROUPS=nobody,scanner,power,audio,lp,optical,storage,video,sambashare,vboxusers,libvirt
NOSECUREROOTPASSWD="${DEFAULTROOTPASSWD}"
ADMGROUPS=wheel,vboxsf,disk
ADMUID=1000
ADDADM=yes
HASHPASSWD=yescrypt
UPDATEHOME[root]=yes

## /rc.preinit/50-xorg
#NVIDIATEST="nvidia-current nvidia340 nvidia304 nvidia"
#FAILSAFENVIDIA=nouveau
#CREATE_XORG_CONF=yes
#XFILE=etc/X11/xorg.conf

## /rc.preinit/02-skel-adds
STEAMAPP="/mnt/livedata/ublinux-data/steam"

## /rc.preinit.d/30-network-hostname
HOSTNAME="ublinux-install"
HOSTS_FILE="127.0.0.1  sb-ssl.l.google.com safebrowsing.clients.google.com safebrowsing.cache.l.google.com"

## /rc.preinit.d/10-system
MACHINEID=hardware

## /rc.preinit.d/20-services
SERVICES_ENABLE="dbus-broker,NetworkManager,sshd,swapspace,systemd-timesyncd,cups,cockpit.socket,avahi-daemon,avahi-dnsconfd,smb,nmb,winbind,bluetooth"

## /rc.preinit.d/23-publicdir
## Папка с правами 777 доступная всем локальным пользователям и при разрешении всем из сети
PUBLICDIR="/home/public"

## /rc.halt.pre/10-shutdown
#HALT_SERVICES_STOP=""
#HALT_PROCESSES_KILL="slim kdm X lxdm xdm sddm cupsd pdnsd mc mandb"

## /rc.post.d/03-modprobepreload
#MODPROBE_PRELOAD=yes

## /rc.post/11-xorg
#DELETE_XORG_CONF=no

## /scripts/ublinuxrepack
#MKSQFS_FASTALG="-b 512K -comp lz4 -Xhc"
MKSQFS_FASTALG="-b 32K -comp gzip"

## /rc.desktop/lxqt/qterminal
#QTERMINALSTART=yes

## /rc.post.d/02-hwclock
## /rc.halt/20-timesave
HWCLOCK_SYNC="utc"

## /rc.preinit.d/10-system
ZONE="Etc/UTC"

## /rc.preinit.d/01-depmod
DEPMOD=yes

## /rc.preinit.d/03-ldconfig
RUNLDCONFIG=yes

## /rc.preinit.d/21-ntp
NTPSERVERS="dhcp"
NTPSERVERS_DEFAULT="0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org"
NTPSERVERS_RU="ntp1.vniiftri.ru ntp2.vniiftri.ru ntp3.vniiftri.ru ntp4.vniiftri.ru ntp21.vniiftri.ru ru.pool.ntp.org"
NTPSERVERS_FALLBACK="0.ru.pool.ntp.org 1.ru.pool.ntp.org 2.ru.pool.ntp.org 3.ru.pool.ntp.org"
NTP_SYSTEMSERVICE="systemd-timesyncd.service"

## /rc.d/rc.desktop
RC_DESKTOP_NOEXEC="i3term:xbindkeys;i3term:fusion-icon;i3term:ublinuxupdate"

## /functions
#MKSQFS_OPTS="-b 512K -comp xz -Xbcj x86"
MKSQFS_OPTS="-b 32K -comp gzip"

SAMBA_USERSHARE=enable

AUTHPAM[minimal]="with-faillock,with-time,with-systemd-homed,with-mkhomedir-simple,with-pamaccess"
AUTHPAM[local]="with-faillock,with-time,with-systemd-homed,with-mkhomedir-simple,with-pamaccess"
AUTHPAM[nis]="with-faillock,with-time,with-systemd-homed,with-mkhomedir-simple,with-pamaccess"
AUTHPAM[winbind]="with-faillock,with-time,with-systemd-homed,with-mkhomedir-simple,with-pamaccess"
AUTHPAM[sssd]="with-faillock,with-time,with-systemd-homed,with-mkhomedir-simple,with-pamaccess,with-sudo,with-mdns4,with-mdns6"
AUTHPAM=local

JOURNALD[Storage]=persistent
JOURNALD[Compress]=yes
JOURNALD[SystemMaxUse]=8M
JOURNALD[RuntimeMaxUse]=8M
SYSTEMD_COREDUMP[Storage]=none
SYSTEMD_COREDUMP[ProcessSizeMax]=0

DOMAIN[client]=realmd_sssd

REPOSITORY[core]="/etc/pacman.d/mirrorlist"
REPOSITORY[extra]="/etc/pacman.d/mirrorlist"
REPOSITORY[community]="/etc/pacman.d/mirrorlist"
REPOSITORY[multilib]="/etc/pacman.d/mirrorlist"
REPOSITORY[modules]="/etc/pacman.d/mirrorlist"
#REPOSITORY[ublinux]="/etc/pacman.d/mirrorlist"

REPOPUBLIC_CACHE[port]="8080"
REPOPUBLIC_CACHE[cache_dir]="/memory/layer-base/1/repopublic_cache"
REPOPUBLIC_CACHE[purge_files_after]="0"
REPOPUBLIC_CACHE[download_timeout]="3600"
REPOPUBLIC_CACHE[user_agent]="repopublic/1.0"

AUTOUPDATE[mode]=modsys
AUTOUPDATE[interval]=boot,7d

#Aplication UBPile
UBPILE[debug_level]=1
UBPILE[secret_key]="4a6ed27e0434490028ff63b11f12fb7c"
UBPILE[server_comm_use_hostnames]="false"
UBPILE[web_direct_connect]="false"
UBPILE[web_socket_use_hostnames]="false"

#Aplication ubinstall
AUTOINSTALL[part_size]="16G"
AUTOINSTALL[part_fs_type]="ext4"
AUTOINSTALL[ubconfig set [system] SERVICES_ENABLE]="dbus-broker,NetworkManager,sshd,swapspace,systemd-timesyncd,cups,cockpit.socket,avahi-daemon,avahi-dnsconfd,smb,nmb,winbind,bluetooth"
AUTOINSTALL[ubconfig set [users] DEFAULTROOTPASSWD]="ublinux"
AUTOINSTALL[ubconfig set [users] DEFAULTPASSWD]="ublinux"
AUTOINSTALL[log]=yes
