Even a requires won't (always) help. Install order is determined by evaluating the packages _pre-requirements_. - A _required_ package (together with all it's requirements) must be available at the end of the transaction. This does not imply any specific order. - A _pre-required_ package (together with all it's requirements) must be available at the time the requiring package gets installed. This way the requiring package can use the pre-required package within it's install scripts. When ordering the transaction the resolver tries to satisfy as many requirements as possible before a package gets installed. So althopugh tresc-pam_mount 'just _requires_' pam_mount, it's likely that pam_mount gets installed before tresc-pam_mount. But it's not asserted! A solution could be to delay the execution of the tresc-pam_mount script until the transaction has finally installed all packages. Try using a %posttrans rather than %post in tresc-pam_mount.