Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding PPA #42

Closed
mbnoimi opened this issue Jan 1, 2014 · 7 comments
Closed

Adding PPA #42

mbnoimi opened this issue Jan 1, 2014 · 7 comments

Comments

@mbnoimi
Copy link

mbnoimi commented Jan 1, 2014

I suggest to add a new button for adding PPAs just like Mint Cinnamon control panel as show below:

selection_002

P.S. Usually it can be done through chroot by apt-add-repository [PPA]

@fluxer
Copy link
Collaborator

fluxer commented Jan 1, 2014

That's usually handled by the package managers, or some other tools. That's why Customizer has the "Archive" button which launches package manager that will help you do what you want - add PPAs, update the system and such.

So, instead of implementing a repositories manager on our own which is dublication of time, energy, etc. we opted to leave this up to the distribution tools. I'm not gonna imlement this but feel free to do it yourself and make pull requests.

Cheers! And happy new year!

@mbnoimi
Copy link
Author

mbnoimi commented Jan 2, 2014

That's usually handled by the package managers, or some other tools. That's why Customizer has the "Archive" button which launches package manager that will help you do what you want - add PPAs, update the system and such.

Synaptic package manager which called through "Archive" button doesn't resolve this issue because as you know whenever you added PPA you've to add its key (and accept it) so in case the user added PPAs manually by synaptic the system will fail to update the repository.

So, instead of implementing a repositories manager on our own which is dublication of time, energy, etc. we opted to leave this up to the distribution tools. I'm not gonna imlement this but feel free to do it yourself and make pull requests.

You don't have to implement this feature from the scratch because it's already exist through apt-add-repository; All what you need is manipulate the outputs & messages of this command (personally I'll not wait to ask you to implement anything because this is open source project and the community have to contribute in this project but because I don't have any experience -and I wont to know- in Gambas I posted this suggest here)

@fluxer
Copy link
Collaborator

fluxer commented Jan 2, 2014

Synaptic package manager which called through "Archive" button doesn't resolve this issue because as you know whenever you added PPA you've to add its key (and accept it) so in case the user added PPAs manually by synaptic the system will fail to update the repository.

I know it was so in the past (it's been a long time since I've used Debian based distribution) but I tought it improved and someone implemented this. In any case, it would be better to ask the Synaptic (and other software managers) to implement this since that would be the better solution in the long run IMO.

You don't have to implement this feature from the scratch because it's already exist through apt-add-repository; All what you need is manipulate the outputs & messages of this command

I'm aware of that, and that's why I do not want to do it. If someone changes the way things work with apt-add-repository we will have to support multiple versions of the tool with various workarounds (namely, first the version must be detected, or maybe check apt-add-repository -h for the available options) which is prone to breakage. And to give you a proof that things can go wrong with wrappers around tools (Cusotmizer is basicly a wrapper): https://github.com/clearkimura/Customizer/blob/master/scripts/rebuild#L139

personally I'll not wait to ask you to implement anything because this is open source project and the community have to contribute in this project but because I don't have any experience -and I wont to know- in Gambas I posted this suggest here

I have no problem with suggestions and ideas - feedback is welcome! But there are some things that you, and other end-users, are not aware of and I hope that I explained it well enough that the feature you are requesting can be a pain to maintain and I'm not willing to go trough it. If someone else wants to pick up on this (code, test and maintain) I have no problem with that.

@ghost
Copy link

ghost commented Jan 3, 2014

@mbnoimi
Commented as below.

whenever you added PPA you've to add its key (and accept it) so in case the user added PPAs manually by synaptic the system will fail to update the repository.

I suppose this issue is affecting only the GUI-based APT package manager.

I have been continuing to play with Lucid (I know it's retired on Desktop) with my own remix experiments. As far as I could recall, I had been successfully added PPA via command line without having to add key manually. User just needed to press Enter key to confirm adding the PPA.

The workaround is, use command line add-apt-repository ppa:<TARGET_PPA> instead of GUI.

P.S.: Notice the command line typo in earlier comments.

Edit: This means, use Terminal feature to add PPA via command line.

@ghost
Copy link

ghost commented Jan 4, 2014

Follow up comment as below.

User just needed to press Enter key to confirm adding the PPA.

So I did recall correctly. Just to demonstrate the add-apt-repository command--
I have pasted sample Terminal output below.

Note that some output has been removed or replaced for good.

precise@vbox:~$ sudo add-apt-repository ppa:libreoffice/libreoffice-4-0
[sudo] password for precise: 
You are about to add the following PPA to your system:
 LibreOffice 4.0.x series stable backports ppa (and SRU-testing for raring)
...
Press [ENTER] to continue or ctrl-c to cancel adding it

Executing: gpg --ignore-time-conflict --no-options [...]
...
gpg: requesting key XXXXXXXX from [...]
gpg: key XXXXXXXX: public key "Launchpad PPA for LibreOffice Packaging" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
precise@vbox:~$ 

Then, run apt-get update and install the package you wish.

@ghost
Copy link

ghost commented Jan 3, 2017

Clarifications on adding PPA

Synaptic package manager which called through "Archive" button doesn't resolve this issue because as you know whenever you added PPA you've to add its key (and accept it) so in case the user added PPAs manually by synaptic the system will fail to update the repository.

From my testing, warning message only appears in 12.04 when updating repository and yet, still able to proceed and install package from added PPA nonetheless.

Example warning message in 12.04:

$ sudo apt-get update
...
W: GPG error: http://ppa.launchpad.net precise Release: The following signatures
 couldn't be verified because the public key is not available:
 NO_PUBKEY 608BF7B93528AE20
...
Do you want to continue [Y/n]? y
WARNING: The following packages cannot be authenticated!
  libgee-0.8-2 libplank-common libplank0 plank
Install these packages without verification [y/N]? y
...

Newer release from 14.04 will add the GPG keys automatically and will not see such warning messages. This is also applicable to Debian Wheezy and newer, as noted by this dated article on WebUpd8.

To use add-apt-repository command, install software-properties-common. This package is not installed by default, if you are building from Ubuntu Mini Remix ISO image.

$ dpkg --search add-apt-repository
software-properties-common: /usr/bin/add-apt-repository
software-properties-common: /usr/share/man/man1/add-apt-repository.1.gz

$ apt-cache depends software-properties-common
software-properties-common
  Depends: python3
  Depends: <python3:any>
    python3
  Depends: python3-gi
  Depends: gir1.2-glib-2.0
  Depends: python-apt-common
  Depends: python3-dbus
  Depends: python3-software-properties
  Depends: ca-certificates
  Breaks: python-software-properties
  Breaks: python3-software-properties
  Replaces: python-software-properties
  Replaces: python3-software-properties

To use graphical user interface, install software-properties-gtk.

$ apt-cache depends software-properties-gtk
software-properties-gtk
  Depends: python3
  Depends: <python3:any>
    python3
  Depends: python3-software-properties
  Depends: python3-gi
  Depends: gir1.2-gtk-3.0
  Depends: python3-aptdaemon.gtk3widgets
  Depends: software-properties-common
  Depends: ubuntu-drivers-common

Adding PPA using existing methods have been tested working in 12.04 and 14.04 releases.

@ghost
Copy link

ghost commented Jan 3, 2017

This issue shall be closed for the following reasons:

  1. it has been almost three years since this feature request was made, but there has been no feedback and no pull request being made to implement "adding PPA";

  2. adding PPA is already possible using command line via Terminal and using graphical user interface via Software & Updates (software-properties-gtk in Ubuntu);

  3. adding PPA as feature in Customizer is considered a duplicate feature and will require extra efforts and time to troubleshoot in case it breaks, as mentioned earlier by the original developer.

For above reasons, it may be convenient feature to have but mostly not useful. To elaborate this further, "convenience" means easy to discover and access; "useful" means there is purpose for something to function as such (duplicate feature is not useful, unless it does something better and different).

Alas, using PPA is at own risk and shouldn't be encouraged in general.

P.S.: I have posted separate comment earlier for clarification and test results as proof.

@ghost ghost closed this as completed Jan 3, 2017
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants