Bug 234627

Summary: devel/py-buildbot-worker: Fails to startup on boot: /etc/rc: Permission denied (due to use of $0)
Product: Ports & Packages Reporter: Kubilay Kocak <koobs>
Component: Individual Port(s)Assignee: Kubilay Kocak <koobs>
Status: Closed FIXED    
Severity: Affects Only Me CC: ari
Priority: --- Flags: koobs: merge-quarterly?
Version: Latest   
Hardware: Any   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=234614
Bug Depends on: 234614    
Bug Blocks:    

Description Kubilay Kocak freebsd_committer freebsd_triage 2019-01-05 02:13:17 UTC
In ports r484380 I switched from using %%PREFIX%%/etc/${name} to $0 in the rc script for the profile mechanism, in order to:

    Fix startup script to use the filename of itself (the executed script),
    not a filename that uses the ${name} variable, which doesnt exist as it
    contains an underscore (not a dash), causing the following error when
    executed:

    /usr/local/etc/rc.d/buildbot-worker: /usr/local/etc/rc.d/buildbot_worker:
not found

I forgot that using $0 causes issues on boot, as $0 is not the rc scripts filename when run via /etc/rc, it is 'etc/rc' instead.

After talking with Kyle about correct/permanent solutions to the issue, bug 234614 now tracks a new feature in rc to provide a variable for scripts to use to self-reference themselves for profile or other mechanisms. 

I'll wait until that feature is finalised, and plug in (copy) the same functionality for temporary use directly in this ports rc script, until all supported FreeBSD versions carry the new feature.
Comment 1 ari 2021-06-02 04:17:25 UTC
I see the rc.d script is now buildbot-worker with a hyphen, so can this ticket be closed?
Comment 2 ari 2021-12-02 01:31:31 UTC
Would you like to close this ticket now? I think it is resolved.
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2021-12-02 01:37:18 UTC
Thanks Ari