{"action":"created","issue":{"url":"https://api.github.com/repos/nebula-plugins/gradle-ospackage-plugin/issues/84","labels_url":"https://api.github.com/repos/nebula-plugins/gradle-ospackage-plugin/issues/84/labels{/name}","comments_url":"https://api.github.com/repos/nebula-plugins/gradle-ospackage-plugin/issues/84/comments","events_url":"https://api.github.com/repos/nebula-plugins/gradle-ospackage-plugin/issues/84/events","html_url":"https://github.com/nebula-plugins/gradle-ospackage-plugin/issues/84","id":60033200,"number":84,"title":"Building DEB restricts shell and actions in install scripts","user":{"login":"dparasam","id":10210264,"avatar_url":"https://avatars.githubusercontent.com/u/10210264?v=3","gravatar_id":"","url":"https://api.github.com/users/dparasam","html_url":"https://github.com/dparasam","followers_url":"https://api.github.com/users/dparasam/followers","following_url":"https://api.github.com/users/dparasam/following{/other_user}","gists_url":"https://api.github.com/users/dparasam/gists{/gist_id}","starred_url":"https://api.github.com/users/dparasam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dparasam/subscriptions","organizations_url":"https://api.github.com/users/dparasam/orgs","repos_url":"https://api.github.com/users/dparasam/repos","events_url":"https://api.github.com/users/dparasam/events{/privacy}","received_events_url":"https://api.github.com/users/dparasam/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-03-05T23:19:56Z","updated_at":"2015-06-15T10:36:59Z","closed_at":null,"body":"For the install scripts,\r\n- one cannot change default shell to anything other than \"/bin/sh\".  This is fine if the user supplied code is dash-compatible (default on Debian systems).  However it would be good to have this configurable, e.g., to specify \"#!/bin/bash\" if the user code is only bash-compatible.\r\n- the plugin assumes that user supplied code for preInstall and postInstall scripts are always invoked with \"install\" parameter.  It would be good to provide flexibility for adding other actions such as \"configure\", \"abort-remove\" etc\r\n\r\nThe simplest fix is to make the preinst.ftl, postinst.ftl, prerm.ftl, postrm.ftl scripts free-form, i.e., just insert the user-supplied code verbatim (the user could then also specify the shell of choice in the she-bang line)"},"comment":{"url":"https://api.github.com/repos/nebula-plugins/gradle-ospackage-plugin/issues/comments/112014749","html_url":"https://github.com/nebula-plugins/gradle-ospackage-plugin/issues/84#issuecomment-112014749","issue_url":"https://api.github.com/repos/nebula-plugins/gradle-ospackage-plugin/issues/84","id":112014749,"user":{"login":"tbroyer","id":173813,"avatar_url":"https://avatars.githubusercontent.com/u/173813?v=3","gravatar_id":"","url":"https://api.github.com/users/tbroyer","html_url":"https://github.com/tbroyer","followers_url":"https://api.github.com/users/tbroyer/followers","following_url":"https://api.github.com/users/tbroyer/following{/other_user}","gists_url":"https://api.github.com/users/tbroyer/gists{/gist_id}","starred_url":"https://api.github.com/users/tbroyer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tbroyer/subscriptions","organizations_url":"https://api.github.com/users/tbroyer/orgs","repos_url":"https://api.github.com/users/tbroyer/repos","events_url":"https://api.github.com/users/tbroyer/events{/privacy}","received_events_url":"https://api.github.com/users/tbroyer/received_events","type":"User","site_admin":false},"created_at":"2015-06-15T10:36:59Z","updated_at":"2015-06-15T10:36:59Z","body":"I'd just like to be able to provide the \"control directory\", containing the control scripts, to jDeb; without any specific processing by the plugin.\r\nI understand though this might not play well with RPMs, and the ability to create both kinds of packages from the same configuration; but maybe scripts in the 'control directory\" could take priority over commands configured from the build file, or fail the build if there's a conflict (e.g. if there are `preInstall` commands then there must **not** be a `preinst` script)"}}