Feature: OS Package Installation and Updates - cockpit-project/cockpit GitHub Wiki
Notes
- There are some cases where additional software needs to be installed in order for a feature to work. The base OS installation might not have shipped a piece of software for example. This happens in a couple of cases in Cockpit, such as for docker (won't be installed by default in Fedora 24), sosreports, tuned etc. We currently allow for starting of services, but not installing them.
- Error cases for failures of installation.
- Number of dependencies before installation.
- Avoid offering from unsigned repos if possible, and just hide those.
- We need some way of finding software you paid for, but that is in repositories that are not enabled.
- https://github.com/cockpit-project/cockpit/wiki/Feature:-Subscription-repositories
Stories
Sarah Manning is a part-time backend developer, part-time sysadmin at her company. She's fairly paranoid when it comes to her systems. Her worst nightmare is that her systems will get hacked somehow. Sarah reads about a new kernel security vulnerability in the news and worries that the 3 servers at her job are now vulnerable against attacks.
Philip J Fry is a junior sysadmin. 23 years old and fairly new on the job. He's a bit nervous that someone might figure out he's not THAT good of a sysadmin, but so far things have been going well. He's been tasked with installing Docker on one of the servers at their office, as the company want to migrate some of the services on the server from traditional packages to containers.
Note: docker
is now automatically pulled in from the cockpit-docker
package. Also, this story better adheres to the Applications support feature.
Robert Paulson is a developer at a small IT company. He's 52 years old. He's a senior engineer, but got tossed the sysadmin hat at the company. He mostly does engineering, but is also tasked with maintaining the company's build- and fileservers. He doesn't know all the server subsystems in detail and doesn't want to spend too much time doing system administration, since it takes away time from his regular projects. Something is acting weird with one of their servers, so he called support for his OS provider. They asked him to create a diagnostics report to be able to examine the error.
Workflows
Sarah launches her web browser and logs in to cockpit. The system notifies her there is indeed a fix for a security vulnerability available for that system. She updates the system and reboots the system. She does the same with the other two systems. She can now relax.
Phillip logs in to the server with Cockpit. He searches for Docker in the software installation tool, but gets a message that it's only in the Extras repositories. He enables that repository and proceeds to install the Docker packages. He then start the service, makes sure it works correctly by testing with a simple test container, and it works! He can now get on with the task of get the services running as containers.
Robert opens cockpit on the server and navigates to diagnostic report under Tools. The page says it can't run the system, because a component is missing and suggests him to install it. He does so and now it works as expected. He create the diagnostic report and send it off to support. They are able to help him resolve the issue with his server. Robert is happy since he can go back to programming now.
Prior art
- GNOME Software - Updates
- GNOME Software - Disabled repositories
- GNOME Software - Installed packages
- Wordpress - Updates Guide Screenshot
- Windows Server 1 2
- Synology Diskstation 5.0 Article Video
- GNOME Packages
Mockups
Software Updates
Package-based Updates
Update notification
PackageKit On-demand Installer
- On-demand installer for NFS, with a prompt workflow
- Interactive mockup for displaying more information in a dialog (in this example: deps for nfs-utils)
- Interactive mockup for installing PCP (click "Enable persistent metrics...")