Skip to content

Releases

Notchfolk 1.2.10

Choose a tag to compare

@github-actions github-actions released this 10 Nov 10:18
65aed4f

Added

  • The closed island shows less, by choice. Settings → Island has a switch each for the
    timer, calls, the unread bell, weather, the paired phone and the AI router. The default is the
    quiet layout: the assistant in the middle, the clock to its left, the weather to its right, the
    cover in the left corner and the bars in the right corner while a song plays. The recording dot
    and a service failure always show.
  • A Devices page of connected Bluetooth devices, a card each with its battery and level, from
    the daemon's BlueZ watcher. Off until turned on; its tab shows only while a device is connected.
  • The USB devices on the bus, on the same page: notchfolkd reads them from udev and follows its
    monitor, and each shows its name, what it is (a drive, a keyboard, a mouse, a headset, a camera,
    a phone) and an icon to match. USB carries no battery to read, so a card shows its kind where a
    Bluetooth one shows its level.

Changed

  • The GSConnect page is now Phone, as it always was a phone's page: its battery, a ring to find
    it, the clipboard sent over. Its tab, switch and shortcut follow the name.

Notchfolk 1.2.9

Choose a tag to compare

@github-actions github-actions released this 10 Nov 04:30
efe8fc9

Fixed

  • Settings opens again. The Shortcuts group listed a shortcut for every page, including Notchfolk's own
    Calories, Water and Prayer pages, whose keys the schema did not carry: opening Settings answered
    "GSettings key shortcut-calories not found". The three keys are in the schema, and a shortcut set for
    one of those pages now opens it.

Notchfolk 1.2.8

Choose a tag to compare

@github-actions github-actions released this 10 Nov 03:03
d3d754c

Added

  • Pill shape. Settings → Shape: the island as a round pill floating just below the top bar, on every
    display, or the notch joined to the top as before — the same island either way, black or glass.
  • A shortcut per page. Settings → Shortcuts: every page can be opened from anywhere with a shortcut
    of its own, recorded in Settings. Super+V opens the page Settings says — the clipboard history by
    default, as before.
  • Size: Large. Settings → Size: the open island 720 px wide instead of 600, every page taller,
    each laying itself out for the room — a larger cover, timer ring and month, more rows and cards.
  • The island on all displays. A mirror of the island on every monitor, not only the main one.
  • Bluetooth devices' low battery warns in the island (20, 10, 5%, once per level on the way down),
    beside the GSConnect device alerts.

Fixed

  • The installer asks GitHub again when it times out or is busy for a moment (a 408, 429 or 5xx),
    instead of failing the one-line install.
  • opencode 2: deleting a session runs with --standalone, so it no longer starts a background
    service on a port the user's own may hold.

Notchfolk 1.2.7

Choose a tag to compare

@github-actions github-actions released this 08 Nov 10:36

Fixed

  • Speech recordings are written out. The speech dump folder is created before writing, so
    NOTCHFOLK_SPEECH_DUMP no longer fails silently on a fresh folder; the write runs off the
    async runtime thread.
  • Shortcut labels cannot carry markup. The key is now the text after the last >, with any
    leftover angle brackets stripped, so a label can never contain <script (CodeQL #37, #38).

Notchfolk 1.2.6

Choose a tag to compare

@github-actions github-actions released this 07 Nov 12:59

Fixed

  • Spoken replies reach the router, and are heard. A router that names its voices in the model id
    (ElevenLabs' el/<model>/<voice>) takes no separate voice field: sending both left the model bare,
    which it answered with a gateway error. Routers also answer MP3 whatever was asked for, and
    pw-play cannot open a pipe, so the reply is decoded with ffmpeg into a WAV first, and only once
    ffmpeg has finished writing it.

Documentation

  • Spoken replies are written down. The assistant guide says what Speak the replies needs, how a
    router that names its voices in the model id takes them, why the answer comes back as MP3 and is
    decoded with ffmpeg, and where to look when nothing is spoken; the README lists ffmpeg with the
    voice assistant's requirements.

Notchfolk 1.2.4

Choose a tag to compare

@github-actions github-actions released this 07 Nov 08:13

Fixed

  • The microphone is heard again. pw-record writes a WAV container to stdout unless told
    otherwise, and the recorder read every byte as a sample: the container and the float samples
    came through as saturated PCM, so every recording looked like noise at full scale and the
    endpointer answered "heard no speech" however loudly one spoke, and however the gain was set.

Notchfolk 1.2.3

Choose a tag to compare

@github-actions github-actions released this 07 Nov 00:50

Changed

  • The log says which speech router it tried, and for how long. A request that could not reach
    the router now names the URL as the daemon built it and how long it tried, instead of a bare
    error — a refused request, a wrong URL and a network that stalls no longer look the same.

Notchfolk 1.2.2

Choose a tag to compare

@github-actions github-actions released this 06 Nov 14:35

Changed

  • No speech router is assumed either. The base URL starts empty in Settings too, so a fresh
    install has nothing pointing anywhere until the user fills it in; an empty one leaves the cloud
    engine unconfigured (local whisper answers).

Fixed

  • The speech router gets one language code, not local Whisper's list. Settings' language is a
    list local Whisper uses to tell languages apart ("id,en"); sent as-is to the router it was a
    code the router refuses, so a healthy router still failed every request and local Whisper took
    over. Only a list of one is sent now; a longer one is left out, and the router detects the
    language itself.
  • The log says why the speech router could not hear it (the error itself, or that it took too
    long), instead of naming neither.

Notchfolk 1.2.1

Choose a tag to compare

@github-actions github-actions released this 06 Nov 10:54

Changed

  • No speech model is assumed any more. The speech router's models and voice start empty in
    Settings and nothing fills them in behind the user's back: an unset speech-to-text model means
    the cloud engine is not configured (local whisper answers), and an unset text-to-speech model
    or voice means the reply is not spoken.

Fixed

  • With Codex, the assistant answers an English request in English: it often replied in Indonesian.
  • With Codex, asking for a file to be made ("make notes.txt saying hello") offers a command to run, rather
    than saying it cannot write files.
  • When the assistant says it cannot look at the computer or find something without having tried, Isle
    tells it that it can, and it looks before it answers.
  • "Switch to Chrome" brings Chrome's window up with Codex, rather than going to the focus timer.

Changed

  • The README shows a new demo of the assistant, a command waiting for Run, the island's pages and an agent
    asking, with a link to the full video.
  • The installation guide shows how to install on Arch Linux step by step, and says Isle is not in the
    AUR yet.

Notchfolk 1.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Nov 09:39

Speech moves to an OpenAI-compatible router, with the replies spoken back.

Added

  • Speech recognition can run on an OpenAI-compatible router, the default engine: recordings go
    to its /v1/audio/transcriptions (the speech-to-text model starts at dg/nova-3 in Settings)
    instead of local whisper.cpp, with the base URL, model and API key set in Settings — the key kept
    in the desktop's secret store, and the endpoint paths editable for a router that does not use the
    OpenAI-compatible ones. Local Whisper stays as the offline choice in Settings and takes over by
    itself when the router cannot be reached.
  • The replies can be spoken, through the same router's /v1/audio/speech (model and voice set
    in Settings, starting at tts-1 and alloy): the answer is shown in the island all the same,
    and a request that arrives cuts the spoken one short.

Setting it up

  1. Settings → Assistant → Speech recognition: pick Cloud (OpenAI-compatible router).
  2. Fill in the Router base URL (up to its /v1), the speech-to-text model, and — in the
    password row — the router's API key; it is kept in the desktop's secret store, never in a
    plain file.
  3. Optional: turn on Speak the replies and pick the text-to-speech model and voice.

A router that names its endpoints differently is fine: the transcription and speech paths are
editable too. Nothing to download — local Whisper keeps working offline as before.

1.2.1: no model is assumed any more — the Settings fields start empty and stay the only
source of the models.

Packages: .deb, .rpm and a plain tarball are attached, each with its .sha256.