Created attachment 227925 [details] scratch-1.4.0.7.shar Scratch is graphical programming language designed for learning.
Thanks for the submission. There are some issues in the port though. Would you mind running portclippy and portlint -AC? Some variables are out of order, MKDIR already includes -p, etc. Also, I'm not familiar with Scratch. Is scratch something different from scratch the offline editor? Is there an offline editor too? Just in case we would like to rename the port to something like ScractchOfflineEditor. Cheers.
(In reply to Fernando Apesteguía from comment #1) https://en.wikipedia.org/wiki/Scratch_(programming_language)#History This looks to be a port for Scratch 1.x, which uses squeak. Scratch 2.x came out in 2013 and uses ActionScript. Scratch 3.x came out in 2019 and uses JavaScript.
(In reply to Steve Wills from comment #2) In that case, I think we should go for the scratch 3 version. Can the OP update the patch?
Created attachment 227942 [details] scratch-1.4.0.7p1.shar The p1 version of Port changes DEPENDS to RUN_DEPENDS and removes -p option from ${MKDIR} in Makefile
Also bug 216811
(In reply to Fernando Apesteguía from comment #3) I fixed some things in Makefile; No, I cannot make port of scratch 3 (nobody can), because it's html based. scratch 3 is meant to run in web browser, the "offline client" is useless. It's just something like chrome app window. It cannot even export projects to website. Scratch 2 in other way depends on adobe air, which cannot be installed either for linux or freebsd. 1.4.0.7 is the last version of scratch that uses squeak (and that makes it platform-independent). You may say it's old, but even those days many Linux distros have scratch 1.4 in repositories.
(In reply to Graham Perrin from comment #5) But that one is broken
Created attachment 227947 [details] patch with some more refinements to pet portlint and portclippy In the meantime I passed the time by satisfying portlint and portfmt with a more reworked patch ;) One more suggestion here: Bug #216811 was released much earlier and also contains some more details. Wouldn't it be good to think about merging both approaches and agree who should be the maintainer of the port?
(In reply to Rainer Hurling from comment #8) As a general rule, the newer PR should be closed as a duplicate of the older PR unless the new has more details or is more advanced than the old one.
(In reply to Graham Perrin from comment #5) I am reporter of bug 216811. I think this patch isn't include plugins. So some function isn't work. Let's work together on the bug 216811 tree?
The lang/scratch is commited at bug 216811. So please close this PR.