Re: [racket-users] Re: maintainer for alpine linux racket package (cloud containers and handhelds)

2018-11-14 Thread Tony Garnock-Jones
Here are the packages as built by the scripts I linked previously:

~/src/racket-alpine/packages/racket-alpine/x86_64$ ls -la
total 77392
drwxr-xr-x 2 tonyg tonyg 4096 Aug 29 13:27 .
drwxr-xr-x 3 tonyg tonyg 4096 Aug 29 13:08 ..
-rw-r--r-- 1 tonyg tonyg 1319 Aug 29 13:27 APKINDEX.tar.gz
-rw-r--r-- 1 tonyg tonyg 66637726 Aug 29 13:27 racket-7.0-r0.apk
-rw-r--r-- 1 tonyg tonyg  1632592 Aug 29 13:27 racket-dev-7.0-r0.apk
-rw-r--r-- 1 tonyg tonyg 6706 Aug 29 13:27 racket-doc-7.0-r0.apk
-rw-r--r-- 1 tonyg tonyg  9324919 Aug 29 13:08 racket-minimal-7.0-r0.apk
-rw-r--r-- 1 tonyg tonyg  1625139 Aug 29 13:08 racket-minimal-dev-7.0-r0.apk
-rw-r--r-- 1 tonyg tonyg 2714 Aug 29 13:08 racket-minimal-doc-7.0-r0.apk

The "full" package is about 70MB. That includes DrRacket. That "doc"
package looks pretty broken. I suspect it's a bunch of misc readmes etc; I
don't know if the main documentation is included in the "full" package.

I just tried the following, and it worked kind of ok:

   - docker run -it --rm -v /tmp/.X11-unix:/tmp/.X11-unix racket-alpine
   /bin/sh
   - inside the container,
  - apk add gtk+ ttf-freefont
  - export DISPLAY=:0.0
  - drracket

which makes me think adding another Dockerfile for quickly spinning up a
fresh DrRacket instance might be a worthwhile thing to do as well. Hmm.

Tony


On Wed, 14 Nov 2018 at 12:20, Neil Van Dyke  wrote:

> For the handhelds, especially in this phase when everyone using it will
> be a developer... probably most of which devices will have at least 16GB
> of flash and 2GB of RAM... I think upstream's ~600MB installed default
> Racket contents (including DrRacket and manuals and everything) is a
> good match.  (Later, we might need a minimal runtime, such as to target
> lower-spec devices like smartwatches, or to deploy
> less-programmer-friendly apps, but that seems easy, if we get to that
> point.)
>
> For people who are using Alpine right now, on non-handhelds, because
> they need penny-pinching like BusyBox... maybe they need even more
> minimal contents option than upstream Racket-Minimal.  I don't know that
> that's specific to Alpine (there's also OpenWrt, future containers of
> (ahem) Blue Tie Enterprise Linux, and others).  So maybe this can be
> solved in the same way for all of those, someday, working with
> upstream.  Until then, Racket-Minimal contents is a great start.
>
> A volunteer who wants to join the Alpine Linux guild, learn their
> rituals and secret handshakes, and represent Racket well, would do a
> great service.
>
>
> Tony Garnock-Jones wrote on 11/14/18 6:19 AM:
> > I recently experimented with Alpine packages for Racket 7.x, minimal
> > and full, but ran out of steam when I realised I didn't know whether
> > "minimal" and "full" even make sense in context. Is there a need for
> > an "ultra minimal"?
> >
> > Anyway, APKBUILD etc (partially cribbed from Jakub Jirutka's Racket
> > 6.12 APKBUILD) available here: https://github.com/tonyg/racket-alpine
> >
> > There's also a couple of Dockerfiles for dockerized alpine-based Racket
> 7.
> >
> > I haven't concentrated on the DrRacket/graphical portions at all.
> >
> > Tony
> >
> > On Wednesday, November 14, 2018 at 3:30:27 AM UTC, Neil Van Dyke wrote:
> >
> > Alpine Linux is now popular for "cloud containers", and is also the
> > basis for mainline Linux for smartphones and tablets.
> >
> > An official Alpine package with the latest DrRacket would be a big
> > win
> > to help people start playing with DrRacket on some handhelds, without
> > the agony of building it themselves on their handheld (or trying to
> > cross-compile it on their own desktops).
> >
> > Once we have DrRacket packages, I'd like to have people use Racket to
> > build out apps and user interface for these open source handhelds,
> > eventually replacing most of the C and C++ code.
> >
> > So... Does anyone want to join Alpine package maintainer guild, to
> > maintain Alpine package(s) for the latest Racket releases?
> >
> > For 6.12, the necessary patches are small, the same as for the
> > stripped-down Racket-Minimal package (you don't need or want
> > "paxmark.patch"):
> >
> >
> https://git.alpinelinux.org/cgit/aports/tree/testing/racket?id=de35722a3295116d8e64305c01a1168932b56f26
> > <
> https://git.alpinelinux.org/cgit/aports/tree/testing/racket?id=de35722a3295116d8e64305c01a1168932b56f26
> >
> >
> >
> > I've successfully built and run DrRacket on Alpine in the normal
> > Racket
> > way on the devices, using only the above MUSL, LibreSSL, and Makefile
> > bash-ism patches.  It was enough of a headache that people will need
> > pre-compiled Alpine packages (they'll have enough headache getting a
> > minimal Linux install on a handheld, at this early point).  I want to
> > shift that compute to Alpine's presumably more powerful build
> > servers,
> > and shift any remaining headache to a heroic Racke

Re: [racket-users] Re: maintainer for alpine linux racket package (cloud containers and handhelds)

2018-11-14 Thread Neil Van Dyke
For the handhelds, especially in this phase when everyone using it will 
be a developer... probably most of which devices will have at least 16GB 
of flash and 2GB of RAM... I think upstream's ~600MB installed default 
Racket contents (including DrRacket and manuals and everything) is a 
good match.  (Later, we might need a minimal runtime, such as to target 
lower-spec devices like smartwatches, or to deploy 
less-programmer-friendly apps, but that seems easy, if we get to that 
point.)


For people who are using Alpine right now, on non-handhelds, because 
they need penny-pinching like BusyBox... maybe they need even more 
minimal contents option than upstream Racket-Minimal.  I don't know that 
that's specific to Alpine (there's also OpenWrt, future containers of 
(ahem) Blue Tie Enterprise Linux, and others).  So maybe this can be 
solved in the same way for all of those, someday, working with 
upstream.  Until then, Racket-Minimal contents is a great start.


A volunteer who wants to join the Alpine Linux guild, learn their 
rituals and secret handshakes, and represent Racket well, would do a 
great service.



Tony Garnock-Jones wrote on 11/14/18 6:19 AM:
I recently experimented with Alpine packages for Racket 7.x, minimal 
and full, but ran out of steam when I realised I didn't know whether 
"minimal" and "full" even make sense in context. Is there a need for 
an "ultra minimal"?


Anyway, APKBUILD etc (partially cribbed from Jakub Jirutka's Racket 
6.12 APKBUILD) available here: https://github.com/tonyg/racket-alpine


There's also a couple of Dockerfiles for dockerized alpine-based Racket 7.

I haven't concentrated on the DrRacket/graphical portions at all.

Tony

On Wednesday, November 14, 2018 at 3:30:27 AM UTC, Neil Van Dyke wrote:

Alpine Linux is now popular for "cloud containers", and is also the
basis for mainline Linux for smartphones and tablets.

An official Alpine package with the latest DrRacket would be a big
win
to help people start playing with DrRacket on some handhelds, without
the agony of building it themselves on their handheld (or trying to
cross-compile it on their own desktops).

Once we have DrRacket packages, I'd like to have people use Racket to
build out apps and user interface for these open source handhelds,
eventually replacing most of the C and C++ code.

So... Does anyone want to join Alpine package maintainer guild, to
maintain Alpine package(s) for the latest Racket releases?

For 6.12, the necessary patches are small, the same as for the
stripped-down Racket-Minimal package (you don't need or want
"paxmark.patch"):


https://git.alpinelinux.org/cgit/aports/tree/testing/racket?id=de35722a3295116d8e64305c01a1168932b56f26




I've successfully built and run DrRacket on Alpine in the normal
Racket
way on the devices, using only the above MUSL, LibreSSL, and Makefile
bash-ism patches.  It was enough of a headache that people will need
pre-compiled Alpine packages (they'll have enough headache getting a
minimal Linux install on a handheld, at this early point).  I want to
shift that compute to Alpine's presumably more powerful build
servers,
and shift any remaining headache to a heroic Racketeer

https://en.wikipedia.org/wiki/Alpine_linux

https://en.wikipedia.org/wiki/PostmarketOS

https://www.neilvandyke.org/postmarketos/




--
You received this message because you are subscribed to the Google Groups "Racket 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.