The current code relies on GLib API and uses the
available mounts to calculate the available partition
size. This is because this code assumes that more
than one OS can be installed in the same drive, and
wouldn't make sense to show the whole disk size in
this situation.
That, however, clashes with the general purpose of
the panel, for it is meant to show general information
about the user's computer, and it is not reporting
the full disk size.
Fix that by using the UDisks API to get the real size
of the full disks.
https://bugzilla.gnome.org/show_bug.cgi?id=639376
Slighly modified by Iain Lane <iainl@gnome.org> to
port to meson and add udisks2 to CI deps.
Fixes#285.
Fixes#302.
Use the new designs:
https://wiki.gnome.org/Design/SystemSettings/Sound
The existing panel was very old and had a very traditional layout that didn't
align with the new designs. Initialy this patch modified existing elements of
the old panel but the change was so great that new widgets were written. Some
of the widgets have algorithms taken from the old panel.
The sound files and icons are from the old panel.
It is almost surreal to believe that there's a leak in
libasan, but this is blocking CI and it's not something
we can work on right now.
Suppress this leak.
It's currently just added whenever cheese is enabled, however that should
be already an indirect dependency. There is no need for it to explicitly
to be explicitly linked here.
And same goes for CI Docker files, the dependency will be indirectly
installed through cheese anyway.
The build option `-ltinfo` is required, otherwise a few errors related
to libreadline.so will be thrown like:
libreadline.so: undefined reference to `tputs'
libreadline.so: undefined reference to `tgoto'
libreadline.so: undefined reference to `tgetflag'
`libtirpc` has been added because if in Flatpak we compile Samba
without an RPC library it will exit with the following message:
"ERROR: No rpc/rpc.h header found".
Also `rpcsvc-proto` has been added because it provides the required
`rpcgen` binary.
AddressSanitizer (or ASan) is a programming tool that detects memory
corruption bugs such as buffer overflows or use after free. AddressSanitizer
is based on compiler instrumentation.
The llvm.org states that Sanitizers have found thousands of bugs everywhere.
Sanitizers running during CI can prevent bugs from taking up residence. They
are helper tools to maintain bugs out.
The development flatpak is meant to be used exactly
that: development. It isn't and won't ever be released
as a regular Flatpak application.
GNOME Setting is still supposed to run as a host system
tool.