Page MenuHomeFreeBSD

multimedia/kavita: add new port
Needs ReviewPublic

Authored by nick_kirby.cx on Fri, May 24, 11:02 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Jun 5, 12:36 AM
Unknown Object (File)
Sun, May 26, 6:37 PM
Subscribers
This revision needs review, but there are no reviewers specified.

Details

Reviewers
None
Summary

Kavita is a fast, feature rich, cross platform reading server. Built with the goal of being a full solution for all your reading needs. Setup your own server and share your reading collection with your friends and family.

Test Plan

Poudriere won't build, but I suspect this is how the build.sh script is handling how npm commands are run. No idea if this is something I can fix or if it's something that will mature as dotnet ports on FreeBSD do.

Portlint warns about RUN_DEPENDS and USES needing to appear earlier, but they look in the right order to me.

Portfmt and portclippy are happy.

Port builds, installs, runs daemonized as a normal nologin user with rc script pretty well so far. I'm still testing functionality on my server, but so far nothing has failed.

Looking for a review to see if I've committed any cardinal sins before I submit to bugzilla as this is the first port I've seen that would actually build with the native lang/dotnet port.

There are a couple of things I'm not thrilled with, such as pulling from a guthub commit instead of a tag, but the choice to do so initially has to do with how they've messed up the version number in their most recent tag. But nothing show stopping that I'm aware of.

Diff Detail

Repository
R11 FreeBSD ports repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

nick_kirby.cx created this revision.
diizzy removed reviewers: bofh, diizzy.

Hi,

Please post using the correct channel and there's no need to assign it specific committers, https://bugs.freebsd.org/bugzilla/

Best regards,
Daniel

First of all thanks for submitting the patch. However these are my feedbacks:

  1. Do not submit a patch if poudriere is failing to build. Seek help through mailing lists/forum/other members and make sure that at least poudriere is building. The rest of the things are much easier to tackle by a committer.
  2. For npm/nodejs based ports you have to create the offline dist cache and host it somewhere and add it as a distfile. Mostly committers use their freefall account to host such files. So you can either request a committer to host this or host it by yourself
  3. If you think that there are anomalies in the dists versioning scheme or they do not actually support semantic versioning do not invent your own versioning scheme. Look at the porter's handbook Github section where there are couple of examples and one of which is similar to your case starting with a g and ending with the commit date.

Rest of the comments are inline.

multimedia/kavita/Makefile
15

Superfluous blank lines which is making portlint upset

16

You do not need + unless you are adding something to a previously declared value.

20

Superfluous blank lines which is making portlint upset

24

Superfluous blank lines

32

Somehow I think you have mixed TAB indention with spaces. Have a look at man style and grab the editor config files mentioned there to integrate with your editor of choice so that this type of cosmetic mistakes do not occcur.

multimedia/kavita/pkg-plist
1415

For ports which have more than a thousand file it's better to use dynamic pkg-plist. Look at the gitlab port on how the TMPPLIST is utilized to do the same. Additionally this looks a bit weird to me. Almost all ports that installs some sort of web applications should go to WWWDIR and not in DATADIR.

Thank you both very much for your feedback!

I'm working through it at the moment and will go to bugzilla once I've implemented them satisfactorily.