[Hamara-devel] Instructions for gnome-software to use it to the best, fullest way possible.
shirish
shirish at hamaralinux.org
Fri Oct 16 16:25:06 BST 2015
Hi all,
Warning, this would be a longish one.
After Vikas was enthused about gnome-software, I installed it and tried
it out as it exists in debian and the experience was less than
satisfactory. As the issue seemed to be upstream-related, got lucky and
was able to talk to the upstream developer, ximian i.e. Mathias Klumpp.
The gentleman is a developer who is also associated with the tanglu
project (which some people on the list know about or/and have used. )
I shared with him couple of issues and was asked to document them in the
upstream bug-tracker (bugzilla.gnome.org) and did the same.
One of the bugs filed by me for gnome-software in upstream -
https://bugzilla.gnome.org/show_bug.cgi?id=756668 ( I have been doing
upstream QA work in GNOME as well other communities whenever time
permits as well. )
After that he shared the way to use gnome-software to the fullest.
Fortunately some of the components have been pushed to debian (as debian
also has been working on trying to use appstream as it contains and
offers much with metadata) as well so with little figuring out was able
to have a near experience to what the developers aim for.
Instructions are as under :-
a. Obviously first install gnome-software. In hamara's case we would
need to package it.
b. Go to https://appstream.debian.org/data/unstable/main/
There are 4 files therein.
From the first 2 figure out which architecture is yours and
download/wget it, the .yml.gz files
c. From the icon files, either download the 64x64 icon files or the
128x128 icon files. The icon files are just a sample of what needs to be
in your system, download it as well.
d. Copy the yaml files to /var/cache/app-info/yaml . In my debian-system
only /var/cache was available so had to create it.
/var/cache $ sudo mkdir -p app-info/yaml
/var/cache $ cd app-info/yaml
copied it and now it is :-
/var/cache/app-info/yaml$ ls
Components-amd64.yml.gz
As mine is a 64-bit system.
e. Also extract the icons to /var/cache/app-info/icons/unstable-main/64x64
which again means need to create the 3 directories which were not there.
/var/cache/app-info/$sudo mkdir -p icons/unstable-main/64x64
Then extract the icons in that directory.
- from where the icons.tar.gz file is downloaded and present
$ sudo tar -zxvf icons-64x64.tar.gz -C
/var/cache/app-info/icons/unstable-main/64x64/
f. Once this is done then do :-
$ sudo appstreamcli refresh --force
AppStream cache update completed successfully.
re-run gnome-software again, you will see a bit more categories and some
more software icons and info.
Notes -
1. Lot of gnome-software depends on packagekit, aptcc and appstream (for
metadata) and is python-based what I came to know.
2. It also needs/depends and supports something called limba which
people were somewhat excited about. It seems to be also a 3rd party
software manager. See https://secure.freedesktop.org/~mak/limba/
3. It also needs dbus and is quite a bit fused/hard-coded with systemd,
although they are working on separating that non dbus systems as well as
non-systemd systems can also use it.
4. There is the UI as well as the daemon part which constantly runs in
the background.
5. The product seems still to be a bit immature as all possible
categories and not there and even keyword indexing seems need to be
improved (quite a bit) and I'm guessing it suffers from all the issues
that appstream and packagekit has as those are the backends that make
the software work.
6. Memory could be an issue as don't think they have even tested it with
either callgrind or valgrind for the same to see what sort of memory
heap it takes.
7. Last and important, it has no support for xpm (at all)
https://en.wikipedia.org/wiki/X_PixMap and there are lot of tools which
still use xpm for icons rather than png or any other bitmap image format
so would need significant number reporting and cajoling various
upstreams into using/having the icons in .png.
8. Sometimes you have categories but no pictures or vice-versa, either
the backend at fault, appstream or the metadata is not there. It could
be either of the three tings. There are or need to be tests to know
where the failure/s is/are.
On the pro-side it looks 'nice' compared to existing tools.
That's the long and short of it, I want to blog or re-blog the same
either on hamara or my own blog as I want to muster enough number of
people so that we can ask people to improve on some of the aspects that
upstream needs help with which would make that much richer experience
for everyone.
For ourselves, we also need to have some infrastructure in place so we
could also help out people in this way.
--
Regards,
Shirish Agarwal,
Community Lead,
Hamaralinux.org
More information about the Hamara-devel
mailing list