/srv/irclogs.ubuntu.com/2011/02/05/#ubuntu-motu.txt

=== al-maisan is now known as almaisan-away
c2tarunWhat is the difference between a .cc file and .cc.rej file?02:52
james_wthe latter was probably created by the patch command because that patch that was being applied didn't apply cleanly02:54
c2tarunjames_w: In case if a patch fails rejects are saved in .cc.rej file. If the patch is already applied we should remove the patch. but what to do with .rej file? should we remove them too?02:56
james_wwell, if you manually applied the failed parts then you can delete it02:56
james_wif not then you likely need to deal with the conflicts, otherwise things may not work02:56
c2tarunjames_w: I checked in the source files, the patches are already applied, that's why it failed. So I should delete both the rej files and that particular patch?02:57
james_wI guess so02:57
c2tarunjames_w: ok thanks :)02:58
achianghm, i'm playing around with an upstream python program that would be nice to get into debian/ubuntu. they provide their own packaging, which is great. i made a test upload into a PPA, where it FTBFS because it is trying to install files into /usr/local/lib/python2.6, which is disallowed.03:43
achiangi've grepped through the source for just the string 'local' to see what might be making that happen, but that didn't turn up anything interesting03:44
james_wachiang, --install-layout=deb to "setup.py install" will fix that IIRC03:44
achiangany other clues?03:44
achiangjames_w: ah, interesting, i will try that03:44
achiangjames_w: you are a genius, thank you. i'll buy you a beer in budapest. :)03:47
james_wheh03:47
achiangjames_w: where can you discover that information? googling for --install-layout=deb doesn't turn up much interesting03:48
achiangjames_w: ah, a few more variations turned up -- http://wiki.debian.org/Python/Packaging03:49
james_wachiang, I just remember from the transition we did to dist-packages a couple of cycles ago. I don't know where you would have read it unfortunately03:53
james_whad upstream chosen a different approach to packaging then it would have been taken care of by the tools though03:53
* achiang inherits some institutional knowledge03:54
=== Amaranth_ is now known as Amaranth
lifelesswhats the current best tool to use for a simple python package which needs to be buildable on lucid up05:50
james_wlifeless, tool in what sense?05:57
james_wor rather tool to do what?05:57
lifelesspython-central, python-support, dh_python2, ...05:57
kklimondano dh_python2 for lucid until someone decides to bacport it :)06:01
kklimondalifeless: I'd go with python-support myself06:02
MTecknologyany change anyone could explain this file to me? http://bazaar.launchpad.net/~ubuntu-server-edgers/apache2/apache2-packaging.trunk/view/head:/debian/apache2.2-common.lintian-overrides07:51
lifelessit looks like a url07:51
MTecknologypackage_name.lintian-overrides I get; the first two columns I get; but what is the stuff after that in the file07:52
MTecknologyapache2.2-common: setuid-binary usr/lib/apache2/suexec 4754 root/www-data07:52
MTecknologypackage_name: lintain_tag ?? ?? ??07:52
lifelessI think it masks specific instances07:52
MTecknologyoh.. saying; I know it happens in this exact case; but if it happens anywhere else, I still want you to yell at me?07:53
lifelessI think os07:53
lifeless*so*07:53
MTecknologyis there any way to have a lintian-overrides file for everything?07:53
MTecknologyso you can just have the one file for all packages07:54
tsimpsonyou just have a lintian-overrides file, instead of <package>.lintian-overrides07:54
tsimpsonthe same way you do for the install, dirs, manpages, etc files07:54
MTecknologymakes a lot of sense :)07:55
tsimpsonthough it's generally considered bad practice to do that07:55
MTecknologyI wish you could add a comment in there say why you added that override07:55
tsimpsonusually you'll put that stuff in the changelog07:57
tsimpsonif it's not obvious07:57
MTecknologyoh07:57
MTecknologySo.. if you have nginx-common; nginx-full; nginx-light; nginx-extras; and nginx; should there be a changelog file for each, even if it's the exact same changelog?08:02
lifelessone changelog08:02
lifelessHave you tried a # to add a comment to the overrides file?08:03
MTecknologyi didn't; i just didn't see in the man page where it was possible and don't actually have an override file08:03
tsimpsonyou'll probably need a line for each package anyway, the lintian warnings are per-deb iirc08:04
MTecknologyhow do you handle that with dh_installchangelog if you only want one; just  'dh_installchangelogs -i -k CHANGES --package=nginx-common' and an overrides file for every package that isn't getting one?08:05
=== almaisan-away is now known as al-maisan
=== al-maisan is now known as almaisan-away
=== Quintasan_ is now known as Quintasan
=== apachelogger is now known as fosdemlogger
=== paissad_ is now known as paissad
=== freeflyi1g is now known as freeflying
=== _iron is now known as i_ron
Raydiationam i right here asking for help for building deb packages?19:46
Raydiationi got this postinst script http://paste.pocoo.org/show/332732/ but install hangs at restarting apache19:47
jmarsdenRaydiation: Try asking in #ubuntu-packaging also19:49
Raydiationty19:50
Raydiationthis is my first time that i made a deb package, so id be glad if you could give me some advice too on my scripts https://github.com/Raydiation/Laudio/tree/master/debian/DEBIAN19:53
BachstelzeRaydiation: for a first package, maybe you should try something that doesn't require maintainer scripts19:56
RaydiationBachstelze: maintainer scripts?19:57
Raydiationi just want to provide an easy to install deb package for my app19:58
BachstelzeRaydiation: postint et al.19:59
RaydiationBachstelze: well, is there an easiere way to do this? i know which cmds i need to install my software, unfortunately its no C program with makefile but a django webapplication which runs on apache20:00
dapalRaydiation: also, never EVER use DEBIAN/. Run dh_make on your source package, and create a proper debian/ directory.20:00
Raydiationdapal: i need a makfile + autotools for that right?20:01
dapalRaydiation: no.20:01
dapalRaydiation: read about dh7, and override_dh_auto_build20:01
Raydiationwhat can i do to remove the package from the packagemanager without executing postrm?20:04
Raydiationthe current one doesnt install/uninstall properly20:04
dapalRaydiation: remove /var/lib/dpkg/info/yourpackage.postrm, then do an apt-get --purge remove yourpackage20:05
Raydiationdapal: ty!20:06
Raydiationdo i have to create a makefile anyway?20:33
Raydiationi have 5 simple commands for installing20:34
BachstelzeRaydiation: how does your package install files if you don't have a Makefile?20:40
RaydiationBachstelze: its a django web project20:47
Raydiationi just know where to extract it and what to run to get it working on any other pc20:47
Bachstelzeright20:47
Bachstelzeit has to install files somewhere20:47
RaydiationBachstelze: so i need to write everything into a makefile?20:48
Bachstelzeno20:48
Bachstelzebut I'm trying to figure out how your package works20:48
Raydiationi need to copy a file to /etc/apache2/conf.d/20:49
Raydiationthe rest is copied to /opt/laudio20:49
Raydiationthen some rights adjustment and apache restart20:49
Raydiationah yeah and a cmd to generate the sqlite db20:49
Raydiationthats all20:49
dapalRaydiation: /opt/ violates FHS.20:50
dapalor, at least, Debian policy :)20:50
Raydiationdapal: yes, i know, but for ease of use i set it to this dir20:50
dapalRaydiation: read about dh_install, and debian/install (or debian/<package>.install)20:50
dapalRaydiation: sure, but that way your package won't *ever* be accepted in Debian (can't tell about Ubuntu though)20:51
dapalRaydiation: but if it's for private use, then it's fine.20:51
Raydiationdapal: private use first :) ill think about an appropriate directory once i got a prototype20:51
Raydiationdapal: do you have a good resource for the dh_install?21:11
Raydiationother than the manpage21:11
dapalRaydiation: the manpage is sufficient, I believe :)21:11
Raydiationdapal: do i have to write that into the rules file?21:12
Raydiationi took a look at the 2 vids for packaging on youtube21:12
dapalRaydiation: the manpage says "debian/package.install"21:12
dapalso, debian/laudio.install (if the package is named "laudio")21:12
Raydiationdapal: ah, i must have overread this21:13
dapalRaydiation: and dh_install is one of the automatically-called commands if you use dh721:13
dapalso no need to add anything to debian/rules21:13
Raydiationdapal: what about restarting apache? can i simply write /etc/init./apache2 restart into that file?21:17
dapalRaydiation: don't restart apache, that should be up to the user21:17
dapalanyways, no. The correct thing would be21:17
dapal...21:17
dapal(wait a sec)21:17
Raydiationdapal: without restarting the app doesnt run (because of the additional config file for apache it has to read in)21:18
BachstelzeRaydiation: the point is that the user should restart apache when they wnt to21:18
dapalexactly Bachstelze21:18
dapalanyways, the right code would be21:18
dapalif [ -x "`which invoke-rc.d 2>/dev/null`" ]; then21:18
dapal    invoke-rc.d apache2 force-reload || exit $?21:18
dapalelse21:18
dapal    /etc/init.d/dbus force-reload || exit $?21:18
dapalfi21:18
Bachstelzewhat if they have Important Stuff™ going on?21:18
dapalin the "configure" section of postinst21:19
dapalbut I'd highly discourage it21:19
Bachstelzeand anyway21:19
Bachstelzewouldn't a reload be sufficient ?21:19
Raydiationwhat would you do?21:19
dapalRaydiation: maybe drop the file in /etc/apache2/sites-available/, and that's it21:20
RaydiationBachstelze: i dunno, i have to install mod_wsgi21:20
dapaland a note in README.Debian21:20
dapalbtw, going to bed21:20
dapalg'night people21:20
RaydiationBachstelze: do you know dh_install? if i want to move the laudio dir to /opt and the laudio_apache.conf to /etc/apache2/conf.d/ is this correct for laudio.install?21:26
Raydiationhttp://paste.pocoo.org/show/332787/21:26
BachstelzeRaydiation: could be, have you tried it ?21:28
Bachstelzeyou will probzbly need a .dirs file too21:30
Bachstelzefor dh_installdirs, it will create the directories in debian/tmp21:31
Bachstelzeand dh_install will install the files afterwards21:31
RaydiationBachstelze: hm, wont moving the files be enough? i guess /opt/ is everywhere and after the apache install /etc/apache2/conf.d/ also exists21:32
Bachstelzewhen you create the packages21:33
Bachstelzethe files are installed relative to debian/tmp21:34
Bachstelzeand debian/tmp/opt and debian/tmp/etc/apache2/conf.d do not exist21:34
Raydiationah, so just create those tmp dirs21:34
Bachstelzeyes21:34
Raydiationso i just create laudio.dirs and add those 2 lines with the relative paths?21:35
Raydiationopt/21:36
Raydiationetc/apache2/conf.d21:36
Bachstelzeyes21:36
Raydiationty21:36
Raydiationimo its really hard to find information about what to do when youre not installing anything that installs via makefile21:37
Raydiationthe thing is id rather not make a makefile since i need to copy the apache config file to the apache directory which is often named differently in each distro21:38
Raydiationin arch linux its etc/httpd/21:39
Bachstelzeyou can very well create the makefile in a patch you will put in deban/patches21:45
Bachstelzebut for copying two files, I think it would be overkill21:45
Raydiationyes21:46
RaydiationBachstelze: hm i just read this in the wiki: Many packages wrongly use dh_installdirs and .dirs files to create directories. 99% of those cases are not necessary, since dh_install and .install files will automatically take care of creating directories. You only need to use dh_installdirs if your package needs to ship empty nonstandard directories, e. g. /etc/mypackage/plugins.d/.21:48
Raydiationso i guess i dont need a dir file21:49
Bachstelzewhat?21:51
RaydiationBachstelze: https://wiki.ubuntu.com/PackagingGuide/Basic#Abusing%20.dirs%20files21:52
Bachstelzewhenever I want to install a file in a direcroy without creating it first, it gives me "no such file or directory"21:52
Raydiationhm, im leaving it in, cant go wrong21:55
Raydiationwill configure in the postint file always be called after installing?21:56
Bachstelzeno idea, I've never worked on packages with postints21:56
Raydiationthats what i got http://paste.pocoo.org/show/332798/21:56
Raydiationand thats the prerm http://paste.pocoo.org/show/332799/21:57
Bachstelzeas I said, I can't help you with those at all21:59
RaydiationBachstelze: is there a way to properly test my package?22:10
jmarsdenRaydiation: lintian and perhaps piuparts ?22:11
Raydiationty22:13
Raydiationbtw, why does it generate an amd64 deb?22:13
Raydiationive specified archicture any in the control file22:14
Raydiationits a python program and thus it runs everywhere22:14
Raydiationdo i need all as architecture?22:15
jmarsdenRaydiation: What did you put for Architecture?  All, or Any?22:15
jmarsdenThey do different things.22:16
Raydiationjmarsden: ah ok, i put in any, i thought it would make it for all archs22:16
Raydiationin this case i have to use all i guess22:16
Raydiationis there something like make clean? which deletes all build packages + folders?22:17
Raydiationdh_clean maybe?22:17
jmarsdenRaydiation: Read Debian Policy: http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Architecture22:17
Raydiationjmarsden: ty22:18
jmarsdenAnd for clean, do you mean make -f debian/rules clean ?  The clean target in the rules file?22:18
Raydiationjmarsden: just the files which get created after debuild22:18
jmarsdenRaydiation: Ah, no I don't think there is a clean target for that.22:18
Raydiationbtw do i need the source dir?22:19
jmarsdenWell, you need it to build the package :)22:19
Raydiationjmarsden: i only have python files22:20
jmarsdenRaydiation: I'm no expert on Python packaging... have you read http://www.debian.org/doc/packaging-manuals/python-policy/index.html22:22
ScottKRaydiation: If you use Python disutils to build a normal Python package any of the Python pacakging helpers mentioned in the Python policy will do a very good job of putting files in the right places.  There is also stdeb for semi-automatic Debian package creation from a Python package.22:31
Raydiationdo i need to specify my own deinstallation mechanism?22:50
Raydiationbecause if i uninstall my package the /opt/laudio directory doesnt get erased22:50
Raydiationis that because ive deleted one file already which has also been installed?22:51
Raydiationi got 3 files which may be created in the directory: a sqlite db, a smylink and a log file22:52
Raydiationin prerm i check for those and remove them if i find them22:52
jmarsdenRaydiation: does dpkg -S /opt/laudio    show your package name?23:00
Raydiationjmarsden: yes23:15
jmarsdenThen as far as I know, it should also remove it when you uninstall the package.23:16
jmarsdenDo you see any relevant warning or error messages when you do  apt-get remove PACKAGENAME ?23:17
Raydiationjmarsden: no23:18
Raydiationi cant remove it a second time also23:19
Raydiationin dpkg/info is only laudio.list now23:19
Raydiationjmarsden: if you wanna take a look at the build files: https://github.com/Raydiation/Laudio/tree/master/debian23:20
Raydiationdo i even have to care about files which are created in my install path?23:25
Raydiationi mean do i need https://github.com/Raydiation/Laudio/blob/master/debian/prerm23:25
jmarsdenRaydiation: If you do nothing with them they will be left there and so the removal of the /opt/laudio directory would fail, I think.  Would it not make more sense to put the database and logs under /var somewhere, more in line with FHS standards?23:32
Raydiationjmarsden: youre right23:35
Raydiationhm i didnt use the prerm script now and nothing got deleted23:35
Raydiationaah, maybe pyc files23:38
Raydiationjmarsden: do i have to remove all pyc files too?23:38
Raydiationpyc = python bytecode23:38
Raydiationgets generated when the program is executed23:38
jmarsdenIf they were installed automatically based on your debian/laudio.install file then no, otherwise yes.23:39
Raydiationtheyre not installed23:39
Raydiation:/ this is kinda stupid23:39
jmarsdenThen if you want them deleted, you need to do it yourself somewhere.23:39
jmarsdenWhy?  The packaging system won't delete a directory it installed when you the user have put stuff in there it knows nothing about!23:40
jmarsdenThat would be a really bad idea, it might be deleting your tax returns or something :)23:40
Raydiationjmarsden: yeah, but .pyc files usually dont have any sense23:41
jmarsdenThe packaging system has no way to automatically know that.  There may some Python specific packaging helper than deals with this.23:42
Raydiationim gonna use something like find . -name "*.pyc" -exec rm '{}' ';'23:42
Raydiationquicker :)23:43
jmarsdenDid you use one of the Python packaging helpers that scott k mentioned ?  It doesn't look like it... so you may be "reinventing the wheel" here.23:43
Raydiationjmarsden: i took a look at distutils, but its not really what i want23:43
Raydiationdistutils are more for distributing python modules23:43
Raydiationbtw im really gratefull for your help23:46
Raydiationtried getting help23:46
Raydiationin #debian already but no success23:47
Raydiationjmarsden: works now :)23:50
Raydiationbut the apache config file now doesnt get deleted23:50
Raydiationdo i have to stop apache to rm it?23:50
jmarsdenNo, if the package installed it the package should uninstall it too.23:51
Raydiationdpgk -S laudio now only spits out this file23:51
jmarsdenAnd sudo apt-get purge laudio does not remove it?23:51
Raydiationjmarsden: it did23:52
Raydiationty!23:52
Raydiation:D23:52
jmarsdenSo it is working :)  You're welcome.23:52
Raydiationty this channel is great23:52

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!