Bug 257358 - [NEW PORT] www/writefreely: Clean, Markdown-based publishing platform made for writers
Summary: [NEW PORT] www/writefreely: Clean, Markdown-based publishing platform made fo...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Joseph Mingrone
URL: https://writefreely.org
Keywords: feature
Depends on:
Blocks:
 
Reported: 2021-07-23 15:30 UTC by Robert Clausecker
Modified: 2021-08-23 04:24 UTC (History)
4 users (show)

See Also:
koobs: maintainer-feedback+


Attachments
www/writefreely: Clean, Markdown-based publishing platform made for writers (53.13 KB, patch)
2021-07-23 15:30 UTC, Robert Clausecker
no flags Details | Diff
226635: www/writefreely: Clean, Markdown-based publishing platform made for writers (53.11 KB, patch)
2021-07-29 17:10 UTC, Robert Clausecker
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Clausecker freebsd_committer freebsd_triage 2021-07-23 15:30:51 UTC
Created attachment 226635 [details]
www/writefreely: Clean, Markdown-based publishing platform made for writers

Go-based port.  Lots of distfiles.  On dependency had to be swapped out because the repo moved.  Custom rc script with a dedicated writefreely user.

portlint and portclippy like the port.  Tested with Poudriere on armv7, arm64, amd64, i386 FreeBSD 13.0-RELEASE.

This port requires a bunch of CSS files to be generated with lessc.  This is a tool written for node.js and comes with the usual NPM issues.  I have decided to roll a custom distfile hosted on my own server with pre-generated CSS files to side step this issue.  Users can decide to compile their own CSS files with the CSS_LESSC option (which uses NPM to download lessc and then uses that).

Alternative options are:

 * take the CSS files from the Linux binary distribution of the package
 * use some other less compiler to compile the CSS files (py-lesscpy was tested and doesn't like the files)
 * port lessc and use that to compile the CSS files (troublesome NPM port)

Please advise if one of the other courses of action should be taken.

***
WriteFreely is a clean, minimalist publishing platform made for writers.
Start a blog, share knowledge within your organization, or build a
community around the shared act of writing.

WWW: https://writefreely.org
Comment 1 Shane 2021-07-24 09:04:56 UTC
Have you looked at www/rubygem-less ?
Comment 2 Robert Clausecker freebsd_committer freebsd_triage 2021-07-24 10:34:53 UTC
(In reply to Shane from comment #1)

There seem to be syntax errors when using this one as well.
Comment 3 Robert Clausecker freebsd_committer freebsd_triage 2021-07-29 17:10:32 UTC
Created attachment 226780 [details]
226635: www/writefreely: Clean, Markdown-based publishing platform made for writers

Update patch with different UID/GID values as the old UID/GID pair had been taken in the meanwhile.
Comment 4 Li-Wen Hsu freebsd_committer freebsd_triage 2021-08-11 16:21:47 UTC
files/pkg-message.in seems not in the latest format (UCL), can you check this? Thanks!
Comment 5 Robert Clausecker freebsd_committer freebsd_triage 2021-08-11 16:53:30 UTC
(In reply to Li-Wen Hsu from comment #4)

Yes, this is intentional.  The message only needs to be shown on installation, so an old-style message suffices.
Comment 6 Daniel Engberg freebsd_committer freebsd_triage 2021-08-12 09:54:34 UTC
https://www.freshports.org/www/py-lesscpy/ --> https://github.com/lesscpy/lesscpy (upstream released new version about a month ago) ?

In general I think we should avoid relying on the maintainer to be a part of upstream as that usually causes issue futher down the road pretty much the same as for ports with non upstreamed patches.

Why is DIST_SUBDIR defined?
Comment 7 Robert Clausecker freebsd_committer freebsd_triage 2021-08-12 10:15:25 UTC
(In reply to Daniel Engberg from comment #6)

DIST_SUBDIR is defined because this port has a lot of distfiles, many of which are shared with www/writeas-cli.  The Porter's Handbook recommends defining DIST_SUBDIR in such cases.

The Makefile actually comes with a target to generate the hand-rolled distfile, so in case the maintainer changes, the new maintainer has a way to generate it.  But indeed, I would prefer to avoid doing it this way.

I can try using py-lesscpy in the new version (the old version didn't work as indicated in the PR description).
Comment 8 Robert Clausecker freebsd_committer freebsd_triage 2021-08-12 10:20:27 UTC
(In reply to Daniel Engberg from comment #6)

lesscpy 0.15.0 doesn't like the files either:

lesscpy app.less                                                                             <
E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/core.less line: 1154, Syntax Error, token: `t_comma`, `,`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/core.less line: 1186, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/core.less line: 1546, Syntax Error, token: `css_ident`, `pointer`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/core.less line: 1557, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/core.less line: 1583, Syntax Error, token: `t_bclose`, `}`E: line: 0: Unknown variable @sansFont
E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/pad.less line: 517, Syntax Error, token: `css_ident`, `pointer`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/pad-theme.less line: 40, Syntax Error, token: `t_comma`, `,`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/pad-theme.less line: 49, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/pad-theme.less line: 84, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/pad-theme.less line: 186, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/pad-theme.less line: 207, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/effects.less line: 34, Syntax Error, token: `css_ident`, `fadeIn`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/effects.less line: 34, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/effects.less line: 36, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/effects.less line: 37, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/effects.less line: 38, Syntax Error, token: `t_bclose`, `}`E: /usr/home/fuz.ports/www/writefreely/work/writefreely-0.13.1/less/effects.less line: 39, Syntax Error, token: `t_bclose`, `}`E: line: 0: Unknown variable @sansFont
E: line: 0: Unknown variable @sansFont
E: line: 0: Unknown variable @sansFont
Comment 9 Robert Clausecker freebsd_committer freebsd_triage 2021-08-16 00:45:06 UTC
(In reply to Li-Wen Hsu from comment #4)

Hi Li-Wen,

Is there anything left that prevents the port from being committed?
Comment 10 Li-Wen Hsu freebsd_committer freebsd_triage 2021-08-17 13:44:10 UTC
(In reply to Robert Clausecker from comment #5)
I suggest let's follow the latest convention for consistency across the ports tree, which is easier for others to reference.

I can do the modification, but if you don't mind to update the patch, it would be great.
Comment 11 Robert Clausecker freebsd_committer freebsd_triage 2021-08-17 13:51:36 UTC
(In reply to Li-Wen Hsu from comment #10)

Yes, please perform the modification when you make the commit.  My ports building machines are currently busy with other things, so it would take quite a while for me to get an updated patch ready.

Next time, please tell me directly that you expect me to change something instead of making vague remarks and then just waiting and doing nothing.  This saves all of us a lot of time.  And I really want to move on to other work.
Comment 12 commit-hook freebsd_committer freebsd_triage 2021-08-22 15:11:48 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6da4b7abdb3d56fa4c810acfbd09c683026edac3

commit 6da4b7abdb3d56fa4c810acfbd09c683026edac3
Author:     Robert Clausecker <fuz@fuz.su>
AuthorDate: 2021-08-22 03:08:31 +0000
Commit:     Joseph Mingrone <jrm@FreeBSD.org>
CommitDate: 2021-08-22 15:09:59 +0000

    www/writefreely: Clean, markdown-based publishing for writers

    https://writefreely.org

    PR:             257358
    Reviewed by:    lwhsu

 GIDs                                        |   2 +-
 UIDs                                        |   2 +-
 www/Makefile                                |   1 +
 www/writefreely/Makefile (new)              | 156 ++++++++++++
 www/writefreely/distinfo (new)              | 149 +++++++++++
 www/writefreely/files/patch-go.mod (new)    |  27 ++
 www/writefreely/files/patch-go.sum (new)    |  61 +++++
 www/writefreely/files/patch-gopher.go (new) |  11 +
 www/writefreely/files/patch-handle.go (new) |  11 +
 www/writefreely/files/pkg-message.in (new)  |  15 ++
 www/writefreely/files/writefreely.in (new)  |  65 +++++
 www/writefreely/pkg-descr (new)             |   5 +
 www/writefreely/pkg-plist (new)             | 374 ++++++++++++++++++++++++++++
 13 files changed, 877 insertions(+), 2 deletions(-)
Comment 13 Li-Wen Hsu freebsd_committer freebsd_triage 2021-08-23 04:24:56 UTC
(In reply to Robert Clausecker from comment #11)
I was not just waiting and doing nothing. As you said this port is huge and needs review.  It takes time and I was trying my best to make little progress step by step when I am available.

For the record, I didn't expect you to change something or making vague remarks in comment #4, it was a question during the review for the original intention. I didn't test it fully on my side so didn't have put comment. When you asked again, I can only put the current feedback.  I was still working on editing and testing, they also take time as you working on it or others.

I am very sorry for delaying your progress.  I just wanted to help your as much as I can since you ask for help for this port for a long time.  I'll be more careful and estimate my ability next time when taking your tickets. Sorry again for failing your expectation.