| Age | Commit message (Collapse) | Author | Files | Lines |
|
- Packages: named packages run slackrepo build, which also updates outdated
ones; update on a named item finds only already-built packages. The
per-row Update action is gone, Update all stays.
- A real slackrepo job reads its items' buildresults rows into the job's
results and is failed when any item failed, aborted or was bad:
slackrepo itself exits 0. The notification names the failed items; a
Build results dialog lists every item with its log and Retry failed,
reopenable from the Jobs ribbon.
- slackrepo prune: the helper lists built items whose SlackBuild is gone
and runs slackrepo remove on them, without an Update all. stats gives
the count; Packages gets a Prune action, the Built tile a 'to prune'
note. Remove and prune ask for confirmation at Run it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
New job kind rebuild-tree runs slackrepo_setup_SBo-danix.sh, which now
builds the fresh tree beside the live one and swaps it in. The Jobs
tab gets a Rebuild tree action behind a modal confirm.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Keystone's settings pages edit both configs. config-get returns the VM
config text, the defaults and the path; config-set validates new text
with the same check() as load_config, keeps .bak and replaces the file
atomically. Both run before load_config, so a broken config can still be
read and fixed. The GUI reloads its config when the file changes,
re-adding the watch after an atomic write replaces the inode.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Packages, Size, Unpublished (opens the unpublished filter), Last publish,
in place of the one-line summary. CARD_STYLE moves to dashboard.py so
both tabs share it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
README says what the GUI does today and what is planned, which defaults
are the author's setup, and how to set up the VM. The specs move to
docs/design/; the implementation plans are dropped (working files, now
kept out of git). AGENTS.md links slackrepo upstream instead of a local
clone path.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
stats gains "orphans", the packages whose .info says MAINTAINER="orphaned
- no maintainer" (0.14s over the tree on the VM). The placeholder tile
shows the count and opens Packages with only the orphaned chip on.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Title is the job (kind and args), body the outcome: succeeded in, failed
with exit code N after, killed after, lost. Icons are freedesktop names:
emblem-default, dialog-error, process-stop, dialog-warning, computer.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
The list with Add and Remove, suggestions (required names no package of
the tree has, with who needs them) to tick and add, and Apply to hints,
which starts fix-current; its end opens the diff dialog with Revert.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
QSettings in state.conf next to config.toml, saved on close: every table
header (widths, sort column) and splitter of the tabs, and the window
geometry. Tests point it at a temp file, never the user's own.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
SBo marks an orphaned package MAINTAINER="orphaned - no maintainer"
(1936 in the tree today); the inventory already carries the maintainer,
so the chip filters in the GUI alone. The shown/selected count moves next
to the search field so the chip row fits the default window width.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Rows with only a stanza have no hint and are skipped. The deletes open
the same dialog as a hint job: each removed hint's diff and Revert, which
had no place in the GUI before.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
The highlighted row used to stand in when nothing was ticked; with row
clicks toggling the tick, that ran an action on a row just unticked.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
The search field keeps Ctrl+A for its own text.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Exec=sb-builder relies on ~/bin being on the session PATH, as for the
other launchers there. setDesktopFileName lets Wayland compositors match
the window to the entry.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
slackrepo writes one log per command (build, rebuild, update,
remove). A failed update left build.log from an older successful
build, so the viewer showed a success next to a failed result. The
helper (0.4.1) now returns the newest command log and its name, which
the viewer shows in the title and header.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
sbb-remote 0.4.0: results lists slackrepo's last attempt per package
(newest first, with built version and whether a log dir exists), and
build-log returns the end of a package's build.log (512 KB) plus its
resource.log, accepting only category/pkg paths. Result counts skip
the legacy buildresults rows keyed by package file name: the 213
"bad" on the Dashboard matched no package.
GUI: a Results tab (chips per result, table sorted by attempt time,
detail pane, log viewer window that keeps the failure at the end),
opened from the ribbon or by clicking a result in the Dashboard bar or
legend, filtered to it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Desktop PyQt6 GUI plus a stdlib Python helper on the build VM, to drive
slackrepo, mkhint and the overlay sync tools from one interface, with
detachable jobs. This commit carries the repo docs and the approved
phase 1 (core) design spec.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|