summaryrefslogtreecommitdiffstats
path: root/linhes/linhes-system
diff options
context:
space:
mode:
Diffstat (limited to 'linhes/linhes-system')
-rwxr-xr-xlinhes/linhes-system/PKGBUILD28
-rwxr-xr-xlinhes/linhes-system/lh_system_start.sh37
2 files changed, 46 insertions, 19 deletions
diff --git a/linhes/linhes-system/PKGBUILD b/linhes/linhes-system/PKGBUILD
index 509c722..42492c9 100755
--- a/linhes/linhes-system/PKGBUILD
+++ b/linhes/linhes-system/PKGBUILD
@@ -1,11 +1,12 @@
pkgname=linhes-system
pkgver=9.0.0
-pkgrel=6
+pkgrel=9
arch=('x86_64')
#install=$pkgname.install
pkgdesc="Everything that makes LinHES a system"
license=('GPL2')
-depends=('cronie' 'dbus-python' 'libnotify' 'linhes-templates' 'pacman-contrib' 'openssh' 'ttf-overlock')
+depends=('cronie' 'dbus-python' 'kdialog' 'libnotify' 'linhes-templates' 'pacman-contrib'
+ 'openssh' 'ttf-overlock')
binfiles="add_storage.py balance_storage_groups.py empty_storage_groups.py remove_storage.py
checkXFSfrag.sh enableIRWake.sh idle.py lh_system_start.sh jobqueue_helper.py
diskspace.sh find_orphans.py optimize_mythdb.py
@@ -25,7 +26,7 @@ sha256sums=('96f67b5428debb7dac909893c56a7637bf6545c068732822981d4080125c53d9'
'11168c9cd3b117decaab6bc665c183b4aab917cf0a976bce4c1b5e4686a27bc9'
'ae34515e144830f424d3bd3f6b1b446892d62beed20bca6f0fb19b0bbb779f27'
'23358a7bff4968eccd469613b81b1415c2ae0ebe77f14f74426697333e4d88d7'
- '0dfa7930dd403b1141480c21b2ab6747258d6d0fba496f3f5ea35034588eac15'
+ 'a664ca7d13373f5fe6eb7747939624d7342039f04a19c06d602e83f89b30de16'
'91bdec992bb2c933e15625c181f2195c402060b879168ebf35944cb064c904b9'
'cedd34e448d3d45ab0f9fff40c115401f45bdea5b99215d0aff514a759ae2b7c'
'76f023c0cde7fea269234f1b29c32b117b91769217d4b1b8a3922daceb25f9f8'
@@ -63,21 +64,21 @@ package() {
done
#startup files
- install -D -m600 "$srcdir/lh_system_start.sh.desktop" "$pkgdir/home/mythtv/.config/autostart/lh_system_start.sh.desktop"
+ install -Dm644 "$srcdir/lh_system_start.sh.desktop" "$pkgdir/etc/skel/.config/autostart/lh_system_start.sh.desktop"
#systemd files
- install -m644 -D $srcdir/x11vnc.override.conf $pkgdir/etc/systemd/system/x11vnc.service.d/override.conf
+ install -Dm644 $srcdir/x11vnc.override.conf $pkgdir/etc/systemd/system/x11vnc.service.d/override.conf
#readme files
- install -m644 -D $srcdir/readme_is_xml $pkgdir/etc/gen_is_xml.d/readme_is_xml
- install -m644 -D $srcdir/readme_is_xml $pkgdir/etc/gen_lib_xml.d/readme_gen_xml
- install -m644 -D $srcdir/readme_is_xml $pkgdir/etc/gen_game_xml.d/readme_gen_xml
- install -m644 -D $srcdir/add_storage.readme $pkgdir/etc/storage.d/readme
+ install -Dm644 $srcdir/readme_is_xml $pkgdir/etc/gen_is_xml.d/readme_is_xml
+ install -Dm644 $srcdir/readme_is_xml $pkgdir/etc/gen_lib_xml.d/readme_gen_xml
+ install -Dm644 $srcdir/readme_is_xml $pkgdir/etc/gen_game_xml.d/readme_gen_xml
+ install -Dm644 $srcdir/add_storage.readme $pkgdir/etc/storage.d/readme
#cron files
- install -m755 -D $srcdir/paccache.cron $pkgdir/etc/cron.weekly/paccache.cron
- install -m755 -D $srcdir/xfs_defrag.cron $pkgdir/etc/cron.weekly/xfs_defrag
- install -m755 -D $srcdir/myth_mtc.cron $pkgdir/etc/cron.hourly/myth_mtc
+ install -Dm755 $srcdir/paccache.cron $pkgdir/etc/cron.weekly/paccache.cron
+ install -Dm755 $srcdir/xfs_defrag.cron $pkgdir/etc/cron.weekly/xfs_defrag
+ install -Dm755 $srcdir/myth_mtc.cron $pkgdir/etc/cron.hourly/myth_mtc
#hooks
install -Dm0644 $srcdir/79-cronie.hook "${pkgdir}"/usr/share/libalpm/hooks/79-cronie.hook
@@ -88,9 +89,8 @@ package() {
mkdir -p $pkgdir/etc/sudoers.d/
chmod 750 $pkgdir/etc/sudoers.d/
chown -R root:root $pkgdir/etc/sudoers.d
- install -o root -g root -m 0750 $srcdir/system-sudo.rules $pkgdir/etc/sudoers.d/system_sudo
+ install -o root -g root -m0750 $srcdir/system-sudo.rules $pkgdir/etc/sudoers.d/system_sudo
#disable dpms
install -m644 -D $srcdir/10-monitor.conf $pkgdir/etc/X11/xorg.conf.d/10-monitor.conf
-
}
diff --git a/linhes/linhes-system/lh_system_start.sh b/linhes/linhes-system/lh_system_start.sh
index a74805a..24c35d5 100755
--- a/linhes/linhes-system/lh_system_start.sh
+++ b/linhes/linhes-system/lh_system_start.sh
@@ -2,12 +2,19 @@
. /etc/profile
#. /etc/systemconfig
-SystemType=Masterbackend
+#SystemType=Masterbackend
function msg(){
/usr/bin/notify-send --app-name="LinHES" --icon=dialog-information "$1" "$2"
}
+function check_installer_user(){
+ if [[ "$(whoami)" = 'km' ]]; then
+ echo "Running lh_system_start as installer user km. Exiting."
+ exit 1
+ fi
+}
+
function applyUIsettings(){
cp /usr/share/linhes/templates/plasma-org.kde.plasma.desktop-appletsrc ~/.config/
#restart plasma
@@ -55,7 +62,10 @@ function storage_scan(){
function install_lh_apps(){
#install programs that are not needed on the iso
- sudo pacman -Syyy --noconfirm firefox glances mythtv ncdu x11vnc
+ msg "Installing apps..."
+ sudo pacman -Syyy --noconfirm firefox glances mythtv mythplugins-mytharchive mythplugins-mythmusic mythplugins-mythweb ncdu x11vnc
+ status=$?
+ [ $status -eq 1 ] && msg "Could not install apps. Check internet connection." && exit 1
}
function first_configure(){
@@ -67,12 +77,28 @@ function first_configure(){
nanorc_setup
bashrc_setup
x11vnc_setup
+ SystemType=$(kdialog --title "LinHES System Type" --combobox "Select the LinHES System Type: " "MasterBackend" "FrontendOnly" --default "MasterBackend")
#apply settings for specific system types
- if [ ! $SystemType = "Frontend_only" ]; then
- # only run mythfilldatabase for masterbackends
+ msg "Setup as $SystemType"
+ if [ ! $SystemType = "FrontendOnly" ]; then
+ # create media directory structure
+ sudo mkdir -p /data/storage/disk0
+ sudo create_media_dirs.sh /data/storage/disk0
+ # setup DB
+ sudo mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
+ sudo systemctl enable --now mariadb.service
+ sudo mariadb -u root < /usr/share/linhes/templates/db/permissions.sql
+ mysql_tzinfo_to_sql /usr/share/zoneinfo | sudo mysql -u root mysql
+ # run mythtv-setup
+ #export DISPLAY=:0
+ mythtv-setup
+ # need to run twice for default db install/upgrade
+ mythtv-setup
+ sudo systemctl enable --now mythbackend.service
+ # run mythfilldatabase
#nice -n 19 mythfilldatabase --quiet &
- msg "Guide data is being loaded." "Until this completes some shows will appear as unknown in the program guide."
+ #msg "Guide data is being loaded." "Until this completes some shows will appear as unknown in the program guide."
else
msg "Frontend Only"
#Frontend_only cmds
@@ -84,6 +110,7 @@ function first_configure(){
#-------MAIN-------
+check_installer_user
first_configure
/usr/bin/enableIRWake.sh &
storage_scan