julian67 wrote:A useful addition to the first post would be on applying patches.
harishankar wrote:I request you to include information on how exactly to package small Python programs (not shared modules) for Debian.
dpkg-buildpackage -rfakeroot -nc
llivv wrote:I have a question because in my haste and inexperience I use apt as root when downloading the source.
I built the deb with the source owned by root, but noticed that before I installed.
If I installed uzbl_0.0.0~git.20100105-1_i386.deb with dpkg would the programs permissions be different
than if I built the same deb with source owned by user.
[ Mon 18-Jan-2010 11.37 XXXX ] DEBs $ dpkg --contents barrybackup-gui_0.15-1~bpo50+1_i386.deb
drwxr-xr-x root/root 0 2009-12-20 04:02 ./
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/bin/
-rwxr-xr-x root/root 166580 2009-12-20 04:03 ./usr/bin/barrybackup
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/share/
drwxr-xr-x root/root 0 2009-12-20 04:02 ./usr/share/doc/
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/share/doc/barrybackup-gui/
-rw-r--r-- root/root 2401 2009-12-20 03:52 ./usr/share/doc/barrybackup-gui/copyright
-rw-r--r-- root/root 1958 2009-12-20 03:53 ./usr/share/doc/barrybackup-gui/changelog.Debian.gz
-rw-r--r-- root/root 43624 2009-08-29 00:03 ./usr/share/doc/barrybackup-gui/changelog.gz
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/share/barry/
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/share/barry/glade/
-rw-r--r-- root/root 11733 2009-12-20 04:02 ./usr/share/barry/glade/BackupWindow.glade
-rw-r--r-- root/root 10825 2009-12-20 04:02 ./usr/share/barry/glade/ConfigDlg.glade
-rw-r--r-- root/root 5520 2009-12-20 04:02 ./usr/share/barry/glade/PasswordDlg.glade
-rw-r--r-- root/root 5807 2009-12-20 04:02 ./usr/share/barry/glade/PromptDlg.glade
-rw-r--r-- root/root 8457 2009-12-20 04:02 ./usr/share/barry/glade/DatabaseSelectDlg.glade
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/share/man/
drwxr-xr-x root/root 0 2009-12-20 04:03 ./usr/share/man/man1/
-rw-r--r-- root/root 1344 2009-12-20 04:02 ./usr/share/man/man1/barrybackup.1.gz
drwxr-xr-x root/root 0 2009-12-20 04:02 ./usr/share/menu/
-rw-r--r-- root/root 219 2009-12-20 03:52 ./usr/share/menu/barrybackup-gui
llivv wrote:and just installing the binary version with apt doesn't bring the build deps needed, so I finally realized.
apt-get install whizbar
apt-get build-dep whizbar
Soul Singin' wrote:julian67 wrote:A useful addition to the first post would be on applying patches.
While editing my original post, I spent some time thinking about this suggestion. It would be nice to include information about how to patch the source code.
The trouble is that different packages use different patch maintenance systems (e.g. dpatch, quilt, cdbs and dbs). A proper discussion of patching would describe each method and is therefore outside the scope of the original post (which is to explain the various methods of building a package from source).
As a person gains more experience building DEB packages, he/she will encounter the various methods and learn how to use them. For beginners, simply building a DEB package is an achievement, so I would prefer to teach them how to walk before teaching them how to run.harishankar wrote:I request you to include information on how exactly to package small Python programs (not shared modules) for Debian.
From the responses, it appears that this would be an excellent topic for another HowTo. Unfortunately, I won't be able to help you write that one because I don't know anything about Python.
.
milomak wrote:the howto should make mention of the fact that you can change the compile options by editing debian/rules. and dependencies required can be changed by editing debian/control.
Soul Singin' wrote:You might then have to tweak the debian/rules file (e.g. to set configuration options) or set a shell variable. It all depends on the package in question.
Soul Singin' wrote:To illustrate the point, I grabbed the upstream source for PDFedit and ran dh_make. I didn't do anything else. dh_make automatically produced the following debian/control file:
- Code: Select all
Source: pdfedit
Section: unknown
Priority: extra
Maintainer: Xxxx Xxxxx <xxxx@xxxx>
Build-Depends: debhelper (>= 7), autotools-dev
Standards-Version: 3.7.3
Homepage: <insert the upstream URL, if relevant>
Package: pdfedit
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: <insert up to 60 chars description>
<insert long description, indented with spaces>
In particular, notice the third line from the bottom. The list of package dependencies is automatically generated by the build process.
You might then have to tweak the debian/rules file (e.g. to set configuration options) or set a shell variable. It all depends on the package in question.
Granted the second quote comes from my response to Telemachus, but it's on the first page of this thread.
Return to Docs, Howtos, Tips & Tricks
Users browsing this forum: No registered users and 6 guests