DarkElvenAngel
Posts: 141
Joined: Tue Mar 20, 2018 9:53 pm

Need help making a deb package

Mon Dec 10, 2018 3:31 am

Hello I'm in need of help/advice,

I've written a framework that runs on top of Raspbian and it's very difficult to move from my development system to my target machines. The framework includes services and scripts, it was originally designed to deploy on a kiosk and run a custom gui written in python.

Currently I have written a script that archives all my scripts and config files. That works fine for that but it's useless for deploying. I have to then remember dependencies, enable/disable services, bug patch configuration files, ECT. Plus parts of the project aren't needed for each target.

As far as I can tell a deb package is by far the best idea but I have not found a guild that explains the process in a way makes sense for a project of this scale.

I feel that if I was to do packages I would need more than one. A core package and extras then maybe even plugins. I've also thought about a custom installer, make files, just using archives.

Anyone else tackled something like this or even played around with making deb packages? Is there something that automates the packaging process? Do you know of any guilds that can help or you've found useful?

Any ideas are welcome,
Thank you

User avatar
rpdom
Posts: 14683
Joined: Sun May 06, 2012 5:17 am
Location: Chelmsford, Essex, UK

Re: Need help making a deb package

Mon Dec 10, 2018 6:04 am

There are plenty of Debian guides on how to make a .deb file. I've made a few for local use myself.

It's mostly a matter of building the file structure that the files will need to be installed to (with correct permissions and ownership set), then creating some files in a "DEBIAN" sub-directory which define the dependencies and installer details. Package it all up (there is a tool for this) and you have a .deb file ready to install/distribute.

DarkElvenAngel
Posts: 141
Joined: Tue Mar 20, 2018 9:53 pm

Re: Need help making a deb package

Fri Dec 14, 2018 3:24 am

rpdom wrote:
Mon Dec 10, 2018 6:04 am
There are plenty of Debian guides on how to make a .deb file. I've made a few for local use myself.

It's mostly a matter of building the file structure that the files will need to be installed to (with correct permissions and ownership set), then creating some files in a "DEBIAN" sub-directory which define the dependencies and installer details. Package it all up (there is a tool for this) and you have a .deb file ready to install/distribute.
Thanks for the reply I've been looking for a good guild that goes in-depth into the the various control files and how to use them properly. I've had success making simple packages but more complex ones have been unsuccessful. I unpacked an official package and there are even more files in the DEBIAN folder I read the manual but I really wanted a guild that walks through what everything is for with an example. I find that learning by doing is much better than reading a manual.

As you have made packages yourself for your own needs how did you install them? I've had some interesting warning and notices when I installed my packages but they installed properly. I used apt, I've read about using dpkg but since it doesn't look after dependencies I didn't want to use it.

gkreidl
Posts: 5996
Joined: Thu Jan 26, 2012 1:07 pm
Location: Germany

Re: Need help making a deb package

Fri Dec 14, 2018 8:15 am

DarkElvenAngel wrote:
Fri Dec 14, 2018 3:24 am
As you have made packages yourself for your own needs how did you install them? I've had some interesting warning and notices when I installed my packages but they installed properly. I used apt, I've read about using dpkg but since it doesn't look after dependencies I didn't want to use it.
I always use gdebi. It can install from files and also automatically dependencies from a repository.

A simple method to create .deb packages is using checkinstall.
Minimal Kiosk Browser (kweb)
Slim, fast webkit browser with support for audio+video+playlists+youtube+pdf+download
Optional fullscreen kiosk mode and command interface for embedded applications
Includes omxplayerGUI, an X front end for omxplayer

Return to “Advanced users”