On 2021-05-19 2:23 p.m., Greg Wooledge wrote:
> On Wed, May 19, 2021 at 02:15:29PM -0400, Polyna-Maude Racicot-Summerside 
> wrote:
>> Why would a package I get from a git repository be supportable but a
>> package I save some packaging time and get from another source (Kali,
>> Ubuntu for example) would become unsupportable ?
> 
> Because things you pull from git and install in /opt or /usr/local or
> even $HOME do not interfere with the Debian system.  They don't create
> dependency issues within the dpkg database, nor do they overwrite
> essential system libraries or files, nor do they cause removal of Debian
> packages, etc.
> 
> An Ubuntu or Kali package, especially a badly built one, can cause *all*
> kinds of havoc.  Even some third-party repositories set up by Debian
> developers have been notorious for causing these kinds of problems in
> the past -- take a look at the history of the "debian multimedia" package
> repositories, in particular.
> 
I have the deb-multimedia repository in my system but only in source
form so I can easily get sources of package that ain't in Debian for the
version I want. By only having the source I don't risk having problem
arise by doing a install by mistake.

It took me three hours fixing the mess that deb-multimedia did on my GFs
computer. She installed a package and it updated something like 100
library, sometime compiled with non-sense options. Luckily they add the
"dmo" to software version. So I was able to list the bad guys by doing
dpkg -l | grep 'dmo'

I totally understand what you say.
And this is the reason why I build my own package when needed. More than
often will be new version of package that I use ahead of time, for
example a version of Emacs that is still in testing but that I need so I
can get tabnine to work on it.

And even there, so not to get problem with library, I'll do the compile
myself. Because most of the time it will link against the library I
already have installed whereas if I'd go with the binary this would
force me to update some non needed library only because it got linked
against (even if it didn't need it but was built for it because it's the
version that will be used by this specific system).

If I need something with a newer version that it exist in Debian then I
check if it exist in deb-multimedia.
If so, I get it in source form.
I check for the dependencies.
Most of the time, all the dependencies have already been ported into
backports.
So I fix those dependencies to use the naming convention that will make
them rely on backport.
And then I'll compile.
And use...
This is how I got Kodi 18.(something) on Buster.

>> So you are telling me that support stop as soon I build myself a custom
>> package but if I build software and put it outside the packaging system,
>> it's supportable ?
> 
> It's not quite that cut-and-dried, but basically: yes.
> 
> Packages have a much bigger potential for breaking your system.
> 
Like I already said, I already know not to install non trusted package
on my system or dodgy software from unknown developers. For example
BigBlueMachine (a real damn mess).

>> And if I build myself a package, for example I packaged all my roms used
>> for gaming into a deb file, this way it's easy to install and I use a
>> repository on my local network. By doing it this way, my gf who already
>> does her updates can also update the pack of roms I got.
>> So this is bad and make me loose community support ?
> 
> This is OK if you're competent to do it correctly.  But this is a
> specialized task, which the generic #debian channel may not be equipped
> to help you with.  We can point you toward beginner tutorials.
> 
I think you are starting to get the thing here.

I've built many package either from scratch or sometime package that
weren't maintained anymore. But that I wanted to get a newer release. So
I got into the package source in Strech (or even Jessie) so it saved me
time writing some documentation, also sometime I found patches that
we're useful. For example disabling the auto-update as not to cause
problem with dpkg file library for the system.

I've backported software from testing into buster myself, using Docker
container not to trash my whole system. Sometime disabling options that
will cause dependencies problem or will require library not available.

Those are mostly specific package, for example Kodi for my girlfriend.

Or in my case, metasploit-framework with the bunch of Ruby dependencies.
Or simply exploitdb, exploitdb-bin-sploits and exploitdb-papers.


> For help with any problems you encounter while building your own local
> packages, there are some channels on the OFTC network: #packaging and
> possibly #debian-mentors, although the latter is really for packages that
> are intended to become part of Debian, not personal/local projects.
> 

Well I'm already on the mentors and dpkg mailing list.

Maybe my question went in a direction for another mailing list here.

Yes I'm planning to go on an maintain some orphaned package.

I'm now looking at the filezilla and freefem++.
I want to see the changes made from upstream before I go on with this.

Depending on the amount of work involved.

Some package don't require much, you disable the auto-update not to
interfere with dpkg, you set specific options as Debian build options
and voila !
But some other require much more work because they only work on some
architecture, use "custom build system", etc.

-- 
Polyna-Maude R.-Summerside
-Be smart, Be wise, Support opensource development

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to