I keep seeing places refer to the "partner" repository as a place I can get software, how can I enable this repository? Please specify how to do this graphically and via command line.
7 Answers
GUI Way:
Click on the ubuntu button, then search for "Software Sources" (or "Software & Updates" on Ubuntu 16.04+) and go to the "Other Software" tab.
Command Line Way:
- Open the sources.list file:
gksudo gedit /etc/apt/sources.list
(or with the command line editor of your choice,sudo nano /etc/apt/sources.list
would usenano
on the command line without a GUI) Add the partner repositories by removing the # in front of the following lines (
maverick
is the version of your Ubuntu installation, it may differ, so use the codename of the release you are using instead of 'maverick'. If you're not sure runlsb_release -c
to find out.)# deb http://archive.canonical.com/ubuntu maverick partner # deb-src http://archive.canonical.com/ubuntu maverick partner
- Save and Close.
Resynchronize the package index files from their sources:
sudo apt-get update
Official documentation for reference
-
As of Ubuntu Precise, "Software Sources" is no longer accessible via the launcher. It has to be accessed through the menu (Edit => Edit software sources). – Lekensteyn May 02 '12 at 21:02
-
@Sid I think you're double dipping here. Your method for the GUI may make more sense, but your method for the command line is dated and the contribution by Hieu is better advice. Would you have an object to reducing this method to just the GUI method described? I don't want to downvote you for the GUI contribution. But, I do want to downvote the inferior CLI method (which isn't even really cli because you're using gedit). – Evan Carroll Nov 04 '16 at 05:37
-
Downvoted because @ThomasWard decided to rollback the edit, and the CLI instructions are inferior and dated. Shouldn't have combined the two. – Evan Carroll Nov 07 '16 at 21:59
-
2@EvanCarroll The instructions are not necessarily inferior - the methods specified here still work, replacing "maverick" with whichever codename is relevant. You're right the GUI way to edit the CLI version is wrong - note my edits which I made indicating to use a text editor instead for the command line rather than the GUI (such as 'nano'). – Thomas Ward Nov 07 '16 at 23:05
-
1@EvanCarroll There's this thing called updating via editing. It works quite well :) – Seth Nov 07 '16 at 23:15
The simplest way to enable "partner" repository:
sudo sed -i.bak "/^# deb .*partner/ s/^# //" /etc/apt/sources.list
sudo apt-get update

- 36,264
- 56
- 94
- 147

- 399
CLI method
This method uses
lsb_release -sc
to get the Ubuntu (codename) version.add-apt-repository
to alter the appropriate config files.
It has the advantages of working in all versions of Ubuntu.
sudo add-apt-repository "deb http://archive.canonical.com/ubuntu $(lsb_release -sc) partner"
This is from a skype tutorial
-
-
1Beware that you can run this command only once. If you do it again, you will have the problem with duplivate entries. – Pilot6 Jan 31 '17 at 14:49
To enable the partner repository from the command line, edit /etc/apt/sources.list
:
sudoedit /etc/apt/sources.list
and remove the # from the beginning of these two lines:
#deb http://archive.canonical.com/ubuntu maverick partner
#deb-src http://archive.canonical.com/ubuntu maverick partner
So they are like this:
deb http://archive.canonical.com/ubuntu maverick partner
deb-src http://archive.canonical.com/ubuntu maverick partner
Then update your apt cache: sudo apt-get update
.

- 78,556

- 59,344
TERMINAL version, just copy and paste this commands to activate the partners repository (skype, etc):
DISTRO=`cat /etc/*-release | grep DISTRIB_CODENAME | sed 's/.*=//g'`
sudo sed -i 's/\(# \)\(deb .*ubuntu '${DISTRO}' partner\)/\2/g' /etc/apt/sources.list
sudo apt-get -y update
@ERGuille: FTFY, with a cleaner version

- 757
-
1
-
There's really nothing wrong with parsing the
sources.list
file. Advisable to make a backup though (usesed -i.bak
instead of justsed -i
) – Zanna Nov 08 '16 at 07:57
This is how I did it within shell, I took the time for a little variation to increase stability, re-usability and idempotence (and not checking for the distro):
grep -qe '^# deb[- ].* partner$' /etc/apt/sources.list \
&& sudo sed -i"~$(date -%s)" 's/^# \(deb[- ].* parnter$\)/\1/' /etc/apt/sources.list
- grep check: change file only if it is to change.
- sed backup: keep timestamp'ed backups so you can go back in time.
- handle both source and non-source.
- use the name (last field) not the distro to identify the repositories.
Alternatives here:
- If you don't care about source and want to keep no backups: https://askubuntu.com/a/51244/55951
- If you prefer something more complicated looking of which is told it would extract the distro name and you don't care about source and you want to overwrite backups: https://askubuntu.com/a/46389/55951
- Even more complicated looking which was said about it was the less cleaner version of the previous one: https://askubuntu.com/a/37203/55951
- Interesting approach to add into a new file of it's own: https://askubuntu.com/a/471539/55951
In the end this might need another iteration or two. I hope next to the personal note on comments this was giving some useful summary.
TERMINAL just to make it easier, copy and paste this one command:
sed 's/\# deb http\:\/\/archive\.canonical\.com\/ubuntu natty partner/deb http\:\/\/archive\.canonical\.com\/ubuntu natty partner/' /etc/apt/sources.list | sed 's/\# deb-src http\:\/\/archive\.canonical\.com\/ubuntu natty partner/deb-src http\:\/\/archive\.canonical\.com\/ubuntu natty partner/' - > /tmp/newfile && sudo mv -f /tmp/newfile /etc/apt/sources.list

- 7
-
There are way easier and more elegant one-liners you could come up with.
sed -i~ 's|^# *\(deb\(-src\)* http://archive\.canonical\.com/ubuntu natty partner|\1|' /etc/apt/sources.list
uses a single regular expression, but creating a new file in/etc/apt/sources.list.d/
would be much better still. – tripleee May 05 '15 at 12:24