Hello all,
I've been drafting and implementing a new Cockpit feature for providing a "Software Updates" page for "classic" yum/dnf/apt based systems (the current one is for Atomic OSTree only). This uses PackageKit to retrieve update information and install packages, and I've now tested it on Fedora 25, CentOS 7, Debian 8, Debian testing, and Ubuntu 16.04. It looks like [2] for me on Fedora 25 or like [3] on a Debian testing installation from a few weeks ago (thus there are tons of updates available, and Debian changelogs tend to be much more detailled).
This is now sufficiently useful and robust for getting some wider feedback and testing. For easier and faster development it's currently a standalone project/repository [4], it includes a README how to install it:
mkdir -p ~/.local/share/cockpit cd ~/.local/share/cockpit git clone https://github.com/martinpitt/cockpit-os-updates.git npm install npm run compile
If you don't have "npm", you need to install it first with "sudo yum install npm".
Feedback I'm looking for:
- How does the UI and update process work and feel for you? Does it cause bad appearance/rendering or visual glitches or even actual upgrade failures for you? (please include screenshots).
- Is there some missing feature which is crucial for a first public version/inclusion into Cockpit? Note that the spec talks about configuring automatic updates, but that will not be in the first version.
- I'm *very* new to React and JS at large, so I'd appreciate some commentary on the code for bad patterns/style.
Known issues:
- The tooltips for package names (package summary) and CVEs (CVE description) are not Cockpit-styled. This is a limitation of being a standalone module (I can't use Cockpit's tooltip React component) and will be fixed when including this into the Cockpit tree.
- Applying updates currently looks a bit simple-minded. This hasn't gone through a Garret-level design process yet, I just threw something initial together (progress bar and currently processed package).
- On Ubuntu 16.04 or Debian 8 (sorry, forgot which one) there are no changelogs. That's a limitation of what PackageKit can give us.
Thank you in advance!
Pitti
[1] https://github.com/cockpit-project/cockpit/wiki/Feature:-System-Updates-for-... [2] http://piware.de/tmp/os-updater-20170523.png [3] http://picpaste.com/pics/updates-debian-POB2UySL.1495548975.png [4] https://github.com/martinpitt/cockpit-os-updates [5] https://github.com/martinpitt/cockpit-os-updates/blob/master/os-updates.jsx
On Tue, 2017-05-23 at 16:25 +0200, Martin Pitt wrote:
Hello all,
I've been drafting and implementing a new Cockpit feature for providing a "Software Updates" page for "classic" yum/dnf/apt based systems (the current one is for Atomic OSTree only). This uses PackageKit to retrieve update information and install packages, and I've now tested it on Fedora 25, CentOS 7, Debian 8, Debian testing, and Ubuntu 16.04.
Thanks for working on this! I may be way off here, but I seem to recall hearing some rumblings lately about making PackageKit go away. It might be worth checking in with the devs on that just in case I'm not entirely wrong...
Hello Adam,
Adam Williamson [2017-05-23 9:00 -0700]:
Thanks for working on this! I may be way off here, but I seem to recall hearing some rumblings lately about making PackageKit go away. It might be worth checking in with the devs on that just in case I'm not entirely wrong...
Hmm, I spoke to Richard some days ago about some PK bug, and he didn't mention anything like that. But I'll ask again.
We'll also use it for finding/installing "server apps" soon, and it's the basis for software installation GUIs in several distros, so that would be kind of a bummer..
Thanks,
Martin
On 05/23/2017 07:25 AM, Martin Pitt wrote:
This is now sufficiently useful and robust for getting some wider feedback and testing. For easier and faster development it's currently a standalone project/repository [4], it includes a README how to install it:
mkdir -p ~/.local/share/cockpit cd ~/.local/share/cockpit git clone https://github.com/martinpitt/cockpit-os-updates.git npm install npm run compile
If you don't have "npm", you need to install it first with "sudo yum install npm".
This brings up an idea: it would really really help with user testing if we could build test versions like this one (maybe from PRs) into containers and make them available with a tag.
It's pretty trivial for me, or other users, to install an alternate version of Cockpit via container. Running npm compile (even inside a container) is kind of a pain.
I'll give building this one as a cockpit/ws container a shot.
On 23.05.2017 21:08, Josh Berkus wrote:
On 05/23/2017 07:25 AM, Martin Pitt wrote:
This is now sufficiently useful and robust for getting some wider feedback and testing. For easier and faster development it's currently a standalone project/repository [4], it includes a README how to install it:
mkdir -p ~/.local/share/cockpit cd ~/.local/share/cockpit git clone https://github.com/martinpitt/cockpit-os-updates.git npm install npm run compile
If you don't have "npm", you need to install it first with "sudo yum install npm".
This brings up an idea: it would really really help with user testing if we could build test versions like this one (maybe from PRs) into containers and make them available with a tag.
It's pretty trivial for me, or other users, to install an alternate version of Cockpit via container. Running npm compile (even inside a container) is kind of a pain.
I'll give building this one as a cockpit/ws container a shot.
Yeah, that would be cool.
Let us know (here on the list) when you do end up building such a container (I imagine with systemd, NetworkManager, and friends inside it).
If it's not too hacky, we could have our bots do this automatically for each Cockpit pull request.
Cheers,
Stef
cockpit-devel@lists.fedorahosted.org