Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wip/hughsie/fwupd sync.service #6337

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

Conversation

hughsie
Copy link
Member

@hughsie hughsie commented Nov 8, 2023

Type of pull request:

…ranch

This allows the device to set a branch (e.g. the modem carrier configuration)
and for the client to be able to *downgrade* the firmware version to make the
device work.
@hughsie hughsie requested a review from superm1 November 8, 2023 15:06
@hughsie hughsie self-assigned this Nov 8, 2023
@hughsie
Copy link
Member Author

hughsie commented Nov 8, 2023

@superm1 insane?

Copy link
Member

@superm1 superm1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What happens when PK authentication is required? There could potentially be devices that need PK in the update.

@hughsie
Copy link
Member Author

hughsie commented Nov 8, 2023

What happens when PK authentication is required

Ohh for downgrade -- maybe we could run the -sync service as root always?

@superm1
Copy link
Member

superm1 commented Nov 8, 2023

What happens when PK authentication is required

Ohh for downgrade -- maybe we could run the -sync service as root always?

A service that runs as root and potentially fetches stuff from the web? I'm a bit wary of that.

@hughsie
Copy link
Member Author

hughsie commented Nov 8, 2023

A service that runs as root and potentially fetches stuff from the web? I'm a bit wary of that.

Ew, indeed -- agreed. I guess it could work for things we already have in the cache -- e.g. an "offline only" mode -- we already store the firmware .cab for all modem carrier configs and so that's more likely than you'd expect. Similarly for a BKC, in that case a directory remote is going to be much more common as you probably don't want random things downloading GBs of data without some kind of user confirmation.

@superm1
Copy link
Member

superm1 commented Nov 8, 2023

How about instead having a mode for the daemon to auto-sync without a client?

@superm1
Copy link
Member

superm1 commented Nov 8, 2023

Thought about it more, here's my idea.

When a bkc is specified in fwupd.conf you change fwupd refresh service behavior to cache not just metadata but also anything that is part of the bkc.

The daemon reads the same key and if those devices show up will automatically upgrade/downgrade to match them. It will also forbid clients from upgrading/downgrading them manually.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

None yet

2 participants