On 2024/11/17 10:57, Daniel Jakots wrote: > On Fri, 15 Nov 2024 09:34:47 +0000, Stuart Henderson > <s...@spacehopper.org> wrote: > > > I'd put the package name first for quicker reading, and mention > > that it's just server: > > > > <h3 id="r20241120">2024/11/20 - [packages] minio server: Removal of > > Gateway and filesystem modes</h3> > > sure, modified locally > > > > +<p> > > > +The last MinIO version supporting the MinIO is provided under the > > > package +<tt>minio-old</tt>. > > > > If you want to change the package stem you also need to deal with > > making sure the packages conflict. Also it's a bit different to other > > examples where we have multiple versions of a port in the tree. > > > > Attached diff is a simpler approach keeping the same pkgstem, giving > > this: > > Yes, the is-branch is a good idea! > > > > 1. should minio and minio-old conflict? To migrate to the SNSD mode, > > > only the old version is enough, you don't need to have both. > > > Otherwise if we don't set a conflict marker I'll rename the > > > minio.rc to minio-old.rc I guess > > > > Yes I think so. > > This is handled by the is-branch, isn't it?
That's for a different purpose is-branch Annotate the few rare ports where several branches are present in the ports tree (such as autoconf), to help pkg_info(1) produce stem%branch annotations when needed. > Can't install minio-0.20241107 because of conflicts (minio-0.20221024p3) Packages with the same stem (minio-...) conflict by default - for things like autoconf where they _don't_ conflict we have an extra "@option no-default-conflict" annotation. So just using the same stem is enough for the conflict to happen automatically. > > If you want to make sure that users do actually change it from the > > default, you could check that in the rc.d script, > > > > getcap -f /etc/login.conf.d/minio:/etc/login.conf -c setenv minio > > Indeed a > rc_pre() { > getcap -f /etc/login.conf.d/minio:/etc/login.conf -c setenv minio > } > works as intended, however I'm afraid users will struggle to find out > why it doesn't start (we all know how much pkg/README are actually read > haha). How about this? rc_pre() { if ! getcap -f /etc/login.conf.d/minio:/etc/login.conf \ -c setenv minio | grep -q ^=.*MINIO_ROOT_PASSWORD; then echo "MINIO_ROOT_PASSWORD not set; refer to pkg-readme" >&2 return 1 fi } "rcctl start minio" will just print "failed", but hopefully people know about "rcctl -d start ..." > > And by providing the file, you can make sure it has sane permissions. > > So how about this? > > /usr/ports/net/minio$ cat server/pkg/minio.login > minio:\ > :openfiles-cur=4096:\ > :openfiles-max=8192:\ > :tc=daemon: I'm happy with that .login file > /usr/ports/net/minio$ cat server/pkg/README > +------------------------------------------------------------------------------- > | Running ${PKGSTEM} on OpenBSD > +------------------------------------------------------------------------------- > > minio's root access > =================== > > By default, minio server use minioadmin:minioadmin as the user:password for > the > root access. The only way to change the default user and/or password is > through the MINIO_ROOT_USER and MINIO_ROOT_PASSWORD environment variables. On > OpenBSD, this can be achieved through ${SYSCONFDIR}/login.conf.d/minio: That should specifically use /etc not ${SYSCONFDIR}. It is hardcoded in libc so in the unlikely event anyone manages to get things to work with a modified SYSCONFDIR in the first place, the login.conf.d files must be exactly in /etc/login.conf.d. Otherwise lgtm. > minio:\ > :openfiles-cur=4096:\ > :openfiles-max=8192:\ > :setenv=MINIO_ROOT_USER=root,MINIO_ROOT_PASSWORD=yourstrongpassword:\ > :tc=daemon: > At this point, I believe a diff is too big to be useful so instead, I > attached the whole directory (/usr/ports/net$ tar cvzf minio.tgz minio) OK to import minio-old unlinked for now so we can cut the size of this :) And the rest is nearly there.