[opensuse-buildservice] maintaining file permissions
Hi, How can I maintain the executable mode of a file when I check it in into the build service? Some RPMs have scripts that are called directly from the spec file, build fails because the files can't be executed due to bad permissions. Thanks, Anas --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Hello, on Sonntag, 13. Juli 2008, Anas Nashif wrote:
How can I maintain the executable mode of a file when I check it in into the build service?
Some RPMs have scripts that are called directly from the spec file, build fails because the files can't be executed due to bad permissions.
AFAIK you can't keep the x permissions (except by putting them inside a tarball) - but you can "chmod +x" them in the specfile before they are called ;-) Regards, Christian Boltz -- X läuft bei mir grade testweise mit der Modmap eines gewissen Listenmitglieds, weswegen ich ich ab und yu ein paar Yeichen vertauscht haben k;nnte. Ich bitte um Veryeihung. ;-) [Ferdinand Ihringer in suse-linux] --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Sunday 13 July 2008 16:09:12 Anas Nashif wrote:
Hi, How can I maintain the executable mode of a file when I check it in into the build service?
This is not possible. http transfer do not know a permission mask.
Some RPMs have scripts that are called directly from the spec file, build fails because the files can't be executed due to bad permissions.
Just call the scripts via "bash $script" or alike. The advantage is that it would build even on FAT filesystems in future :) bye adrian -- Adrian Schroeter SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) email: adrian@suse.de --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Adrian, Adrian Schröter wrote:
On Sunday 13 July 2008 16:09:12 Anas Nashif wrote:
Hi, How can I maintain the executable mode of a file when I check it in into the build service?
This is not possible. http transfer do not know a permission mask.
Well, subversion uses HTTP and it still support this by changing attributes of files. When transferring a file maybe in the future also transfer it's attributes in the HTTP request. This would also be helpful for the web client which currently shows garbage if you click on 'Show' link for a tar ball or any binary data.
Some RPMs have scripts that are called directly from the spec file, build fails because the files can't be executed due to bad permissions.
Just call the scripts via "bash $script" or alike. The advantage is that it would build even on FAT filesystems in future :)
I solved this by changing the permissions before the script is called. It seems however fedora has many packages that expect the executable flags to be set for scripts.
bye adrian
--------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 2008-07-24 06:50:38 +0800, Anas Nashif wrote:
Adrian Schröter wrote:
On Sunday 13 July 2008 16:09:12 Anas Nashif wrote:
Hi, How can I maintain the executable mode of a file when I check it in into the build service?
This is not possible. http transfer do not know a permission mask.
Well, subversion uses HTTP and it still support this by changing attributes of files. When transferring a file maybe in the future also transfer it's attributes in the HTTP request. This would also be helpful for the web client which currently shows garbage if you click on 'Show' link for a tar ball or any binary data.
this is incorrect. subversion preserves exactly 1 single bit of the permissions: executable. thats all about it. the rest is taken from your current umask.
Some RPMs have scripts that are called directly from the spec file, build fails because the files can't be executed due to bad permissions.
Just call the scripts via "bash $script" or alike. The advantage is that it would build even on FAT filesystems in future :)
I solved this by changing the permissions before the script is called. It seems however fedora has many packages that expect the executable flags to be set for scripts.
we had the same problems in the past and now exec all scripts with the interpreter directly. darix -- openSUSE - SUSE Linux is my linux openSUSE is good for you www.opensuse.org --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
Am Donnerstag 24 Juli 2008 00:50:38 schrieb Anas Nashif:
Adrian,
Adrian Schröter wrote:
On Sunday 13 July 2008 16:09:12 Anas Nashif wrote:
Hi, How can I maintain the executable mode of a file when I check it in into the build service?
This is not possible. http transfer do not know a permission mask.
Well, subversion uses HTTP and it still support this by changing
well, this is more webdav than simple http AFAIK.
attributes of files. When transferring a file maybe in the future also transfer it's attributes in the HTTP request. This would also be helpful for the web client which currently shows garbage if you click on 'Show' link for a tar ball or any binary data.
Some RPMs have scripts that are called directly from the spec file, build fails because the files can't be executed due to bad permissions.
Just call the scripts via "bash $script" or alike. The advantage is that it would build even on FAT filesystems in future :)
I solved this by changing the permissions before the script is called. It seems however fedora has many packages that expect the executable flags to be set for scripts.
Currently we would have a problem with our source repo with this. You can not change the permission of a file for a package, because it gets stored only once. So, I this would be major work to allow this, so I do not see that we will implement such a functionality soon. But as usual, if you can provide a patch ... ;) bye adrian -- Adrian Schroeter SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) email: adrian@suse.de --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On Thu, Jul 24, 2008 at 09:24:30AM +0200, Adrian Schröter wrote:
How can I maintain the executable mode of a file when I check it in into the build service?
This is not possible. http transfer do not know a permission mask.
Well, subversion uses HTTP and it still support this by changing
well, this is more webdav than simple http AFAIK.
Small correction - it doesn't really have to do with the transfer protocol -- neither HTTP nor its extensions, it's just that we have no way to store this kind of information in the source code repository, and so it would be no point in transferring the information anyway... otherwise it could be transmitted of course.
Currently we would have a problem with our source repo with this. You can not change the permission of a file for a package, because it gets stored only once.
So, I this would be major work to allow this, so I do not see that we will implement such a functionality soon.
Yes... maybe not too difficult, I don't know. Maybe not worth it just for the x bit. Maybe for other reasons (more compatible clients, publicly viewable sources come to mind)
But as usual, if you can provide a patch ... ;)
bye adrian
Peter -- Contact: admin@opensuse.org (a.k.a. ftpadmin@suse.com) #opensuse-mirrors on freenode.net Info: http://en.opensuse.org/Mirror_Infrastructure SUSE LINUX Products GmbH Research & Development
participants (5)
-
Adrian Schröter
-
Anas Nashif
-
Christian Boltz
-
Marcus Rueckert
-
Peter Poeml