GNU/Linux Debian Trixie Adding Non Free Repo Guide
How to Add Non Free Repository on Debian 13 Trixie GNU/Linux Based OSes.
Especially relevant: this Guide Show How to Properly Add Debian Trixie Non-free Repo to install just the Needed Software and then Preserving the Free Nature of System!
The Repos Features are:
- Non-free includes Packages whose Licences are not free
- Contrib the Dependencies of non-free Packages (which make them not part of Default Repos)
 
- 1. Launching Terminal- How to QuickStart with Command Line on Debian GNU/Linux 
- 2. Adding Non-free Repo- Then to Add Non Free Repository on Debian Simply run: At the end of each line after ‘main’ append:
 Edit Repo with nano Editor:- contrib non-free non-free-firmware Like:- deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmwareCtrl+x to Save & Exit from nano Editor.
 Last, Refresh the Apt Sources with:- sudo apt update 
- 3. Preserving Debian Free System- (Optional) This if you want to Preserve the Valuable Free Nature of Debian System. 
 To do so you have to strictly Allowing only the Installation of Some Non-free Package with an Apt Pinning.
 First, Disable All Non free Software with this content:- Explanation: Disable packages from non-free tree by default Package: * Pin: release o=Debian,a=stable,l=Debian,c=non-free Pin-Priority: -1 To Make it at once execute:- sudo echo -e "Explanation: Disable packages from non-free tree by default Package: * Pin: release o=Debian,a=stable,l=Debian,c=non-free Pin-Priority: -1" > /etc/apt/preferences.d/non-free_policy And then Enable the Software of Choice, E.g. firmware-iwlwifi:- Explanation: Enable package firmware-iwlwifi from non-free tree Package: firmware-iwlwifi Pin: release o=Debian,a=stable,l=Debian,c=non-free Pin-Priority: 130 Again with a simple echo:)- sudo echo -e "Explanation: Enable package firmware-iwlwifi from non-free tree Package: firmware-iwlwifi Pin: release o=Debian,a=stable,l=Debian,c=non-free Pin-Priority: 130" > /etc/apt/preferences.d/firmware-iwlwifi_non-free But to enable Multiple packages at once proceed like that:- Explanation: Enable package firmware-iwlwifi nvidia-driver from non-free tree Package: firmware-iwlwifi nvidia-driver Pin: release o=Debian,a=stable,l=Debian,c=non-free Pin-Priority: 130 Again translated in a Command like:- sudo echo -e "Explanation: Enable package firmware-iwlwifi nvidia-driver from non-free tree Package: firmware-iwlwifi nvidia-driver Pin: release o=Debian,a=stable,l=Debian,c=non-free Pin-Priority: 130" > /etc/apt/preferences.d/enabled-packages_non-free The only drawback of the procedure is that you have to repeat it every time you need some new Non-free software…
 For further instructions see: Advanced Apt Pinning Techniques.
