Bump version to 2026.9.0
195
CHANGELOG.md
|
|
@ -1,5 +1,200 @@
|
||||||
# Changes
|
# Changes
|
||||||
|
|
||||||
|
## 2026.9.0
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Add initial support for x86_64
|
||||||
|
- Add initial support for Raspberry Pi Zero W v1.1
|
||||||
|
- Add ZeroPlay package and enable it along with libwebsockets on Raspberry Pi Zero W
|
||||||
|
- Add zeroplay-remote service for remote-controlled playback from any web browser on PC or mobile
|
||||||
|
- Add PipeWire support to the ZeroPlay service
|
||||||
|
- Add jambula-radio-volume service for time-based speaker volume control
|
||||||
|
- Add open gate audio alert handling to the MQTT events listener
|
||||||
|
- Add initial support for NFS file sharing on clients
|
||||||
|
- Add AdGuard Home ad blocker support with a buildroot package and setup option
|
||||||
|
- Add AdGuard DNS redirect and DoT block to the jambula-internal firewall zone
|
||||||
|
- Add WLAN_INTERFACE variable to global functions
|
||||||
|
- Add support for colors in dialog menus
|
||||||
|
- Show device name alongside MAC address in the Bluetooth discovery list
|
||||||
|
- Save errors to a log file during jambula-setup without breaking dialog screens
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Bump Frigate to version 0.17.2 (via 0.17.1)
|
||||||
|
- Use a dedicated interface name (ap0) for the hostapd AP instead of the shared wlan device, and add it to the internal firewall zone
|
||||||
|
- Move detection and selection of wireless device(s) in setup scripts to a unified global function
|
||||||
|
- Refactor initial boot script for configuring system services
|
||||||
|
- Move systemd service disabling from the initial boot script to pre-configured presets
|
||||||
|
- Move psplash progress reporting from the jambula-initial-boot service into the called configuration scripts
|
||||||
|
- Start dnsmasq manually during prosody setup instead of via systemd
|
||||||
|
- Migrate tvheadend system user and config path from hts to tvheadend to match the buildroot package user
|
||||||
|
- Improve Bluetooth device auto-reconnection reliability during boot
|
||||||
|
- Update Jambula radio streams, schedule and speaker volume
|
||||||
|
- Update default motion configuration file
|
||||||
|
- Suppress verbose output during boot on Raspberry Pi Zero W
|
||||||
|
- Remove obsolete Raspberry Pi 1 Model B kernel config
|
||||||
|
- Remove realtek kernel module from the automatic startup list
|
||||||
|
- Skip snapcast client setup prompts when the system role is already known
|
||||||
|
- Switch system role and internet connection type dialogs from checklist to radiolist in jambula-setup
|
||||||
|
- Adjust jambula-setup dialog height for the selected options list
|
||||||
|
- Fix HTTP casing in the nginx setup dialog message
|
||||||
|
- Make dialog menu wording in select_wifi_device generic to cover both server and client setups
|
||||||
|
- Clarify pairing prerequisites and connection requirements in the Bluetooth setup script
|
||||||
|
- Remove redundant dialog clear at the end of the Tailscale setup script
|
||||||
|
- Remove leftover debugging code from the wifi client setup script
|
||||||
|
- Revert logging and descriptor redirection in functions introduced in dcdff7a (did not work as intended)
|
||||||
|
- Revert jambula-setup logging rules inside bash_profile to the original
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
#### Audio and Bluetooth
|
||||||
|
- Route audio playback through PipeWire so output to Bluetooth devices works
|
||||||
|
- Enable onboard Bluetooth on Pi Zero W by removing the disable-bt overlay and freeing the UART console
|
||||||
|
- Increment psplash progress after configuring wireplumber bluez during initial setup
|
||||||
|
- Resolve missing ALSA UCM configuration errors by creating a dummy ucm.conf
|
||||||
|
- Remove unsupported metadata_selector option from MPD input config
|
||||||
|
- Create the mpd log file and update its group ownership in the mpd server and playlists setup script
|
||||||
|
- Update snapclient systemd unit with dependencies and delay to resolve connection refused error during boot
|
||||||
|
- Remove unused START_SNAPCLIENT variable from the snapclient setup script
|
||||||
|
|
||||||
|
#### Networking, Wi-Fi and hotspot
|
||||||
|
- Configure the wifi interface via systemd-networkd during the temporary hotspot so the kea DHCP server works
|
||||||
|
- Restart kea-dhcp4 after hostapd on wifi band switch to restore client connectivity
|
||||||
|
- Enable kea DHCP lease persistence and remove the backup .orig config file
|
||||||
|
- Mask systemd-networkd-wait-online.service to reduce boot time
|
||||||
|
- Initialize Wi-Fi mode before checking the access point band in jambula-switch-wifi-ap-band
|
||||||
|
- Fall back to hostapd_cli for WiFi band when iw reports no channel
|
||||||
|
- Disable the in-kernel rtl8xxxu module to prevent conflict with the out-of-tree rtl8188eu AP driver
|
||||||
|
- Resolve hostapd startup errors by disabling 802.11ac on the 2.4 GHz AP and using the US regulatory domain for the temporary setup hotspot
|
||||||
|
- Harden initial temporary wifi hotspot setup script logic, fix kea syntax, and remove .local from avahi configuration
|
||||||
|
- Remove .local TLD from avahi static hosts configuration to prevent mDNS hostname conflicts
|
||||||
|
- Run dnsmasq in foreground and wait for the br0 WiFi hotspot IP to prevent systemd SIGTERM
|
||||||
|
- Silence firewall-cmd output during hostapd internal zone assignment
|
||||||
|
- Ensure AP networking is set up before configuring other services
|
||||||
|
- Check that the AP bridge device file exists before reading it to avoid initial setup errors
|
||||||
|
- Update and resolve bugs in wifi client setup
|
||||||
|
- Use WLAN_INTERFACE as the default wifi device in the prosody setup script
|
||||||
|
- Use WLAN_INTERFACE as the default wifi device in the AP networking setup script
|
||||||
|
- Restart service always when setting up Tailscale remote access
|
||||||
|
- Update ntp setup script to overwrite timesyncd config with local and remote NTP pool servers
|
||||||
|
- Increase fs.inotify.max_user_watches to prevent systemctl failures
|
||||||
|
|
||||||
|
#### Boot and initial setup
|
||||||
|
- Resolve initial boot hangs and delays while configuring the temporary hotspot
|
||||||
|
- Reduce initial boot delays in temporary Wi-Fi AP setup by replacing a blocking avahi poll with a bounded wait and trimming sleep times
|
||||||
|
- Reduce initial boot delays in system services setup by separating disable from stop and only stopping running units
|
||||||
|
- Increase jambula-initial-boot timeout to 300s to prevent premature termination
|
||||||
|
- Update initial-boot systemd service ordering and add error handling for psplash calls
|
||||||
|
- Add dhcpcd to the disable list, prevent abort on disable failure, and disable all matching unit extensions per service
|
||||||
|
- Add frigate, mariadb and radicale services to the systemd disable list during initial system configuration
|
||||||
|
- Correct zram-swap.service ordering to break a sysinit dependency cycle during boot
|
||||||
|
- Disable jambula-radio-volume.timer by default to stop repeated failures from missing config on first boot
|
||||||
|
- Stagger jambula systemd timers and remove RandomizedDelaySec to prevent concurrent execution
|
||||||
|
- Delay tty getty startup to keep boot log noise off the login prompt
|
||||||
|
- Clear invalid getty credential import path caused by slashes in instance names
|
||||||
|
- Display only one logo at boot time
|
||||||
|
- Resolve missing polkit rules directory errors via tmpfiles configuration
|
||||||
|
- Add clock system group to buildroot users_table.txt
|
||||||
|
- Write system time to RTC on sync to prevent hardware drift during jambula-clock execution
|
||||||
|
- Ensure the jambula config directory exists and prevent duplicate systemd symlink creation during smart radio setup
|
||||||
|
- Update setup script to read a single selection from radiolist dialog menus
|
||||||
|
|
||||||
|
#### Raspberry Pi Zero W hardware
|
||||||
|
- Reduce CMA reservation to 128MB to free up RAM
|
||||||
|
- Unblacklist bcm2835_codec for hardware H.264 decode and drop the redundant modules-load.d entry
|
||||||
|
- Enable bcm2835_codec module autoload during boot
|
||||||
|
- Increase GPU memory and enable the KMS driver for video playback
|
||||||
|
- Remove cgroup memory tracking from the kernel command line
|
||||||
|
- Enable dwc2 host mode overlay for USB keyboard/device support
|
||||||
|
- Trim linux-systemd.fragment to reduce cgroup/audit stack pressure, remove stray ARM64 4K-page fragment, and prune unused RPi board config/readme variants for raspberrypi-0-w
|
||||||
|
|
||||||
|
#### Services and packages
|
||||||
|
- Rework rain phrasing and make heavy-rain warnings list every forecasted day/period in the jambula-weather tool
|
||||||
|
- Improve MySQL database setup with startup ping checks, waits and an auto-reinitialization fallback
|
||||||
|
- Wait for the prosody systemd service to be active before adding chat users
|
||||||
|
- Update and rename patch to allow prosody to build with Lua 5.4
|
||||||
|
- Source the functions file in the tvheadend setup script to fix a missing dialog command
|
||||||
|
- Update tvheadend systemd service user to match the buildroot package
|
||||||
|
- Update frigate web symlink to the dist folder to fix frontend camera display
|
||||||
|
- Remove premature frigate web directory creation in the buildroot package makefile that prevented the symlink from being placed correctly
|
||||||
|
- Generate frigate sysconfig dynamically using buildroot package makefile variables
|
||||||
|
- Include the frigate web symlink in the frigate uninstallation script
|
||||||
|
- Remove legacy kodi reference from raspberrypi_5 defconfig paths
|
||||||
|
|
||||||
|
### Build
|
||||||
|
- Update buildroot config for Raspberry Pi Zero W (multiple updates)
|
||||||
|
- Update buildroot config for Raspberry Pi 1 B
|
||||||
|
- Update default config and variant fragments to match latest sources plus Linux kernel and headers
|
||||||
|
- Remove legacy options from config files in the latest sources
|
||||||
|
- Remove rpi4 firmware, bind, ntpd, squid and nut packages from buildroot config files for rpi5
|
||||||
|
- Increase TARGET_ROOTFS_EXT2_SIZE for all rpi5 images (7680M, then 7936M)
|
||||||
|
- Update BR2_LINUX_KERNEL_PATCH path in buildroot configs for rpi5
|
||||||
|
- Add rp1-pio kernel config fragment for Raspberry Pi 5 to fix rp1-pio probe error -2
|
||||||
|
- Add simple free and paid build targets to automate setup, configs and patches
|
||||||
|
- Improve package patching logic and strip level in the pre-build script
|
||||||
|
- Add rsync patch to fix compilation failure during package build
|
||||||
|
- Fix clean build failures of the pydio-cells package by adding missing dependencies and correcting directory permissions
|
||||||
|
- Add site-packages and working dir to PYTHONPATH in frigate package sysconfig generation
|
||||||
|
- Replace boot logo image assets with updated designs
|
||||||
|
- Remove the time command from free and paid image compilation steps
|
||||||
|
|
||||||
|
|
||||||
|
## 2026.5.3
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Add openNDS captive portal setup script
|
||||||
|
- Add system user definition for the openNDS captive portal server
|
||||||
|
- Integrate openNDS captive portal web pages into the post-build sync pipeline
|
||||||
|
- Add company domain name variable in global functions
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Migrate AP wireless and routing services from wlan0 to the br0 bridge
|
||||||
|
- Refactor opennds setup script to use native configuration rules
|
||||||
|
- Use default and auto-generated database credentials for Pydio Cells setup
|
||||||
|
- Display created access credentials in MySQL database setup
|
||||||
|
- Secure password creation in the prosody setup script
|
||||||
|
- Refresh initial setup wizard layout and text colors for an improved onboarding experience
|
||||||
|
- Polish root password update dialog wording in jambula-setup
|
||||||
|
- Log jambula-setup background errors to keep screens clean
|
||||||
|
- Simplify systemctl reboot command during initial setup and protect the setup log variable called by other scripts
|
||||||
|
- Suppress background networking errors during the initial setup wizard
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Remove duplicate hardcoded wlan1 reference in internet via wpa_supplicant setup
|
||||||
|
- Ensure the MPD data directory and database exist during setup
|
||||||
|
- Evaluate wifi mode correctly in jambula-sysinfo
|
||||||
|
- Add missing http protocol prefix to the completion notice in webcam setup
|
||||||
|
|
||||||
|
### Build
|
||||||
|
- Upgrade openNDS package to version 11.0.0
|
||||||
|
- Add dnsmasq.conf to the overlay directory to fix a missing file error during initial setup
|
||||||
|
- Add kea DHCP lease parsing and fix dnsmasq systemctl reload in opennds libraries
|
||||||
|
- Add rpi5 Broadcom firmware to the rootfs overlay to ensure hostapd stability
|
||||||
|
|
||||||
|
|
||||||
|
## 2026.5.2
|
||||||
|
|
||||||
|
### Security
|
||||||
|
- Enable Yama LSM for ptrace restriction to mitigate CVE-2026-46333
|
||||||
|
- Disable vulnerable ESP and RXRPC modules to mitigate CVE-2026-43284
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Update Bluetooth setup instructions to use the generic default audio sink
|
||||||
|
- Refine MySQL service startup dialog during initial database setup
|
||||||
|
- Polish MPD setup prompts and titles
|
||||||
|
- Improve root password prompt dialog during initial setup
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Route kea-dhcp clients to the gateway for local domain resolution
|
||||||
|
- Trim whitespace from vendor description and modernise bash test syntax in hostapd setup
|
||||||
|
- Include Chat Server in the setup options file during initial configuration
|
||||||
|
- Update sysinfo display to show edition instead of install date
|
||||||
|
- Simplify and fix network gateway IP and device parsing logic
|
||||||
|
- Ensure the options file is freshly created during setup
|
||||||
|
- Enable snapclient without starting it during initial setup to prevent shutdown hang
|
||||||
|
- Suppress journal log spam and correct mpc status parsing
|
||||||
|
- Ignore commented variant entries when parsing the os-release file in project functions
|
||||||
|
|
||||||
|
|
||||||
𝟐𝟎𝟐6.5.1
|
𝟐𝟎𝟐6.5.1
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
|
|
||||||
14
README.md
|
|
@ -18,17 +18,19 @@ services. There's an initial ncurses style based setup program that allows you
|
||||||
will be provided by your Raspberry Pi. However, in order to use it effectively, you need to already be
|
will be provided by your Raspberry Pi. However, in order to use it effectively, you need to already be
|
||||||
familiar with using Linux on the command line interface (CLI).
|
familiar with using Linux on the command line interface (CLI).
|
||||||
|
|
||||||
You will also need a Raspberry Pi 5 along with all required boot accessories, including an SD card of at least 8 GB.
|
You will also need a supported raspberry Pi board along with all required boot accessories, including an SD card of appropriate size.
|
||||||
|
|
||||||
<b>Supported Boards</b>
|
<b>Supported Boards</b>
|
||||||
|
|
||||||
1. Raspberry Pi 5 Model B Rev 1.0
|
1. Raspberry Pi 5 Model B Rev 1.0
|
||||||
|
|
||||||

|
2. Raspberry Pi Zero W Version 1.1
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
<b> How to quickly get started </b>
|
<b> How to quickly get started </b>
|
||||||
|
|
||||||
1. Download the latest Jambula OS image located at:
|
1. Download the latest Jambula OS image corresponding to your specific board:
|
||||||
|
|
||||||
https://jambula.org
|
https://jambula.org
|
||||||
|
|
||||||
|
|
@ -38,7 +40,7 @@ You will also need a Raspberry Pi 5 along with all required boot accessories, in
|
||||||
|
|
||||||
cd /tmp
|
cd /tmp
|
||||||
|
|
||||||
7za e jambulaOS-202605-211547-img.7z
|
7za e jambulaOS-202609-291646-img.7z
|
||||||
|
|
||||||
3. Burn the resulting image i.e. sdcard.img to your SD card using a tool such as dd
|
3. Burn the resulting image i.e. sdcard.img to your SD card using a tool such as dd
|
||||||
|
|
||||||
|
|
@ -90,11 +92,11 @@ You will also need a Raspberry Pi 5 along with all required boot accessories, in
|
||||||
|
|
||||||
1. Raspberry Pi 4 and 3 series hardware support
|
1. Raspberry Pi 4 and 3 series hardware support
|
||||||
|
|
||||||
2. Photo management
|
2. IPv6 configuration in the setup wizard
|
||||||
|
|
||||||
3. Network and device monitoring
|
3. Network and device monitoring
|
||||||
|
|
||||||
4. Support for x86_64 platform
|
4. Full support for x86_64 platform
|
||||||
|
|
||||||
|
|
||||||
<b>IMPORTANT: Support Jambula OS</b>
|
<b>IMPORTANT: Support Jambula OS</b>
|
||||||
|
|
|
||||||
|
After Width: | Height: | Size: 219 KiB |
|
Before Width: | Height: | Size: 217 KiB |
|
Before Width: | Height: | Size: 148 KiB |
|
Before Width: | Height: | Size: 236 KiB |
|
Before Width: | Height: | Size: 324 KiB After Width: | Height: | Size: 318 KiB |
|
Before Width: | Height: | Size: 294 KiB After Width: | Height: | Size: 295 KiB |
|
Before Width: | Height: | Size: 5.5 MiB After Width: | Height: | Size: 8.0 MiB |