← Back to team overview

aims team mailing list archive

[Bug 1311056] Re: apt-add-repository adds duplicate commented/disabled source lines

 

This might be enough to fix it - I just compare the values against each
other rather than doing 4 explicit cases. I call bool() on them first
before comparing them as we want a boolean comparison here, and that
should work even if you pass None or "" or whatever I guess.

diff --git a/aptsources/sourceslist.py b/aptsources/sourceslist.py
index 89cef642..d4e52c4d 100644
--- a/aptsources/sourceslist.py
+++ b/aptsources/sourceslist.py
@@ -332,10 +332,10 @@ class SourcesList(object):
         for source in sources:
             # if there is a repo with the same (type, uri, dist) just add the
             # components
-            if source.disabled and set(source.comps) == set(comps):
-                source.disabled = False
+            if bool(source.disabled) != bool(disabled) and set(source.comps) == set(comps):
+                source.disabled = bool(disabled)
                 return source
-            elif not source.disabled:
+            elif bool(disabled) == bool(source.disabled):
                 source.comps = uniq(source.comps + comps)
                 return source
         # there isn't any matching source, so create a new line and parse it

-- 
You received this bug notification because you are a member of AIMS,
which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1311056

Title:
  apt-add-repository adds duplicate commented/disabled source lines

Status in python-apt package in Ubuntu:
  Triaged
Status in software-properties package in Ubuntu:
  Triaged

Bug description:
  Trusty Tahr 14.04

  0 root@osprey:/etc/apt/sources.list.d#cat aims-aims-desktop-trusty.list 
  deb http://ppa.launchpad.net/aims/aims-desktop/ubuntu trusty main
  # deb-src http://ppa.launchpad.net/aims/aims-desktop/ubuntu trusty main
  0 root@osprey:/etc/apt/sources.list.d#apt-add-repository -y ppa:aims/aims-desktop
  gpg: keyring `/tmp/tmp0ufdhnmv/secring.gpg' created
  gpg: keyring `/tmp/tmp0ufdhnmv/pubring.gpg' created
  gpg: requesting key BE796FF2 from hkp server keyserver.ubuntu.com
  gpg: /tmp/tmp0ufdhnmv/trustdb.gpg: trustdb created
  gpg: key BE796FF2: public key "Launchpad PPA for AIMS" imported
  gpg: Total number processed: 1
  gpg:               imported: 1  (RSA: 1)
  OK
  0 root@osprey:/etc/apt/sources.list.d#cat aims-aims-desktop-trusty.list deb http://ppa.launchpad.net/aims/aims-desktop/ubuntu trusty main
  # deb-src http://ppa.launchpad.net/aims/aims-desktop/ubuntu trusty main
  # deb-src http://ppa.launchpad.net/aims/aims-desktop/ubuntu trusty main
  0 root@osprey:/etc/apt/sources.list.d#

  That deb-src line should have stayed commented out, and not been
  duplicated. (Commented deb lines should of course be uncommented, as
  already fixed per https://bugs.launchpad.net/ubuntu/+source/python-
  apt/+bug/1042916 .)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-apt/+bug/1311056/+subscriptions