291 Commits

Author SHA1 Message Date
James Valleroy
e66bd00b91
Release v21.3 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2021-02-11 18:00:16 -05:00
John Lines
f978d2f0d0
zoph: Add new app to organize photos
- Identify Freedbombox admin who installed the app to be zoph admin.

- Implement backup and restore.

- Photos directory should remain at /var/lib/zoph, for proper operation of
backups.

- There remains an issue that the App is enabled before it is configured but
will not work correctly until configuration.

- OpenStreetMap mapping is enabled. These should be configurable before
installation.

- Add initial forms.py and views.py to Zoph app, however these are currently
unused as urls.py does not invoke the view. When the view is not invoked the
Zoph App installs, with single signon, currently as the first LDAP user, rather
than the plinth user.

- The first user's preferences are not set, and need to be manually set to avoid
other errors.

* Sunil's changes

- Squash commits and re-split them.

- Drop documentation as it will be auto populated from wiki later.

- Remove outdated validation code from manifest.

- Drop some dead code.

- Don't send MySQL password over command line for improved security. Instead
  rely on Unix authentication of root user similar to backup/restore process.

- Use JSON for exchanging configuration dump to avoid encoding errors.

- Add username validation to avoid a potential SQL injection.

- Update description for neural tone and brevity. Add information about how user
  accounts work in FreedomBox

- Fix functional tests.

- Drop all code related to changing photos path until it is ready.

- Update URL from /zoph to /zoph/ to avoid another redirect.

- Fix disabling the app.

- Use icon that Zoph uses for favicon as logo. Update copyright file.

- Fix spelling unzip.

- Minor refactors. Run yapf and isort.

- Use subprocess.run() instead of os.popen() everywhere for better security with
argument parsing.

- Enable OpenStreetMap by default. User have a choice to disable it before using
the app. Add label to explain privacy concerns.

- Fix dropping database by using --force argument.

- Cleanup enabling the app to not enable the app when updating configuration.

- Use AppView's default template instead of overriding.

- Update functional tests to just check if the app is enabled/disabled as
expected. Checking that Zoph site is available will require reliable handling of
admin user.

Signed-off-by: John Lines <john@paladyn.org>
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2021-02-10 01:13:29 -08:00
James Valleroy
6baa6e7698
Release v21.2 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2021-02-06 00:40:26 -05:00
James Valleroy
80285d3f5f
Release v21.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2021-01-25 21:09:03 -05:00
James Valleroy
adf404ca5c
Release v21.0 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2021-01-11 20:07:22 -05:00
James Valleroy
da4ab1bc8b
Release v20.21 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-12-28 21:09:18 -05:00
James Valleroy
92c9ba21ac
debian: Bump standards version to 4.5.1
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-12-28 21:08:14 -05:00
James Valleroy
a73edb9f32
Release v20.20.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-12-19 19:19:18 -05:00
achalaramu
00bc55f762
Migrate bootstrap 4 from bootstrap 3
Closes: #1818. The new navbar collapse handles items better without a scrollbar.

- Switch dependency to newer bootstrap4 library.

- Bootstrap 4 has 5 grid levels instead of 4. Adjust all classes accordingly to
retain current semantics.

- Update for newer markup for dropdowns.

- Replace use for labels with badges. Labels have been removed. Use
badge-secondary instead of label-default.

- Replace use of btn-xs with btn-sm. Size is roughly the same.

- Accommodate removal of form-horizontal.

- .hidden* and .visible* classes have been removed. Use alternate utilities.

- Replace use of table-condensed with table-sm.

- Update progress bar background styling. .progress-bar-* have been replaced
with bg-*.

- Drop support for IE9 and below. Bootstrap 4 does not support those browsers.

- Use the new simplified markup for navs, navbar and navbar-toggler. Accommodate
removal of .navbar-fixed-top.

- Update the JSXC page too.

- Update all values that are using rem units. The base font size is now 1rem =
16px instead of 1rem = 10px. This the default for bootstrap 4.

- A button inside a dropdown menu is natively supported by bootstrap 4. Remove
custom styling done earlier.

- Drop use of removed class thumbnail.

- Override colors for buttons and warnings to keep the old style.

- Use new markup for close buttons inside alerts.

- Use .collapse.show instead of .collapse.in as per bootstrap 4 styling.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Veiko Aasa <veiko17@disroot.org>
2020-12-19 11:26:32 +02:00
James Valleroy
e40d14ca6e
Release v20.20 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-12-14 19:31:38 -05:00
James Valleroy
2fc5760af4
Release v20.19 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-11-30 19:09:18 -05:00
James Valleroy
3b25004970
debian: Add python3-openssl as build dependency for tests
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-11-30 19:00:58 -05:00
James Valleroy
45da955c31
Release v20.18.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-11-23 18:38:07 -05:00
James Valleroy
0e7c7ce15d
Release v20.18 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-11-16 20:50:00 -05:00
James Valleroy
b515a8f9cc
Release v20.17.1 to experimental
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-11-07 08:45:14 -05:00
James Valleroy
e7515683b3
debian: Rename source package to freedombox
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-11-07 08:07:48 -05:00
James Valleroy
5fbcbe9e16
Release v20.17 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-11-02 19:49:19 -05:00
James Valleroy
e03161201c
Release v20.16 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-10-19 20:43:03 -04:00
James Valleroy
a7829d3bf7
debian: Add Brazilian Portuguese debconf templates translation
Closes: #972449.

Thanks to Adriano Rafael Gomes for the translation.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-10-19 17:30:34 -04:00
James Valleroy
0457792ba4
Release v20.15 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-10-05 19:26:19 -04:00
Sunil Mohan Adapa
fe183dbc72
debian/control: Add sshpass as build dependency
- Required only by tests when run as superuser. However, it's addition makes it
  very uniform to ensure that all dependencies are pre-installed in a container
  when running tests.

- We may find ways to run root user tests in future.

- The package seems very stable.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-10-05 00:05:57 -07:00
Veiko Aasa
6b61ca2f18
ssh: action script: Require user credentials when editing ssh keys
This change prevents the plinth user to set the ssh-keys without
knowing the user password.

- Debian: added new dependency python3-pampy to authenticate users.
- Added additional required parameter --auth-user to the
  'actions/ssh set-keys' command. A password should be
  provided through STDIN.

Tests performed:
- running 'actions/ssh set-keys' with empty or wrong admin credentials
  fails.
- running 'actions/ssh set-keys' with correct admin credentials
  succeeds.
- running 'actions/ssh set-keys' with correct non-admin credentials
  succeeds if the --username is the same user.
- running 'actions/ssh set-keys' with correct non-admin credentials
  fails if the --username is a different user.

Signed-off-by: Veiko Aasa <veiko17@disroot.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-10-05 00:05:41 -07:00
James Valleroy
afc6b178a4
Release v20.14.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-23 07:38:44 -04:00
James Valleroy
d5b764df81
Release v20.14 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 17:43:05 -04:00
Sunil Mohan Adapa
7a11ba9fa3
deluge: Use older icon to drop CC 2.0 license
Tests:

- Check the interface in apps page and in the Deluge app page that icon has
changed.

- No lintian warnings related to debian/copyright file.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 15:23:32 -04:00
Sunil Mohan Adapa
bb28ac1b72
doc: manual: Replace manual icons to drop CC 2.5 license
Tests:

- Affected sections/pages of the manual are: Firewall, Hardware and VirtualBox.
Confirm by diffing with manual generated without the code changes.

- Open all affected pages and the full manual page and confirm that images have
changed.

- Check all affected pages and the full manual page in FreedomBox interface and
confirm that images have changed.

- Check all affected sections in the generated PDF.

- Repeat tests for English and Spanish manuals.

- No lintian warnings related to debian/copyright file.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-09-15 15:23:29 -04:00
James Valleroy
2b4f2aa15f
debian: Temporarily revert source package rename
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-09-13 19:49:51 -07:00
James Valleroy
6a2973f629
debian: Remove unused vars from postinst
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-29 18:31:30 -07:00
James Valleroy
238c0cecd6
debian: Don't show first wizard secret on command line
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-29 18:31:11 -07:00
James Valleroy
085ed3444a
debian: Add unit tests to autopkgtest
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-29 18:10:14 -07:00
James Valleroy
1b55849c02
doc: Add icons used in manual
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-28 12:09:18 -04:00
Joseph Nuthalapati
4e9d22d376
apps: Remove Coquelicot
Bepasty is the replacement file-sharing app.

Signed-off-by: Joseph Nuthalapati <njoseph@riseup.net>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-21 15:42:14 -07:00
James Valleroy
7edc2f4e13
bepasty: New app for file upload and sharing
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-21 21:50:38 +05:30
Sunil Mohan Adapa
56326a7536
storage: Fix expanding partitions on GPT partition tables
GPT scheme has two mostly identical partition table headers. One at the
beginning of the disk and one at the end. When an image is written to larger
disk, the second header is not at the end of the disk. Fix that by moving second
partition to end of the disk before attempting partition

Tests:

- Unit tests run as root work.

- On A64-OLinuXino board, boot with eMMC and UEFI image. The partition does not
expand on initial setup. Trying to manually expand in storage app fails. Apply
patch. Manual expansion works.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-08-16 18:00:39 -04:00
James Valleroy
a89ae56382
debian: Split copyright paragraph to avoid lintian error
Update overall copyright year.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-15 15:50:29 -07:00
James Valleroy
53919d1374
debian: Fix use of wildcard path in copyright
Avoid a lintian info about network-freedombox.svg.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
[sunil: Add network-connection*.svg to list, also based on Tango icons]
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-15 15:44:11 -07:00
James Valleroy
a2d45d31bb
debian: Add gbp dch config
Simplifies running the `gbp dch` command.

Also detected by debian-janitor to skip updating the changelog.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-08-15 12:12:54 -07:00
Veiko Aasa
0df674dc20
debian: Add newline to end of /var/lib/plinth/firstboot-wizard-secret
Fixes #1882

Tests performed:
- During the .deb package installation, the firstboot secret
  is shown correctly
- the firstboot secret is separated from the next prompt after
  running `cat /var/lib/plinth/firstboot-wizard-secret`
- plinth web interface accepts the firstboot secret

Signed-off-by: Veiko Aasa <veiko17@disroot.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-08-01 09:55:21 -04:00
Federico Ceratto
d399013d82 Release v. 20.13 to Unstable 2020-07-18 12:14:39 +01:00
James Valleroy
d5bebba6e7
Prepare for v20.13 release
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-07-13 19:06:50 -04:00
Sunil Mohan Adapa
b1f2c6e446
debian: Rename source package to freedombox from plinth
From documentation[1][2], it appears that the proper way to rename the source
package is simply to change the source package name. The binaries will be
treated generated from a new source package name. The old source package will
then not have any binaries associated with it. This will prompt the 'dak
cruft-report' tool to automatically remove the old source package[3]. No further
action will necessary to remove the old source package.

Links:

1) https://wiki.debian.org/RenamingPackages

2) https://www.debian.org/doc/manuals/developers-reference/pkgs.html#moving-removing-renaming-orphaning-adopting-and-reintroducing-packages

3) https://wiki.debian.org/ftpmaster_Removals

Tests:

- Build .deb package. Package is built successfully. Source package name is
'freedombox'.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-07-12 09:20:22 -04:00
Sunil Mohan Adapa
0247a0eacd
static: Drop unused link to Lato ttf font
Tests:

- Interface shows Lato font as usual in apps and system pages.

- Build .deb package. Lintian does not show a warning related override for the
TTF font.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-07-12 09:20:18 -04:00
James Valleroy
c544160a94
Release v20.12.1 to unstable
Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
2020-07-05 15:41:09 -04:00
Sunil Mohan Adapa
af276461fc
Release v20.12 to unstable
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-06-29 16:41:18 -07:00
Sunil Mohan Adapa
bf7a9b8c7a
d/rules: vagrant: INSTALL.md: Fix installing dependencies
- Using ./run --develop ensures that the last list of dependencies are picked up
from current source directory instead of list of dependencies from system
configuration.

- Using sudo -u plinth ensures that even if any temporary files are created,
they belong to the plinth user instead of root user.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-06-28 21:02:05 -04:00
Sunil Mohan Adapa
823735729b
d/tests/control: Rename Plinth to FreedomBox in a comment
Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-06-28 21:01:38 -04:00
Sunil Mohan Adapa
9def9750c0
frontpage: Drop empty custom shortcut files
Installing an empty file in /etc/ that is meant to be modified is an unnecessary
invitation to upgrade issues.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-06-28 21:01:20 -04:00
Sunil Mohan Adapa
4263f9e2c8
cfg: Drop the default configuration file
- The configuration module defaults to values in the production configuration
file.

- If the file is found, it is read and the read values overwrite the defaults.
If the file is not found, no error is raised. This allows us to not ship the
configuration file. User may create the configuration if they want to change the
defaults. This eases upgrades when configuration is edited. This also make
FreedomBox robust to deployments where /etc/ is not populated by default such as
OSTree. It is also a good practice for daemons as followed by the likes of
systemd.

- If the file partly populated only the values read override the defaults and
the remaining values don't change. This allows the user to write simpler
configuration file.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-06-28 21:01:15 -04:00
James Valleroy
aac511d534
debian: Add nscd >= 2 as dependency
This is a slightly hacky way to ensure that nscd package is installed
rather than unscd (which provides nscd as a virtual package).

This will work as long as unscd does not jump to a version 2. It is
currently 0.53-1 and has little recent activity, so this condition
seems likely to hold in the near future.

Tests:

- In vagrant box, installed unscd. Installed modified freedombox deb.
  Saw that unscd was removed and nscd was installed.

- In DigitalOcean droplet, reproduced issue from #1877. Installed
  modified freedombox deb. Saw that unscd was removed (no other
  packages were removed) and nscd was installed. FreedomBox interface
  was available again.

- Built a freedom-maker image with modified freedombox deb. Checked
  build log that nscd was installed and unscd was not installed.

Closes: #1877.

Signed-off-by: James Valleroy <jvalleroy@mailbox.org>
Reviewed-by: Sunil Mohan Adapa <sunil@medhas.org>
2020-06-22 15:13:59 -07:00
Sunil Mohan Adapa
28e19abf46
d/control: Add python3-systemd as a dependency
Module systemd.journal is used for writing proper structured messages to
systemd-journald. This was earlier only a recommends.

Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
2020-06-22 17:17:55 -04:00