* feat: `soar` module
* fix(soar): Inverted `unlock-repos` logic
* chore(soar): Add `soar` to modules.json
* fix(soar): Logic for detecting if `unlock-repos` is disabled
* fix(docs): Wrong `/usr/` systemd path reference
* chore(soar): Add log for `unlock_repos`
* chore(soar): Add `finished=false` at the beggining of `soar` shell profile
* fix(soar): `/root` being `$HOME` in config
* fix(soar): Wrong `PATH`
I forgot to add `bin` directory
* docs(soar): Clarify that `PATH` needs to be exported only outside of standard config dir
* chore(soar): Unlock extra repos if `unlock-repos` is enabled
* docs(soar): Mention of external repos
* chore(soar): Simplify getting `XDG` directories
* chore(soar): Add removing config in uninstallation script
* chore(soar): Remove whole config directory instead of file in uninstallation script
* fix(soar): Missing quote in uninstallation script
* chore(soar): Make uninstallation script POSIX
* fix(soar): Bad syntax for `soar-upgrade-packages` service `exec`
It's `ExecStart`, not `Exec`.
* fix(soar): Set `auto-upgrade` timer as `--user` instead of `--system`
* chore(soar): Shorten the boot delay & randomize it for `auto-upgrades`
* chore(soar): Add `network-online.target` in `Wants` to systemd service for `auto-upgrades`
* chore(soar): Remove `upgrade-wait-after-boot`, as good defaults are set with no need for changing
* chore(soar): Add option for unlocking the `PATH` in all conditions
* chore(soar): Add `unlock-path` option to typespec
* docs(soar): Add `unlock-path` to `module.yml` example
* chore(soar): Remove condition for checking the `soar.sh` file
If another `soar` module overwrites the previous one, it should be able to overwrite `soar.sh` shell profile too with custom option if set.
* chore(soar): Remove `unlock-path`, as it's too dangerous
* chore(soar): Don't copy update timer & service if `auto-upgrade` is false
* chore(soar): Style fix
* chore(soar): Don't execute `upgrade` when soar is already running
* chore(soar): Use environment variable for `SOAR_CONFIG` to simplify things
* docs(sour): Fix typo
* chore(soar): Use native `soar` command for setting `bincache` repo only
* fix(soar): Make `soar` condition check for auto-upgrades more reliable
* chore(soar): Some more improvements to auto-update condition check
False positive can happen if some text editor edits some file like `soar-something.txt` or similar.
This assures more that only executed binary is detected.
* chore(soar): Remove duplicate code for setting config
* docs(soar): Add full example of options in `module.yml`
* chore(soar): Rename `unlock-repos` to `additional-repos` & add docs about repo info
* chore(soar): Enable `pkforge-cargo` & `pkgforge-go` repos
* docs: rewordings, run through languagetool
* chore(soar): Add condition in shell profile to check if `soar` PATH already exists
* chore(soar): Disable redundant shellcheck SC2076 in shell profile
* docs: final reword
---------
Co-authored-by: xyny <git@xyny.anonaddy.me>
Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
* feat: initial draft of default-flatpaks v2
this version just sets up the config file but nothing to read it and install the flatpaks after boot
* chore: streamline logging
* chore: replace json with yaml as generated config format
* feat: set up groundwork for post boot scripts
* feat: rename installations -> configurations, initial implementation of post-boot part
* fix: put executable files into /usr/libexec/
* fix: improve fedora remote detection and removal
* feat: implement notifications for system flatpak setup
* chore(default-flatpaks): No need to expose `DISPLAY` for notify-send
* chore(default-flatpaks): Update service & add timers to match v1
* chore(default-flatpaks): Copy & enable timers instead of services
* chore(default-flatpaks): Fix typo for copying `user-flatpak-setup` timer
* chore(default-flatpaks): Copy post-boot files directly instead of placing them in `/usr/share/...`
* chore(default-flatpaks): Forgot to remove copying step of post-boot files to `/usr/share/...`
* chore: update to be in accordance with cli support for nushell
* feat: allow usage of fedora flatpak remote, remove fedora flatpaks and runtimes
* feat: refactor schema to support multiple versions of the module
* docs: separate docs for separate module versions
* fix: copy user-flatpak-setup.timer to correct directory
* chore: correctly document default values in schema
* fix: better flathub package checking
- use API url
- check everything before erroring out
* feat: warn users when giving this module v1 configuration
* fix: prevent addition of http get result into unavailablePackages list
* fix: mkdir before cp
* chore: fix () semantics problems highlighted by debugger
* feat: bluebuild-flatpak-manager CLI
* feat: alert user when trying to use module with old configuration
* docs: write basic documentation page and rewrite example
* fix: attempt to use configFile variable without dollar sign
* fix: no such things as .configurations
(the file is the array)
* fix: ensure no empty list is printed
* docs: add a quick note about learning to use the flatpak manager tool
* fix(schema): distinquish between versions
Co-authored-by: Gerald Pinder <gmpinder@gmail.com>
* fix: add noninteractive flag to flatpak install commands
* fix: ensure repo to be used is enabled
* chore: ignore errors in notify wrapper just in case
* chore: add link to announcement
* docs: run through languagetool
---------
Co-authored-by: fiftydinar <65243233+fiftydinar@users.noreply.github.com>
Co-authored-by: Gerald Pinder <gmpinder@gmail.com>
* docs(os-release): Add note about module placement
Modifying `ID` may cause failures in identification and installation of COPR packages during the build process, and is ideally placed later in the recipe.
* fix: use starlight note format
Co-authored-by: Gerald Pinder <gmpinder@gmail.com>
* fix: minor rephrasements
* docs: add more details to suggestion
---------
Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
Co-authored-by: Gerald Pinder <gmpinder@gmail.com>
Universal Blue removed `topgrade` & `ublue-update` from their repos, so I had to improvise with `skopeo`, since their `ublue-update` release is older than their `ghcr` container.
It is recommended to use `uupd` instead, as `ublue-update` is deprecated, I just fixed it so it can work until possible `uupd` bling submodule arrives.
I am getting recently quite a lot operation timeouts when using
rpm-fusion mirrors.
I believe failing over to the download location would help.
```
============================= Start 'bling' Module =============================
Pulling from bling: rpmfusion
Running RPMFusion repos install...
Downloading https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-42.noarch.rpm...failed
error: Handling argument https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-42.noarch.rpm: error sending request for url (https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-42.noarch.rpm): operation timed out
============================ Failed 'bling' Module ============================
subprocess exited with status 1
subprocess exited with status 1
Error: building at STEP "RUN --mount=type=bind,from=stage-files,src=/files,dst=/tmp/files,rw --mount=type=bind,from=ghcr.io/blue-build/modules/bling:latest,src=/modules,dst=/tmp/modules,rw --mount=type=bind,from=ghcr.io/blue-build/cli/build-scripts:ac63f9e9fb1509f7c005e1046b6ffb81214fe7f3,src=/scripts/,dst=/tmp/scripts/ --mount=type=cache,dst=/var/cache/rpm-ostree,id=rpm-ostree-cache-workstation-latest,sharing=locked --mount=type=cache,dst=/var/cache/libdnf5,id=dnf-cache-workstation-latest,sharing=locked /tmp/scripts/run_module.sh 'bling' '{"type":"bling","install":["rpmfusion"]}'": exit status 1
error: Recipe `build-containerfile` failed on line 29 with exit code 1
```
The building is done on a AWS machine, provided by Fedora CI infrastructure.
The network should be very stable there.
See
https://artifacts.dev.testing-farm.io/a065eed6-f896-4455-9113-d2a71598b84c/.
Signed-off-by: Miroslav Vadkerti <mvadkert@redhat.com>
Logic for locale wasn't perfect, noticeable with "Bluetooth Battery Meter" extension, where languages weren't installed, but were available.
This fixes it.
The patch added earlier today to not load brew into the shell
environment for root introduced a syntax error that breaks brew
integration with fish for all users (not just root). This fixes the
error.