mirror of
https://github.com/karl0ss/AnotterKiosk.git
synced 2025-07-28 11:10:17 +01:00
Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
cd48e6e86a | |||
e37514fac3 | |||
63e614985a | |||
968a171c6f |
2
.github/workflows/main.yml
vendored
2
.github/workflows/main.yml
vendored
@ -26,7 +26,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Build firmware
|
- name: Build firmware
|
||||||
run: |
|
run: |
|
||||||
sudo ./build_raspberry_pi.sh
|
sudo ./build.sh
|
||||||
|
|
||||||
- name: Release build artifacts
|
- name: Release build artifacts
|
||||||
uses: softprops/action-gh-release@v1
|
uses: softprops/action-gh-release@v1
|
||||||
|
13
README.md
13
README.md
@ -3,6 +3,7 @@ N-AnotterKiosk (Not-AnotterKiosk)
|
|||||||
|
|
||||||
### I have hacked this about alot from the main branch, mainly Raspberry Pi changes
|
### I have hacked this about alot from the main branch, mainly Raspberry Pi changes
|
||||||
|
|
||||||
|
- Removed x86 support
|
||||||
- Added scheduled screen on/off
|
- Added scheduled screen on/off
|
||||||
- Added scheduled chrome page refresh
|
- Added scheduled chrome page refresh
|
||||||
- Rpi3 Overclock settings
|
- Rpi3 Overclock settings
|
||||||
@ -17,7 +18,7 @@ This project aims to solve a lot of those (at least for the author), it might al
|
|||||||
|
|
||||||
#### Key features
|
#### Key features
|
||||||
|
|
||||||
- [Images built via CI](https://github.com/Manawyrm/N-AnotterKiosk/blob/main/.github/workflows/main.yml)
|
- [Images built via CI](https://github.com/Manawyrm/AnotterKiosk/blob/main/.github/workflows/main.yml)
|
||||||
- WiFi connection support
|
- WiFi connection support
|
||||||
- Raspberry Pi (Arm64) compatibility
|
- Raspberry Pi (Arm64) compatibility
|
||||||
- [USB flash drive, USB SSD, etc. compatible](#how-to-use)
|
- [USB flash drive, USB SSD, etc. compatible](#how-to-use)
|
||||||
@ -31,7 +32,6 @@ This project aims to solve a lot of those (at least for the author), it might al
|
|||||||
- VNC support
|
- VNC support
|
||||||
- SSH tunneling support (for remote-access without port-forwarding, etc.)
|
- SSH tunneling support (for remote-access without port-forwarding, etc.)
|
||||||
- Basic API for Rpi Actions
|
- Basic API for Rpi Actions
|
||||||
- Hyperion-NG support for ambilight
|
|
||||||
|
|
||||||
#### Planned features:
|
#### Planned features:
|
||||||
|
|
||||||
@ -47,13 +47,13 @@ This project aims to solve a lot of those (at least for the author), it might al
|
|||||||
|
|
||||||
### How-To Use
|
### How-To Use
|
||||||
|
|
||||||
Like any other Raspberry Pi image: download the current .img file from the [Releases](https://github.com/Manawyrm/N-AnotterKiosk/releases) page and flash it to a storage device of your choice.
|
Like any other Raspberry Pi image: download the current .img file from the [Releases](https://github.com/Manawyrm/AnotterKiosk/releases) page and flash it to a storage device of your choice.
|
||||||
SD cards, USB flash drives, USB SSDs, SATA SSDs, NVMe SSDs are all good options.
|
SD cards, USB flash drives, USB SSDs, SATA SSDs, NVMe SSDs are all good options.
|
||||||
You can use a tool like the [Raspberry Pi Imager](https://www.raspberrypi.com/software/), [BalenaEtcher](https://etcher.balena.io/), [Win32DiskImager](https://sourceforge.net/projects/win32diskimager/) or plain "dd" on \*nix-like systems.
|
You can use a tool like the [Raspberry Pi Imager](https://www.raspberrypi.com/software/), [BalenaEtcher](https://etcher.balena.io/), [Win32DiskImager](https://sourceforge.net/projects/win32diskimager/) or plain "dd" on \*nix-like systems.
|
||||||
When using the latter two, make sure to extract the .gz compression first (using a tool like 7zip).
|
When using the latter two, make sure to extract the .gz compression first (using a tool like 7zip).
|
||||||
|
|
||||||
After flashing, re-plug the storage device and open the FAT32 partition.
|
After flashing, re-plug the storage device and open the FAT32 partition.
|
||||||
Open the [`kioskbrowser.ini`](https://github.com/Manawyrm/N-AnotterKiosk/blob/main/kiosk_skeleton/boot/kioskbrowser.ini) file in a text editor and change everything to your needs.
|
Open the [`kioskbrowser.ini`](https://github.com/Manawyrm/AnotterKiosk/blob/main/kiosk_skeleton/boot/kioskbrowser.ini) file in a text editor and change everything to your needs.
|
||||||
More complex WiFi setups (like WPA2-Enterprise) can be configured by creating a wpa_supplicant.conf.
|
More complex WiFi setups (like WPA2-Enterprise) can be configured by creating a wpa_supplicant.conf.
|
||||||
Adding your own SSH keys can be done by creating a authorized_keys file.
|
Adding your own SSH keys can be done by creating a authorized_keys file.
|
||||||
If you want to use the autossh tunneling features, copy an SSH private key as either "id_rsa" or "id_ed25519".
|
If you want to use the autossh tunneling features, copy an SSH private key as either "id_rsa" or "id_ed25519".
|
||||||
@ -122,11 +122,6 @@ Starts the screen-refresh.service to refresh the screen.
|
|||||||
`GET /script.php?action=reboot&key=YOUR_API_KEY`
|
`GET /script.php?action=reboot&key=YOUR_API_KEY`
|
||||||
Reboots the Raspberry Pi.
|
Reboots the Raspberry Pi.
|
||||||
|
|
||||||
### Hyperion-NG
|
|
||||||
|
|
||||||
The kiosk now supports Hyperion-NG for ambilight control.
|
|
||||||
Manage Hyperion via its web interface, which is available on port 8090.
|
|
||||||
|
|
||||||
### Inspiration / Other Kiosk-OSes:
|
### Inspiration / Other Kiosk-OSes:
|
||||||
|
|
||||||
- https://github.com/jareware/chilipie-kiosk/
|
- https://github.com/jareware/chilipie-kiosk/
|
||||||
|
10
build_raspberry_pi.sh → build.sh
Executable file → Normal file
10
build_raspberry_pi.sh → build.sh
Executable file → Normal file
@ -42,9 +42,8 @@ sudo losetup -P /dev/loop0 raspikiosk.img
|
|||||||
sudo mount /dev/loop0p2 "${BUILD_DIR}"
|
sudo mount /dev/loop0p2 "${BUILD_DIR}"
|
||||||
sudo mount /dev/loop0p1 "${BUILD_DIR}/boot"
|
sudo mount /dev/loop0p1 "${BUILD_DIR}/boot"
|
||||||
|
|
||||||
# Copy the (raspberry pi-specific) skeleton files
|
# Copy the skeleton files
|
||||||
sudo rsync -a "${SCRIPT_DIR}/raspberry_pi_skeleton/." "${BUILD_DIR}"
|
sudo rsync -a "${SCRIPT_DIR}/kiosk_skeleton/." "${BUILD_DIR}"
|
||||||
sudo rsync -a "${SCRIPT_DIR}/kiosk_skeleton/." "${BUILD_DIR}/kiosk_skeleton"
|
|
||||||
|
|
||||||
# Make fstab read-only
|
# Make fstab read-only
|
||||||
sed -i 's/vfat defaults/vfat ro,defaults/g' "${BUILD_DIR}/etc/fstab"
|
sed -i 's/vfat defaults/vfat ro,defaults/g' "${BUILD_DIR}/etc/fstab"
|
||||||
@ -63,9 +62,10 @@ sudo mount devpts -t devtmpfs -o mode=0755,nosuid "${BUILD_DIR}/dev/"
|
|||||||
sudo chroot "${BUILD_DIR}" /raspberry_pi_bullseye.sh
|
sudo chroot "${BUILD_DIR}" /raspberry_pi_bullseye.sh
|
||||||
|
|
||||||
# and then actually install everything.
|
# and then actually install everything.
|
||||||
sudo chroot "${BUILD_DIR}" /kiosk_skeleton/build.sh
|
sudo chroot "${BUILD_DIR}" /build.sh
|
||||||
|
|
||||||
sudo rm -r "${BUILD_DIR}/kiosk_skeleton"
|
# remove the build scripts
|
||||||
|
sudo rm "${BUILD_DIR}/build.sh"
|
||||||
sudo rm "${BUILD_DIR}/raspberry_pi_bullseye.sh"
|
sudo rm "${BUILD_DIR}/raspberry_pi_bullseye.sh"
|
||||||
|
|
||||||
cp "${BUILD_DIR}/version-info" version-info
|
cp "${BUILD_DIR}/version-info" version-info
|
@ -1 +1 @@
|
|||||||
console=serial0,115200 console=tty1 root=PARTUUID=544c6228-02 rootfstype=ext4 rw rootwait logo.nologo consoleblank=0 loglevel=0 quiet
|
console=serial0,115200 console=tty1 root=PARTUUID=544c6228-02 rootfstype=ext4 ro rootwait logo.nologo consoleblank=0 loglevel=0 quiet
|
0
raspberry_pi_skeleton/boot/config.txt → kiosk_skeleton/boot/config.txt
Executable file → Normal file
0
raspberry_pi_skeleton/boot/config.txt → kiosk_skeleton/boot/config.txt
Executable file → Normal file
@ -81,20 +81,7 @@ systemctl enable ssh
|
|||||||
systemctl enable kiosk-sechedule-screen.service
|
systemctl enable kiosk-sechedule-screen.service
|
||||||
systemctl enable schedule-reboot.service
|
systemctl enable schedule-reboot.service
|
||||||
systemctl enable setup-refresh-timer.service
|
systemctl enable setup-refresh-timer.service
|
||||||
systemctl enable hyperiond
|
|
||||||
|
|
||||||
# Install Hyperion
|
|
||||||
curl -sSL https://apt.hyperion-project.org/hyperion.pub.key | gpg --dearmor -o /usr/share/keyrings/hyperion.pub.gpg
|
|
||||||
echo "deb [signed-by=/usr/share/keyrings/hyperion.pub.gpg] https://apt.hyperion-project.org/ $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/hyperion.list
|
|
||||||
apt update
|
|
||||||
apt install -y hyperion
|
|
||||||
|
|
||||||
# Run Hyperion as the 'pi' user
|
|
||||||
mkdir -p /etc/systemd/system/hyperiond.service.d
|
|
||||||
echo -e "[Service]\nUser=pi\nGroup=pi" > /etc/systemd/system/hyperiond.service.d/override.conf
|
|
||||||
chown -R pi:pi /var/lib/hyperion || true
|
|
||||||
chown -R pi:pi /etc/hyperion
|
|
||||||
usermod -a -G video pi
|
|
||||||
|
|
||||||
# generate a version info/build info file
|
# generate a version info/build info file
|
||||||
echo -n "Chromium version: " >> /version-info
|
echo -n "Chromium version: " >> /version-info
|
||||||
@ -103,7 +90,3 @@ dpkg --list | grep "ii chromium " >> /version-info
|
|||||||
echo -n "Linux kernel version: " >> /version-info
|
echo -n "Linux kernel version: " >> /version-info
|
||||||
ls /lib/modules/ | sort -r | head -n 1 >> /version-info
|
ls /lib/modules/ | sort -r | head -n 1 >> /version-info
|
||||||
echo >> /version-info
|
echo >> /version-info
|
||||||
|
|
||||||
# Clean up apt cache and remove unused packages
|
|
||||||
apt-get clean
|
|
||||||
apt-get autoremove -y
|
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
N-AnotterKiosk \n \l
|
AnotterKiosk \n \l
|
||||||
|
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
|
||||||
Welcome to N-AnotterKiosk!
|
Welcome to AnotterKiosk!
|
||||||
|
Run "mount -o remount,rw /" to make the root filesystem writeable.
|
||||||
FAT32 / config partition is located in /boot.
|
FAT32 / config partition is located in /boot.
|
||||||
|
0
raspberry_pi_skeleton/raspberry_pi_bullseye.sh → kiosk_skeleton/raspberry_pi_bullseye.sh
Executable file → Normal file
0
raspberry_pi_skeleton/raspberry_pi_bullseye.sh → kiosk_skeleton/raspberry_pi_bullseye.sh
Executable file → Normal file
@ -1,5 +1,4 @@
|
|||||||
<h1>Kioskbrowser</h1>
|
<h1>Kioskbrowser</h1>
|
||||||
<h2>Version: <?php echo exec('git describe --tags --abbrev=0'); ?></h2>
|
|
||||||
|
|
||||||
CPU temperature: <br>
|
CPU temperature: <br>
|
||||||
<?php passthru("sudo vcgencmd measure_temp"); ?>
|
<?php passthru("sudo vcgencmd measure_temp"); ?>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user