Commit graph

291 commits

Author SHA1 Message Date
xyny
48dfe2e526
Merge branch 'main' into main 2024-02-28 16:06:24 +00:00
fiftydinar
dda6d482cd
feat(systemd): Inform user when systemd units are copied in build logs (#151) 2024-02-26 17:34:33 +00:00
fiftydinar
28ed8ed259
feat(systemd): Add support for including systemd units (#144)
* feat(systemd): Add support for including systemd units

This also gets rid of `files` module dependency & exposes this function better to the users.

Related issue:
https://github.com/ublue-os/bling/issues/143

* fix(systemd): Make included systemd unit check better

It doesn't fail now if there is systemd folder present without any files.

* chore(systemd): Code spacing fixes

* chore(systemd): Disable dotglob, as it's not needed for systemd units

* docs(systemd): Remove inclusion term
2024-02-26 16:55:06 +00:00
Hikari
cf5d0e1750
docs: update link in files module readme (#150)
* chore: update file readme

* fix: broken link due to bad markdown formatting

---------

Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
2024-02-26 16:48:55 +00:00
Gerald Pinder
f404e4ed07
docs(akmods): Remove false Containerfile modification info (#147)
Adds info about changing base in recipe instead.
2024-02-25 17:02:34 -05:00
fiftydinar
71333e281a
docs(akmods): Remove -nvidia suffix from surface & asus base entries
Co-authored-by: Gerald Pinder <gmpinder@gmail.com>
2024-02-25 22:59:47 +01:00
fiftydinar
4afe394b1a docs(akmods): Remove mention about Fedora version 2024-02-25 22:53:12 +01:00
fiftydinar
d409fe8481 docs(akmods): Remove false Containerfile modification info
Adds info about changing base in recipe instead.
2024-02-25 22:45:28 +01:00
xyny
ace7bddeb8
fix(gschema-overrides): Ditch workaround for trimming newlines (#136)
It is no longer needed, since get_yaml_array uses `readarray -t` command
now instead of regular `readarray`.

It may also fix rare parsing issue some user had (array element looks
fine, but it's still not parsed properly).
Note that this is a speculated issue, not something we're 100% sure of.

Merge this after BlueBuild transition period, since legacy build.sh
doesn't have get_yaml_array fix.
Alternatively, I can define custom get_yaml_array function here, with
note for supporting legacy templates.
2024-02-25 17:55:24 +00:00
xyny
891989586e
Merge pull request #107 from fiftydinar/delete-stuff-containerfile
chore: Don't copy redundant empty "rpms" & "files" folder
2024-02-25 17:49:58 +00:00
fiftydinar
76cb237acc Merge remote-tracking branch 'upstream/main' into gschema-override-newline 2024-02-25 18:36:40 +01:00
fiftydinar
189ecf39d4 Merge remote-tracking branch 'upstream/main' into delete-stuff-containerfile 2024-02-25 18:35:48 +01:00
Gerald Pinder
1e9e942cc3 chore: Update key pair 2024-02-25 11:54:21 -05:00
xyny
52f6bdbfd2
refactor: migration PR 2024-02-25 16:48:55 +00:00
fiftydinar
d3aff69766 Merge remote-tracking branch 'upstream/main' into delete-stuff-containerfile 2024-02-25 14:14:55 +01:00
fiftydinar
3d5533b450 Merge remote-tracking branch 'upstream/main' into gschema-override-newline 2024-02-25 14:13:46 +01:00
fiftydinar
b965a31853 feat(systemd): Add support for including systemd units
This also gets rid of `files` module dependency & exposes this function better to the users.

Related issue:
https://github.com/ublue-os/bling/issues/143
2024-02-25 14:01:16 +01:00
xynydev
e423ce3b68 chore: remove files module documentation 2024-02-25 12:30:42 +02:00
fiftydinar
fec6a76116
chore(default-flatpaks): Obtain flatpak list of apps without runtimes (#142)
Since runtimes are not supported in our module, we don't need them in a flatpak list inside binaries.
2024-02-25 07:41:26 +00:00
fiftydinar
2157b7eb5e
fix(fonts): Module failing with legacy templates (#141)
Issue described here:
https://github.com/blue-build/github-action/issues/16#issuecomment-1961862342
2024-02-24 18:03:10 +00:00
xynydev
0d64b292e6 refactor: move bling copr download, switch to ublue staging copr 2024-02-21 17:59:22 +02:00
xynydev
d0110160ba chore: change the rest of readme urls in module.ymls 2024-02-21 17:38:01 +02:00
xynydev
6762ea6a16 chore: change image name 2024-02-21 17:36:36 +02:00
xynydev
5de929b89c docs: overhaul README.md 2024-02-21 16:50:06 +02:00
xynydev
c6aea9234c chore: replace URLs with ublue-os/bling 2024-02-21 16:39:34 +02:00
fiftydinar
adab64e38e chore(gschema-overrides): Add missing quotes for file variable 2024-02-21 15:09:36 +01:00
fiftydinar
769cd4bf3d fix(gschema-overrides): Ditch workaround for trimming newlines
It is no longer needed, since get_yaml_array uses `readarray -t` command now instead of regular `readarray`.

It may also fix rare parsing issue some user had (array element looks fine, but it's still not parsed properly). Note that this is a speculated issue, not something we're 100% sure of.

Merge this after BlueBuild transition period, since legacy build.sh doesn't have get_yaml_array fix.
Alternatively, I can define custom get_yaml_array function here, with note for supporting legacy templates.
2024-02-21 15:04:12 +01:00
fiftydinar
1d50642f88
fix(akmods): Make check for Surface image more reliable (#134)
Instead of depending on the base image name, it just detects if Linux Surface kernel is installed before installing Surface akmods.
2024-02-19 19:40:44 +00:00
fiftydinar
bfda18d3a2
fix(signing): Use -euo pipefail instead of -oue (#129)
* fix(signing): Use `-eou` pipefail instead of `-oue`

* Update signing.sh
2024-02-12 13:33:30 +00:00
xyny
787f44ece8
ci: trigger website rebuild when module readme changed 2024-02-12 13:32:22 +00:00
fiftydinar
cc25f6970b
docs(akmods): Add notice when builds are failing due to upstream issue (#128)
* docs(akmods): Add notice when builds are failing due to upstream issue

* chore: add missing "a"

---------

Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
2024-02-12 13:30:28 +00:00
fiftydinar
1e1197dd0b
refactor(default-flatpaks): Switch to standardized BlueBuild location, implement useful docs into files & make flatpak detection + comparison more robust (#122)
* chore(default-flatpaks): Switch to standardized BlueBuild location

Use

`/usr/etc/bluebuild/default-flatpaks`

location instead of

`/usr/etc/flatpaks`

If possible, we should ideally use this location for system modifications:

`/usr/share/bluebuild/default-flatpaks`

While having user modifications in:

`/usr/etc/bluebuild/default-flatpaks`

But it needs to be figured out how the logic will work for separating system & user modifications this way.

I used this logic in unofficial `initramfs-setup` module & it works well, by merging both system & user files into 1 output.

However, this method can create duplicates if user specified it in it's modification, so I mentioned that user should look if the system entry has modifications they need. Perhaps, array diff can be done, which would circumvent this.

So merge this for start.

Only other module which has potential for migrating to standardized BlueBuild config is yafti (more details in other PR I'll do in some time).

* refactor(default-flatpaks): Make default-flatpaks more robust

Document in detail to user how he can change the config in files itself.

Also document what files do in `/usr/share/bluebuild/default-flatpaks` as well.

Refactor flatpak lists detection to be more reliable by excluding words starting with # symbols, whitelines & duplicate entries. Use `comm` for comparing flatpak list to existing flatpaks output instead of using `grep`, as it's easier to use & it's more reliable.

Separate user's & maintainer's modifications better by utilizing read-only `/usr/share/bluebuild/default-flatpaks` directory for maintainers, while for users we would use `(/usr)/etc/bluebuild/default-flatpaks` directory. Reverting to defaults is more reliable as it would avoid users from touching maintainer's modification directly.

I wouldn't modify repo-info.yml doc content, as we restrict it from user's modification & we wouldn't want to potentially ruin yaml parsing just for that.

Only thing that remains is to test this in a VM. And look to potentially make code cleaner.

* draft(default-flatpaks): Avoid install/remove duplicate loop scenario

I have to figure out this part

* draft(default-flatpaks): Avoid install/remove duplicate loop scenario pt.2

* draft(default-flatpaks): Avoid install/remove duplicate loop scenario pt.3

* fix(default-flatpaks): Avoid install/remove duplicate loop scenario

* chore(default-flatpaks): minor grammar adjustment

* draft(default-flatpaks): Account for scenario...

when user sets the same package in install list that is in maintainer's remove list & vice-versa

* fix(default-flatpaks): Account for scenario when user sets the same package in install list that is in maintainer's remove list & vice-versa

* fix(default-flatpaks): Typo in code for combined install list

* chore(default-flatpaks): Remove unnecessary echo

* chore(default-flatpaks): Make directory for user config

* chore(default-flatpaks): Explain user's vs maintainer's flatpak list situation better

* fix(default-flatpaks): Typo in user's configuration for system flatpaks install

* chore(default-flatpaks): There is no need to mkdir parent folder if child folder is created

* chore(default-flatpaks): Make config organization cleaner

Don't use echos for writing configs, use files instead for easier & more intuitive editing.

* fix(default-flatpaks): Copy notification file properly

Made a mistake in variable name

* docs: README fixes

- don't use ambiguous term "live-user"
- capitalize Flatpak
- grammar and phrasing changes

* docs: grammar and phrasing changes in configuration file docs

- replace "maintainer's config" with "image's default config"
- rewrite flatpak list format explanation

* docs: slightly reword local modification section again

* chore(default-flatpaks): Add a missing newline to system flatpak list

---------

Co-authored-by: xynydev
2024-02-11 09:33:05 +00:00
Tulili
85d3b6b8fd
fix(bling, laptop): QOL Fixes
fixes #123 #78!!
2024-02-09 00:03:07 -03:00
gerblesh
cd0f836a00
fix: copy public key to the right location (#126) 2024-02-08 14:32:47 -08:00
dependabot[bot]
e2aae1da73
chore(deps): bump sigstore/cosign-installer from 3.3.0 to 3.4.0 (#121)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](https://github.com/sigstore/cosign-installer/compare/v3.3.0...v3.4.0)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-05 17:43:46 +00:00
fiftydinar
67619ce418
fix(gschema-overrides): Get rid of files module dependency (#120)
* chore(gschema-overrides): Get rid of `files` module dependency

Gschema.override files are now placed in /config/gschema-override folder.

* chore(gschema-overrides): Don't use 1st slash for new override location in docs

* chore: Use `zz1-` prefix instead of `z1-`

It ensures that no gschema override will bypass user one with override starting with letter z.
2024-02-05 10:46:13 +00:00
xynydev
03ac42e16f fix: switch urls to fetch main branch in module.ymls 2024-02-04 18:18:35 +02:00
xynydev
93f3807999 fix: switch urls to fetch main branch in modules.json 2024-02-04 18:11:17 +02:00
xynydev
81769082de style: format modules.json 2024-02-04 18:08:11 +02:00
xyny
5e455a1477
refactor: start using module.yml for module metadata (#116)
* feat: add initial module.yml for rpm-ostree

* chore: add shortdesc to module.yml

* feat: add missing module.ymls

* feat: add website rebuild action for module reference updates

* chore: remove old readme in modules dir

* refactor: switch to a hybrid module.yml + README arrangement

* chore: switch docs to use starlight aside syntax
2024-02-04 16:05:22 +00:00
fiftydinar
3914df391f
fix(files): Ensure that parent dot files & folders are copied (#115)
* fix(files): Fix build error on copying dotfiles

Enable dotglob when copying folders/files, disable when it's finished.

* chore(files): Ensure that dotglob is executed outside of loop

* fix(files): Ensure that .gitkeep file is not present in the build image

* fix(files): Ensure that cp command ignores if something is present in directory or not
2024-02-03 18:40:24 +00:00
fiftydinar
3453736f24
fix(signing): Use /usr instead of usr for copying image-info.json (#114) 2024-02-03 13:20:12 +00:00
gerblesh
2ff118dbdc
feat: add signing module to replace signing.sh (#111)
* feat: signing module

* docs: add docs for `signing` module

* fix(signing.sh): add space to if

Co-authored-by: Gerald Pinder <gmpinder@gmail.com>

* fix(signing): grammar in README and formatting in signing.sh

* fix: only modify image-info.json

* fix: typo in image vendor name

---------

Co-authored-by: Gerald Pinder <gmpinder@gmail.com>
2024-02-03 10:30:01 +00:00
fiftydinar
b528a0acc9
feat: Add gschema-overrides module (#110)
* feat: Add `gschema-overrides` module

* chore: Clarify "including prefix" section better

* chore: Some formatting fix

* chore: Don't mention higher prefix, as it can confuse users

* fix: Add partial troubleshooting of most preferred gschema-overide

It does not support aborting on fail currently, as I have to think on how to implement it when multiple gschema-override files are included in the module.

* Revert "fix: Add partial troubleshooting of most preferred gschema-overide"

This reverts commit 1dde51938e45648c7f53b696e61249339a2eb277.

* fix: Use `z1-` prefix for to avoid future conflict with Universal Blue images

* chore: Fix some README remarks from xynydev

* chore: Note that GTK DEs other than Gnome are also supported

* chore: Be more specific about GTK-based DEs

* chore: Clarify using module section a tiny bit better

* chore: Add editing gschema.overrides section & make README formatting cleaner

* chore: Reword some sentences better

* fix: don't use multiple toplevel headings, replace <br> tags with spammed spaces

---------

Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
2024-02-02 17:57:00 +00:00
fiftydinar
9b66c64563
feat(default-flatpaks): install & uninstall notifs (#109)
* feat(default-flatpaks): Support for notifications that inform the user before flatpak install/uninstall procedure begins

This can be implemented to be more readable maybe, but this should work.

* chore(default-flatpaks): There is no need to call notifications true statement twice

* chore(default-flatpaks): Make starting notifications consistent with finished ones

* chore(default-flatpaks): Use "listed" term rather than "some"

* chore(default-flatpaks): Use "some" notification only for uninstalling flatpaks
2024-01-30 17:06:25 +00:00
Lordus Kordus
122d436f21
fix(ublue-update): Install 'python3-pip' if it's not already installed (#108) 2024-01-28 18:15:00 +00:00
fiftydinar
54d48eb4bd chore: Don't copy redundant empty "rpms" & "files" folder
Since this is merged, we can safely merge this too:

https://github.com/ublue-os/startingpoint/pull/235

Maybe a bit later for others to catch on updating startingpoint?
2024-01-28 14:21:54 +01:00
Như Bảo Trương
cb66d4562a
fix: Install topgrade to /usr (#106)
Install topgrade to /usr since /usr/local doesn't exists when building ublue image
2024-01-28 06:59:56 +00:00
xyny
8f13b3d69f
fix: install topgrade in ublue-update.sh 2024-01-27 18:57:40 +00:00
gerblesh
d71fa6cb13 fix: install topgrade in ublue-update.sh
`ublue-update` recently moved to `topgrade` for executing updates (https://github.com/ublue-os/ublue-update/pull/102). Because of this move, `ublue-update` needs `topgrade` to be installed in order to install the rpm: https://github.com/ublue-os/ublue-update/blob/main/ublue-update.spec
2024-01-27 10:55:20 -08:00