Skip to content

v0.2.0-beta.11

Pre-release
Pre-release

Choose a tag to compare

@UniqueDroid UniqueDroid released this 24 Oct 20:40
· 123 commits to main since this release
51416d1

ShareOS 0.2.0-beta.11

New: real data for apps (admin accounts only)

Four new app permissions, so SysMon, HomePing, DockerDeck and TuyaPulse show real values instead of sample data:

  • sysinfo – the box's values: CPU, memory, temperature, fan, load, network counters, drives with usage and standby, uptime, process list. Processes can be ended – except the ones ShareOS needs to keep running.
  • netcheck – ping, TCP port and HTTP/HTTPS checks (status, response time, certificate) run directly from the box, up to 32 side by side.
  • docker – Docker hosts in your network via the Docker Engine API (http://host:2375 / https://host:2376): list containers, start, stop, restart, read logs. No exec, no new containers.
  • tuya – Tuya smart-home devices in your local network, without the cloud: discover devices, read status, switch them (protocol 3.3 and 3.4). The small new program shareos-tuya in the firmware does the talking.

My ShareOS

  • The Darstellung tab is now Einstellungen (settings) and also holds change password.
  • Storage on the start page is a full-width table: one row per drive with what lies there, your usage, your limit and the free space.
  • "Share with" on Android: install ShareOS from Chrome (needs a trusted certificate, e.g. https://shareos.local-name), then share photos, files or links to ShareOS – they land in the folder Geteilt in your personal folder. iOS does not offer this to web apps.
  • App file dialog: the personal folder and your shares are now offered there too, also for accounts without file access (by your rights; read-only shares are not offered for saving).

Apps

New in the app catalog: SysMon 2.0, HomePing 2.0, DockerDeck 2.0, TuyaPulse 2.0 (these need this version), plus ShareVault 1.1 (categories), TinyPDF 2.0 (real PDF viewer with signatures) and KeyKeeper 2.0 (encrypted with a master password).

Known issues

  • Shares with group permissions (#57) – a fix via ksmbd-tools 3.5.3 is on the way.

Update as usual via System → Firmware → Check for updates.


  • App permissions sysinfo, netcheck, docker and tuya (each needs files, admin accounts only), so apps like SysMon, HomePing, DockerDeck and TuyaPulse show real data instead of sample values:

    • sysinfo – ShareOS.sysinfo: the box's values (CPU from two samples, memory, temperature, fan, load, network counters, drives with their use and standby, uptime, version) and the process list (user, memory, CPU ticks, command line); kill(pid, signal) ends a process – never init, kernel threads or what keeps ShareOS running (rpcd, ubusd, uhttpd, the board daemon, syslog). Through /_shareos/cgi/sysinfo (rpcd shareos.appsys).
    • netcheck – ShareOS.netcheck.check([...]): up to 32 checks side by side from the box – ping (loss, min/avg/max), TCP port open, HTTP/HTTPS answer with status, time and certificate check. Runs in the CGI /_shareos/cgi/netcheck with short time limits (rpcd shareos.appnet only checks the grant, so rpcd never waits for the network).
    • docker – ShareOS.docker: Docker hosts of the homelab through their Docker Engine API (http://host:2375 or https://host:2376, up to 16, kept in /etc/config/dockerhosts and in the settings backup). Fixed calls only: version, info, images, containers, inspect, stats, logs (as plain text) and start/stop/restart/pause/unpause – no exec, no new containers, no other paths. Docker does not run on the box itself.
    • tuya – ShareOS.tuya: Tuya smart-home devices in the local network, without the cloud – discover() (their encrypted announcements on UDP 6666/6667), status(device) and set(device, dps) over TCP 6668 with the device's local key, protocol 3.3 and 3.4 (session key); 3.1 and 3.5 are not supported yet. The new program /usr/sbin/shareos-tuya (C, mbedtls, 13 KB) does the talking; the app keeps its devices and keys.
  • Mein ShareOS reworked:

    • The tab Darstellung is now Einstellungen (#/settings; the old address still works) and holds Passwort ändern next to the look settings.
    • Speicher on the start page is a table over the full width: one row per drive of the personal folder and the shares – what lies there, own use and limit, a bar (own limit, or the drive when there is none) and the free space of the drive (shareos.me gives volumes and the drive of each share).
  • "Teilen mit" on the phone: the app installed from the browser (Android/Chrome; iOS does not offer this to web apps) appears in the share menu. What is shared goes into the folder Geteilt in the personal folder of the account that is logged in – photos and files as they are, a link or text as a small .txt file; a name that is taken gets " (2)". Only for accounts with a personal folder. Manifest share_target, the service worker keeps the shared files until the interface uploads them (also after a login), rpcd shareos.me share_ticket. Needs a trusted certificate (as for installing the app at all).

  • File dialog of the apps (ShareOS.fs.pick) with the shares: accounts without Dateien now see their personal folder and their shares there as well (by their rights; read-only shares are not offered for saving). The app's own folder stays first and keeps its data; in the dialog it is called App-Daten. ShareOS.fs.roots() marks the entries with personal and share. Dateien still decides about the file browser in the interface.

  • New test tests/test-sysperms.sh (with a fake Docker API and a fake Tuya device built from tinytuya's own frame and cipher code).