pwr-Solaar / Solaar

Linux device manager for Logitech devices
https://pwr-solaar.github.io/Solaar
GNU General Public License v2.0
5.53k stars 409 forks source link

Using the PPA on Linux Mint installs unneeded dependencies #656

Closed rijnhard closed 4 years ago

rijnhard commented 4 years ago

Information

Describe the bug Installing solaar-gnome3 from the PPA tries to install the entire gnome-shell and mutter which is pointless because I'm using cinnamon and lightdm.

To Reproduce Steps to reproduce the behavior:

  1. add PPA to linux mint
  2. install solaar-gnome3

Additional context

sudo apt upgrade solaar

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
  gir1.2-gck-1 gir1.2-gcr-3 gir1.2-gdm-1.0 gir1.2-geoclue-2.0 gir1.2-gweather-3.0 gir1.2-mutter-2
  gir1.2-rsvg-2.0 gjs gnome-shell gnome-shell-common libgjs0g libmutter-2-0 libxcb-res0 mutter
  mutter-common ubuntu-wallpapers ubuntu-wallpapers-bionic
mickleby commented 4 years ago

@rijnhard as I am spending my time in i3 with occasional KDE Plasma for flair, I would indeed expect Gnome3 to be a dependency. Are you also stating there is no solaar, only solaar-gnome3 in the repo?

rijnhard commented 4 years ago

@mickleby no, its just that technically gnome3 doesn't need to be a dependency, or if it is then we should allow alternative/compatible DE's aswell. I think all thats actually needed is AppIndicator (in my limited understanding at least).

mickleby commented 4 years ago

@rijnhard does the repo have solaar or only solaar-gnome3? If it has solaar-gnome3 shouldn't this be renamed to solaar? I'm getting confused :)

Who packages up solaar for the repo? Do you think they set the dependencies? Or maybe this, what is the PPA you speak of? Daniel.pavel?

rijnhard commented 4 years ago

NP @mickleby

the repo has both, solaar and solaar-gnome3, but I only removed gnome as a dependency from solaar-gnome3.

I have no idea who packages it, the dependencies are set in these debconf files, which is how I managed to make the changes for the PR. (tested them too)

mickleby commented 4 years ago

@rijnhard I still don't know which PPA you mean. I read README.md (docs/index.md) to suggest the reason for solaar-gnome3 is to assure compatibility with gnome-shell. Thus solaar-gnome3 pulls the gnome-shell dependency. Is there a reason you cannot install solaar and ignore solaar-gnome3.

"I managed to make the changes for the PR" I'm thinking you mean here https://github.com/pwr-Solaar/Solaar/pull/660

BTW if you search the project for "gnome" you find "gnome support" is implemented June 2013. solaar-gnome3 seems designed to cutoff previous versions of gnome-shell and unity https://github.com/pwr-Solaar/Solaar/commit/f4a3f699e8cb3d8ecddea6b348046ed9c86dd656

gir1.2-appindicator3-0.1, gnome-shell (>= 3.4) | unity (>= 5.10)

But WHY this was created...? Possibly what they were fixing no longer needs fixing, but then I suggest removing solaar-gnome3 altogether.

rijnhard commented 4 years ago

@mickleby I feel daft, it took me this long to figure out what you mean (no fault of yours), I just ASSUMED I needed solaar-gnome3 to get icons and such in gnome 3 based DE's, only clicked recently that the taskbar icons trigger when just running solaar.

So then, why even have solaar-gnome3? @pfps @FFY00

rijnhard commented 4 years ago

also @mickleby this PPA https://launchpad.net/~solaar-unifying

mickleby commented 4 years ago

@rijnhard "So then, why even have solaar-gnome3?" I commented on this, probably you've already noted. search project for 'gnome', looks like they were trying to cutoff legacy support. sounds a lot like the current python2 deal

re PPA: that's @gogo, apparently trebelnik-stefina. I haven't noticed her, but she did catch the latest version update. I recommend git clone over PersonalPackageArchives

pfps commented 4 years ago

@rijnhard Sorry, I don't use gnome (1, 2, or 3) and I don't know why there is a solaar-gnome3.

FFY00 commented 4 years ago

Well, since Solaar is well maintained in Debian I see no reason for us to keep the packaging files.

pfps commented 4 years ago

@rijnhard It looks as if PR #660 did something to prevent the Ubuntu PPA from building. I expect that the problem is some missing packages that were pulled in before the change but are not being pulled in now. Do you know how this all works?

rijnhard commented 4 years ago

@pfps not quite sure, can you send me the link to where it is building? I suspect it could still be trying to build solaar-gnome3, could be additional setup required wherever it is building.

pfps commented 4 years ago

The main page for the Ubuntu Solaar git PPA is https://launchpad.net/~solaar-unifying/+archive/ubuntu/ppa "View package details" links to https://launchpad.net/~solaar-unifying/+archive/ubuntu/ppa/+packages which has links to the failing builds, including https://launchpad.net/~solaar-unifying/+archive/ubuntu/ppa/+build/18752724 The buildlog is in https://launchpadlibrarian.net/466267140/buildlog_ubuntu-bionic-amd64.solaar_1.0.1+dfsg-3+git916-955df30-202002231806~ubuntu18.04.1_BUILDING.txt.gz

The error section is

running install_egg_info
Writing /<<BUILDDIR>>/solaar-1.0.1+dfsg-3+git916-955df30/debian/solaar/usr/share/solaar/lib/solaar-1.0.1.egg-info
/usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'python_requires'
  warnings.warn(msg)
/usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'install_requires'
  warnings.warn(msg)
   dh_install -O--buildsystem=pybuild
dh_install: Cannot find (any matches for) "etc/" (tried in ., debian/tmp)

dh_install: solaar missing files: etc/
dh_install: Cannot find (any matches for) "usr/" (tried in ., debian/tmp)

dh_install: solaar missing files: usr/
    install -d debian/solaar/usr/share/metainfo/
    cp --reflink=auto -a ./debian/solaar.metainfo.xml debian/solaar/usr/share/metainfo//
dh_install: missing files, aborting
    install -d debian/.debhelper/generated/solaar
debian/rules:13: recipe for target 'binary' failed
make: *** [binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

I don't even know what is happening at this point. I believe the warnings are benign.

I was looking over the debian/control file and noticed that there is still a line with python2 in it. Perhaps that should be removed and ${python:Depends} changed to ${python3:Depends}

pfps commented 4 years ago

@rijnhard Can this issue be closed as fixed?

pfps commented 4 years ago

@rijnhard Ping?

pfps commented 4 years ago

I think that this has been addressed by the changes to setup.py