Contributor Invite: Revise the app page for Cockpit

About this Contributor Invite:

  • Task Area: Coding
  • Effort rating: 2/5
  • Skills required: Python, Django Views/Templates

Description of the Problem:

Cockpit is an administrative interface which makes it easy to administer some of the technical parts of your server and is recommended for advanced users of FreedomBox. Currently, once a user installs Cockpit on their FreedomBox, they can only access Cockpit if they are reaching their FreedomBox from (1) freedombox.local or (2) a proper domain name (like example.freedombox.rocks). If you try to access your FreedomBox from an IP address (like 192.168.1.8, which is what you might see as the local IP address of your FreedomBox), then you will see a blank page.

When Cockpit is accessed using an IP address, it does not work and shows a blank page after the login screen. To prevent users from accessing Cockpit using an IP address, we need to add more information to the Cockpit application description within the FreedomBox UI.

What we ask of you:

  • Add a third paragraph to the Cockpit application description with the following content: “Cockpit requires that you access it through a domain name. It will not work when accessed using an IP address as part of the URL.”
  • Add a new section with title “Access” that contains the following information. A paragraph that says “Cockpit will only work when accessed using the following URLs.” This should be followed by a list ( <ol> ) of URLs. These URLs are constructed using the template <origin>/_cockpit . List of origins should be retrieved from Cockpit’s configuration file /etc/cockpit/cockpit.conf by using the already existing utility get_origin_domains() and filtering out localhost URLs.

Link to the issue in GitLab: https://salsa.debian.org/freedombox-team/plinth/issues/1649

It is strongly recommended that you read about this issue in the GitLab issue page above.

How to claim this Contributor Invite:

Do you want to accept this invitation to contribute? If so, follow these steps:

  1. Comment on this forum post indicating that you would like to claim the invite. This will prevent multiple people from working on the same issue at the same time.
  2. Register an account with our GitLab instance and begin making your contributions on the GitLab issue page for this task. You can use the comment section of this forum post to ask questions, but the bulk of the development discussion should happen on GitLab.

Resources:

If you need help with this issue, please feel free to ask for it from members of our core team:

  • Sunil Mohan Adapa (@sunil): Lead Developer & Code Reviewer
  • Joseph Nuthalapati (@njoseph ): DevOps Engineer, Developer, & Code Reviewer
  • James Valleroy (@jvalleroy) : Release Manager, Developer, & Code Reviewer