I'm making a deb package to install a custom application. I changed all files/folders ownership to root in order to avoid the warnings I was getting during installation, and in Ubuntu all runs smoothly, as Ubuntu changes the ownership of the files/folders to the user installing the package.
But when I'm installing on Debian, root remains the owner. The application uses a folder to write data, and here is the problem. Running as a standard user, the app does not have permission to write on the folder.
Now, how should I deal with this problem? Should I make a post install script on the deb package, doing the chmod o+w
? Should I package the directory already with those permissions set?
Or is there any way of setting the owner of the files to the user that installs the app automatically (like Ubuntu does)?
I'm not sure what the behaviour is in Ubuntu, but in general for a .deb
package containing files or directories with non-standard permissions you need to ensure those permissions are set after dh_fixperms
is run. If you're using a dh
-style rules
, you can do this as follows:
override_dh_fixperms:
dh_fixperms
chmod 777 yourfolder
You can also do this in a postinst
:
if [ "$1" = "configure" ]; then
chmod 777 yourfolder
fi
but the rules
approach is simpler (at least, I prefer doing that rather than relying on maintainer scripts).
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments