diff --git a/.gitattributes b/.gitattributes index ce8e174..f0f414f 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1,3 @@ *.png filter=lfs diff=lfs merge=lfs -text *.icns filter=lfs diff=lfs merge=lfs -text +*.jpg filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore index 77715bb..c513af6 100644 --- a/.gitignore +++ b/.gitignore @@ -86,7 +86,6 @@ web_modules/ # Next.js build output .next -out # Nuxt.js build / generate output .nuxt @@ -131,4 +130,10 @@ dist .pnp.* # Tooloop -config.json \ No newline at end of file +config.json +out/* +!out/Tooloop\ OS\ Package +out/Tooloop\ OS\ Package/package/assets/presentation/* +!out/Tooloop\ OS\ Package/package/assets/presentation/start-presentation.sh +!out/Tooloop\ OS\ Package/package/assets/presentation/stop-presentation.sh +!out/Tooloop\ OS\ Package/package/assets/presentation/config.example.json \ No newline at end of file diff --git a/README.md b/README.md index acf5189..6fc0029 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ brew install dpkg brew install fakeroot ``` -# Building +# Build ```bash # one of @@ -29,7 +29,7 @@ npm run make-linux npm run make-all ``` -# Running +# Run ```bash # Mac @@ -37,4 +37,10 @@ npm run start # Linux ./out/Tooloop\ Kiosk\ Browser-linux-arm64/Tooloop\ Kiosk\ Browser --no-sandbox +``` + +# Deploy + +```bash +npm run deploy ``` \ No newline at end of file diff --git a/deploy-tooloop-package.sh b/deploy-tooloop-package.sh new file mode 100644 index 0000000..cc2ff93 --- /dev/null +++ b/deploy-tooloop-package.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +# set -e + +# Remove old builds excluding scripts and config example +find ./out/Tooloop\ OS\ Package/package/assets/presentation/ -type f -not -name '*sh' -not -name 'config*' -print0 | xargs -0 rm -f -- + +# unzip zip +unzip -o ./out/make/zip/linux/x64/Tooloop\ Kiosk\ Browser-linux-x64-1.0.0.zip -d ./out/Tooloop\ OS\ Package/package/assets/presentation + +# move contents to Tooloop package directory +mv -f ./out/Tooloop\ OS\ Package/package/assets/presentation/Tooloop\ Kiosk\ Browser-linux-x64/* ./out/Tooloop\ OS\ Package/package/assets/presentation/ + +# remove empty directory +rm -fr ./out/Tooloop\ OS\ Package/package/assets/presentation/Tooloop\ Kiosk\ Browser-linux-x64/ + +# copy package to package project +cp -fr ./out/Tooloop\ OS\ Package/ /home/tooloop/Tooloop-Packages/kiosk-browser + +# re-build and deploy all packages and update control center +cd /home/tooloop/Tooloop-Packages/ +/bin/bash /home/tooloop/Tooloop-Packages/build.sh +/bin/bash /home/tooloop/Tooloop-Packages/deploy.sh + +exit 0 \ No newline at end of file diff --git a/out/Tooloop OS Package/media/thumbnail-kiosk-browser.png b/out/Tooloop OS Package/media/thumbnail-kiosk-browser.png new file mode 100644 index 0000000..a1b3980 --- /dev/null +++ b/out/Tooloop OS Package/media/thumbnail-kiosk-browser.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b9bf4d135c445c1485ad89ff3e3f32f978a25c35aa4903b62d8b2d2024bea32 +size 20514 diff --git a/out/Tooloop OS Package/package/DEBIAN/control b/out/Tooloop OS Package/package/DEBIAN/control new file mode 100644 index 0000000..76421f1 --- /dev/null +++ b/out/Tooloop OS Package/package/DEBIAN/control @@ -0,0 +1,15 @@ +Package: tooloop-kiosk-browser +Version: 1.0.0 +Maintainer: Tooloop Multimedia +Homepage: https://www.tooloop.de +Bugs: https://github.com/Tooloop/Tooloop-Packages +Section: tooloop/presentation +Architecture: all +Recommends: tooloop-transparent-cursor +Suggests: tooloop-nginx +Name: Kiosk Browser +Description: A feature-rich fullscreen browser for touch kiosks + A simple full-screen kiosk browser based on chromium. + You can define its’ homepage in the settings. +Thumbnail: thumbnail-kiosk-browser.png + diff --git a/out/Tooloop OS Package/package/assets/presentation/start-presentation.sh b/out/Tooloop OS Package/package/assets/presentation/start-presentation.sh new file mode 100644 index 0000000..ecb4fc0 --- /dev/null +++ b/out/Tooloop OS Package/package/assets/presentation/start-presentation.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +if [ $(whoami) = 'root' ]; then + su tooloop -c '/assets/presentation/Tooloop\ Kiosk\ Browser --no-sandbox' & +else + /assets/presentation/Tooloop\ Kiosk\ Browser --no-sandbox & +fi + +exit 0 \ No newline at end of file diff --git a/out/Tooloop OS Package/package/assets/presentation/stop-presentation.sh b/out/Tooloop OS Package/package/assets/presentation/stop-presentation.sh new file mode 100644 index 0000000..2c3d3aa --- /dev/null +++ b/out/Tooloop OS Package/package/assets/presentation/stop-presentation.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +killall su & +killall "Tooloop Kiosk Browser" & + +exit 0 \ No newline at end of file diff --git a/package.json b/package.json index 25d5a5b..4c58fa0 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,8 @@ "package": "electron-forge package", "make": "electron-forge make", "make-linux": "electron-forge make --platform linux", - "make-all": "electron-forge make --platform darwin && electron-forge make --platform linux" + "make-all": "electron-forge make --platform darwin && electron-forge make --platform linux", + "deploy": "electron-forge make && /bin/bash deploy-tooloop-package.sh" }, "repository": { "type": "git",