[Samba] Debian Bullseye Samba 4.16.1 is online (amd64/i386/armhf/arm64/sources)

L. van Belle belle at samba.org
Fri Jun 10 11:36:54 UTC 2022


Greatings people around the world.. 

So it's finaly done.. The 4.16.x line is online on my repo. 

What happened?
why did it take this long?
what is/was going on. !! 

Well, Debian has a new Samba maintainer and lots of changes where made, lots of improvements. 
I mentioned this already few times. 

Debian is now using more of the original samba source on its build depends for example. 
While this process was going on, I couldn’t do much then wait this out and watch on the changes. 
Since Debian Samba is now way more up2date, it also makes my builds more easy. 

The instructions on site will be changed bit later on so here you do with the new setup instructions.. 
So you now have choices in Debian Bullseye. 

1) Debian Samba (stable)  		: 2:4.13.13+dfsg-1~deb11u3
2) Debian Samba (stable-backports)	: 2:4.16.1+dfsg-8~bpo11+1
3) Debian Samba VanBelle repo		: 2:4.16.1+dfsg-8.1nmu1~deb11+1

So whats the difference now between my version and the backports version, which now are minimal. 
Current changes: 

 samba (2:4.16.1+dfsg-8.1nmu1~deb11+1) bullseye; urgency=medium
 .
   * Non-maintainer upload.
   * Rebuild from Debian Salsa for Bulleye.
   * d/controle, re-added libtracker-sparql-2.0-dev in build depends
     to support Gnome Trackers Backend
   * Refreshed patches

So all I really changed here is, I added libtracker-sparql-2.0-dev for Gnome Tracker support. 
Resulting, if you don’t use Gnome Tracker, you can use debian-backports also. 
Im not hurt is you do so, I'm still here and doing some packaging and helping out where I can.

Please read before you start.: 
https://backports.debian.org/Instructions/    I quote from that page: 
All backports are deactivated by default so that the normal operation of a 
stable installation will not be compromised with potentially disruptive changes
 (such as incompatible configuration schema). Release files make this possible, 
and all backported packages are pinned to priority 100 via ButAutomaticUpgrades: yes

now, due to that, not all package might be upgraded or installed when you use this command. 
apt install -t bullseye-backports <packages>

Pin priorities. 
500 debian-stable
100 debian-backports
500 VanBelle repo. 

info in pinning : https://wiki.debian.org/AptConfiguration 
and I do suggest you read it.

I'm working on this; 
Generate the pinning file for only the samba packages *( and it depends). 
Done by example from above AptConfiguration link.

I currently have this script. Im open for ideas or improvments. 

##---- 
#!/bin/bash

# Tested only on Debian Bullseye.

# The OS Distro release name. 
PIN_RELEASE="bullseye"

# All samba packages and depends *( might not have all in here, if you added more, please CC me.) 
PIN_PACKAGES="ctdb ctdb-dbgsym ldb-tools ldb-tools-dbgsym libldb2 libldb2-dbgsym libldb-dev libnss-winbind libnss-winbind-dbgsym libpam-winbind libpam-winbind-dbgsym libsmbclient libsmbclient-dbgsym libsmbclient-dev libwbclient0 libwbclient0-dbgsym libwbclient-dev python3-ldb python3-ldb-dbgsym python3-ldb-dev python3-samba python3-samba-dbgsym registry-tools registry-tools-dbgsym samba samba-common  samba-common-bin samba-common-bin-dbgsym samba-dbgsym samba-dev samba-dsdb-modules samba-dsdb-modules-dbgsym samba-libs samba-libs-dbgsym samba-testsuite samba-testsuite-dbgsym samba-vfs-modules samba-vfs-modules-dbgsym smbclient smbclient-dbgsym winbind winbind-dbgsym libtevent0 libtdb1 libtalloc2"

# Not really needed to change this, but you can change it. 
PIN_FILENAME="/etc/apt/preferences.d/80-${PIN_RELEASE}-backports-samba"

# Reset the pinning file
> "${PIN_FILENAME}"
{
echo "#############################################"
echo "# Never prefer packages from the Debian Backports deb.debian.org repository"
echo "# info : https://wiki.debian.org/AptConfiguration"
echo
echo "Package: *"
echo "Pin: release o=Debian Backports,a=${PIN_RELEASE}-backports"
echo "Pin: origin deb.debian.org"
echo "Pin-Priority: 1"
echo
echo "#############################################"
echo "# The Samba packages list starts here"
echo
} > "${PIN_FILENAME}"
# Big list of the samba packages and it depends.
for x in ${PIN_PACKAGES}
do
{
echo "Package: ${x}"
echo "Pin: release o=Debian Backports,a=${PIN_RELEASE}-backports"
echo "Pin: origin deb.debian.org"
echo "Pin-Priority: 500"
echo
} >> "${PIN_FILENAME}"
done
##----


The setup for this.  

### Setting up Apt. 
# Install whats needed for apt and https 
apt-get install apt-transport-https gnupg

# Get my GPG Key
wget -O- https://apt.van-belle.nl/louis-van-belle.gpg-key.asc |\
    gpg --dearmor | sudo tee /usr/share/keyrings/louis-van-belle.gpg > /dev/null

# Adding a header in the .list file. 
echo "# AptVanBelle repo for Samba 4.16 and up." | sudo tee -a /etc/apt/sources.list.d/van-belle.list
echo "# You need Debian Bullseye Backports also for the depends on Samba. " | sudo tee -a /etc/apt/sources.list.d/van-belle.list

# Adding the repo
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/louis-van-belle.gpg] http://apt.van-belle.nl/debian/ $(lsb_release -sc)-samba416 main" |\
 sudo tee -a /etc/apt/sources.list.d/van-belle.list

# Adding Debian Bullseye Backports ! without it my packages wont install.. !! 
# We need the Samba dependecies from it. 
deb http://deb.debian.org/debian bullseye-backports main

#####   Settings for apt end here. 
!! You might already have backports in /etc/apt/sources.list Please check that and disable it. 

We now have these setup/options. 

1) Debian Samba (stable)  		: 2:4.13.13+dfsg-1~deb11u3
2) Debian Samba (stable-backports)	: 2:4.16.1+dfsg-8~bpo11+1
3) Debian Samba VanBelle repo		: 2:4.16.1+dfsg-8.1nmu1~deb11+1

So, how now and what to watch for. 

The sources file is setup. 
you want to install samba. 

Normaly you do : apt install samba winbind. 
which will result in : 

apt install samba winbind
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 samba : Depends: python3-samba but it is not installable
         Depends: samba-common-bin (= 2:4.16.1+dfsg-8.1nmu1~deb11+1) but it is not installable
 winbind : Depends: samba-common-bin (= 2:4.16.1+dfsg-8.1nmu1~deb11+1) but it is not installable
E: Unable to correct problems, you have held broken packages.

The "correct" way to install is.
apt install -t bullseye-backports samba winbind *( extra packages here if needed, depending on what you using from samba) 

Removing samba to go back to a previous release, use :  
apt remove --autoremove samba winbind
Disable the needed lines in the sources-list files 
and install samba back as normaly. 

!! DON’T use --purge, that purges config files and you don’t want that. 

With above config, this pulls in my packages from my repo and its depends from debian-backports. 
if you don’t want my packagse but only the backported samba version, then just disable the apt line of my repo. 
apt update 
apt remove --autoremove samba winbind (* optional extra packages here) 
apt install samba winbind (* optional extra packages here)

if you get a report that its missing a depend as not installable, add that package to the : apt install -t bullseye-backports samba winbind [extra_missingPackage] 
Im looking for a way to make this install process more easy, we just have a lot of depends on samba.. 

If you have tips, hints let me know. 
Im looking now into reposync so I can pull in the debian backports depends for samba into my repo without having to re-compile them. 
I you know a package/setup that can do this, a mail with a link is very appriciated.. 

Enjoy, questions on this, 
You have 3.5hour untill the weekend starts for me.  😉 


Greetz, 

Louis









More information about the samba mailing list