Hm, I don't get the point. I ran a few tests with

```scala
linuxPackageMappings in Debian += packageTemplateMapping(target.value,
    "/var/log/" + name.value,
    "/etc/" + name.value
)

linuxPackageMappings in Debian += packageTemplateMapping(target.value,
    "/var/log/private"
).withPerms("0644")

linuxPackageMappings in Debian += packageMapping(
    (baseDirectory.value / "conf" / "application.conf") -> "/root/application.conf",
    (baseDirectory.value / "conf" / "application.conf") -> ("/etc/" + name.value + "/application.conf")
).withPerms("0644")
```

and all permissions were set as they should. If you mean that users may get confused with the [directory permissions](http://unix.stackexchange.com/questions/21251/why-do-directories-need-the-executable-x-permission-to-be-opened), then I think it's a matter of documentation. Less magic, is better magic IMHO :)

The [LinuxFileMetaData](https://github.com/sbt/sbt-native-packager/blob/master/src/main/scala/com/typesafe/sbt/packager/linux/LinuxPackageMapping.scala) have by default the `execution bit` so we only have to add magic (Plan A) if this behaviour changes. Right?