Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
I assume something like this should work to wrap each patch in? #if defined(MAC_OS_X_VERSION_10_4)

Could you open an issue or PR draft? Let move all technicalities there. What you want to use in such cases are macros from /usr/AvailabilityMacros.h.

It's in better shape than python 3.9 on Macports in my experience.

MacPorts started throwing py39-* ports out, so that is not a sustainable option anyway.

Unfortunate about the port.pkg and port.mpkg. I will try building curl in opt/bootstrap on the other Powerbook with a 2.10.7 compiled from source at some point. Then I can distribute that curl.
I would like to distribute the base at some point, but it is more important to distribute modern curl, imo.

I agree, since it is obviously much faster to build the base than to bootstrap curl for it.

That is one of the killer features of PowerPC ports - fetching source by hand is annoying at best. I assume to distribute the base I do sudo port mdmg Macports?

I always used pkg and just archived that. Either will do (provided it works on 10.4).

P.S. If anyone here buys ebooks from Kobo and you want to read them on your mac, check out kobodl. It even has a functional GUI.

We should work on making a sensible list of working apps, since I think nobody is aware of what we got working (and there are a lot of ports which do not exist in MacPorts at all).
 
Shell written in OCaml:

gufo.png
 
I have uploaded my custom PPCPorts install which includes approx. 1500 prebuilt ports for PPC OS X 10.5.8 Leopard (32bit only).

Instructions:

Mount the custom install dmg and double click the provided install.command script - enter your user password when prompted and wait till the process is completed. (at least 20 Gigs of harddisk space are required)

If you already have MacPorts installed you might want to consider backing up the /opt directory on your boot drive before proceeding with the install.

OK @thedoctor45x, I downloaded it, and installed using the install.command script provided. It ran to completion, apparently successfully - there is no feedback at all.

I restarted the machine when it finished and immediately tested out X11. Well... the original Sorbet install had X11; after this install, I tried the xquartz that it includes. I have gotten erratic results. Sometimes it starts, sometimes it doesn't. Sometimes it comes up on display 0:1, sometimes on 0:0. GIMP, as a heavy X11 app, crashed repeatedly, and then suddenly worked.

Further, hunting around, I have found that among the apps that aren't in the 1500 included are things like Abiword, gnumeric, digiKam, Kate, vlc and so on. Clearly, I would like to add some other apps to the 1500 included! Is there a way to do that? I checked, but there is no PPCPorts program, and no apparent way to expand the offering.

BTW, I did try to follow @barracuda156's instructions for removing the old X11 first, but they did not work at all. They seem to assume the presence of XQuartz, and it was not there to start with. What was there in the stock Sorbet install is Apple X11 2.06 or some such - I can't query it from here.

Two questions then:

1/ Is there a way to add programs like abiword, gnumeric, digiKam and VLC to the available set, or do I have to delete this prebuilt archive and install PPCPorts from scratch?

2/ Do I need to do something to delete Sorbet's stock X11, and if so, what is it?

Thanks,
Michael
 
I restarted the machine when it finished and immediately tested out X11. Well... the original Sorbet install had X11; after this install, I tried the xquartz that it includes.

There is nothing preventing you to switch to xorg-server-legacy (or switch between these two), and for 10.5 xorg-server-legacy installs the same way as in MacPorts, so you should get identical results. These can be co-installed, just cannot be active simultaneously.
xquartz works fine on 10.6, provided there is no alternative X11 in system paths. There is no claim that it gonna work better on 10.5 than xorg-server-legacy, since that wasn’t tested much.

I have gotten erratic results. Sometimes it starts, sometimes it doesn't. Sometimes it comes up on display 0:1, sometimes on 0:0. GIMP, as a heavy X11 app, crashed repeatedly, and then suddenly worked.

GIMP is semi-broken on 32-bit, AFAIK, and the issue has nothing to do with X11. You may just not trigger it one time but trigger another.

Further, hunting around, I have found that among the apps that aren't in the 1500 included are things like Abiword, gnumeric, digiKam, Kate, vlc and so on. Clearly, I would like to add some other apps to the 1500 included! Is there a way to do that? I checked, but there is no PPCPorts program, and no apparent way to expand the offering.

I don’t know how it was done, but it is relatively safe to simply move the whole of /opt/local to a new system, it should work fine, as long as a) all ports are deactivated and b) there are no left-over build artifacts. So run `sudo port deactivate active`, delete anything in /opt/local/var/macports/build (and perhaps also distfiles there to save space), and that can be copied to another installation. I have two 10.6.8 now in parallel, and build everything on one of them; when I need testing on the other, I delete /opt/local there and copy from the first one. It works.

BTW, I did try to follow @barracuda156's instructions for removing the old X11 first, but they did not work at all. They seem to assume the presence of XQuartz, and it was not there to start with.

xorg-server-1.8, xorg-server-legacy and xquartz are drop-in replacements. Nothing assumes specifically my xquartz, nothing links to it, X server is a runtime dependency, so if it does not work well on your system, just use any other alternative. What is important is that system paths are clean from old X11.

It may be required to start dbus session (without sudo) and set GSK_RENDERER=cairo (depending on the app you use, but can be done generally). Some apps will crash without that (not specific to my ports or powerpc, happens also on x86/arm64).

What was there in the stock Sorbet install is Apple X11 2.06 or some such - I can't query it from here.

Two questions then:

1/ Is there a way to add programs like abiword, gnumeric, digiKam and VLC to the available set, or do I have to delete this prebuilt archive and install PPCPorts from scratch?

If that was done with `port mpkg` then probably no, it cannot be expanded, since there is no database, and the base will not see those as ports. If everything was copied from a functional installation (see above, and use `sudo cp -pRP` or `ditto`), you should be able to resume from what you already have.

2/ Do I need to do something to delete Sorbet's stock X11, and if so, what is it?

Follow this: https://www.xquartz.org/FAQs.html (just copy-paste a few commands in terminal).
 
Sorry for my absence. I wasn't able to secure a Mac Pro 5,1 for a (reasonable) price. And the others were too new to be useful.

I saw @mac57mac57's G5 Quad air cooling guide and purchased a set of coolers for the three G5 Quads currently in my workshop. Once my landlord adds more electrical outlets I can probably bring at least two into service as build bots (distcc anyone?)

Additionally: would some (HTTP, presumably, for better compatibility?) hosting be of interest? cursedsilicon (dot) net has a decent amount of disk space available and is connected to a 500 megabit pipe via OVH

EDIT: Missed a word. That's what I get for commenting before morning coffee
 
Last edited:
  • Love
Reactions: barracuda156
Sorry for my absence. I wasn't able to secure a Mac Pro 5,1 for a (reasonable) price. And the others were too new to be useful.

TBH I am not sure using an Intel machine to build everything for PowerPC will be a great idea. It has minor advantages with ports using Xcode, but far more, and more serious, disadvantages (as compared to native builds). In particular, several compilers do not work at all in Rosetta, and some build suboptimally (OCaml, for example).

I saw @mac57mac57's G5 Quad air cooling guide and purchased a set of coolers for the three G5 Quads currently in my workshop. Once my landlord adds more electrical outlets I can probably bring at least two into service as build bots (distcc anyone?)

Build bots will be very useful. Or/and a machine accessible remotely (doesn’t have to run 24/7), so that heavy stuff like compilers and JDK can be done there, and something which requires multiple rebuilds to fix.

Additionally: would some (HTTP, presumably, for better compatibility?) hosting be of interest? cursedsilicon (dot) net has a decent amount of disk space available and is connected to a 500 megabit pipe via OVH

If people actually use pre-built packages, then yes. Then multiple servers can be set, and a user can choose those in order of preference what works better for a given geography.
http and rsync will be nice, since those are protocols which MacPorts can use.
 
I have finally (mostly) sorted out OCaml ports and added a number of new ones.

What may be of interest to end-users:

Unison file syncronizer

mldonkey eMule client

GitLab CLI (install as `ocaml-lab`)

docfd document finder, sort of interactive grep

gufo, a shell in OCaml

aws-s3, library and CLI to access Amazon S3 (to install executable you need `ocaml-aws-s3-lwt` or/and `ocaml-aws-s3-async`)

P. S. In plans are Rocq Prover and Irmin.

@Forest Expertise I forgot, was it you who wondered why I ”prefer developer ports and not something for users”? My memory is poor. Anyway, here is the explanation: a dependency tree (just its OCaml part) for gitlab client:
Code:
  ocaml-cmdliner
  ocaml-cohttp-lwt-unix
    ocaml-http
    ocaml-logs
      ocaml-topkg
        ocaml-ocamlbuild
        opam
      ocaml-fmt
      ocaml-js_of_ocaml-compiler
        ocaml-ppxlib
          ocaml-compiler-libs
          ocaml-ppx_derivers
          ocaml-sexplib0
          ocaml-stdlib-shims
        ocaml-menhir
          ocaml-menhirSdk
          ocaml-menhirLib
          ocaml-coq-menhirlib
        ocaml-sedlex
          ocaml-gen
            ocaml-seq
        ocaml-yojson
      ocaml-lwt
        ocaml-cppo
        ocaml-dune-configurator
          ocaml-csexp
        ocaml-ocplib-endian
    ocaml-ppx_sexp_conv
      ocaml-base
    ocaml-cohttp
      ocaml-base64
      ocaml-re
        ocaml-js_of_ocaml
        ocaml-ounit
          ocaml-ounit2
        ocaml-ppx_expect
          ocaml-ppx_here
          ocaml-ppx_inline_test
            ocaml-time_now
              ocaml-jane-street-headers
              ocaml-jst-config
                ocaml-ppx_assert
                  ocaml-ppx_cold
                  ocaml-ppx_compare
              ocaml-ppx_base
                ocaml-ppx_enumerate
                ocaml-ppx_globalize
                ocaml-ppx_hash
              ocaml-ppx_optcomp
                ocaml-stdio
      ocaml-stringext
      ocaml-uri
        ocaml-angstrom
          ocaml-bigstringaf
      ocaml-uri-sexp
    ocaml-cohttp-lwt
      ocaml-ipaddr
        ocaml-domain-name
        ocaml-macaddr
    ocaml-conduit-lwt
      ocaml-conduit
        ocaml-astring
        ocaml-ipaddr-sexp
    ocaml-conduit-lwt-unix
      ocaml-ca-certs
        ocaml-bos
          ocaml-fpath
          ocaml-rresult
        ocaml-digestif
          ocaml-eqaf
        ocaml-mirage-crypto
        ocaml-ohex
        ocaml-ptime
        ocaml-x509
          ocaml-asn1-combinators
          ocaml-gmap
          ocaml-kdf
          ocaml-mirage-crypto-ec
            ocaml-mirage-crypto-rng
              ocaml-duration
          ocaml-mirage-crypto-pk
            ocaml-zarith
      ocaml-lwt_ssl
        ocaml-ssl
      ocaml-tls-lwt
        ocaml-tls
    ocaml-magic-mime
  ocaml-gitlab-unix
    ocaml-gitlab
      ocaml-atdgen
        ocaml-atd
          ocaml-easy-format
        ocaml-atdgen-runtime
          ocaml-biniou
            ocaml-camlp-streams
      ocaml-ISO8601
  ocaml-otoml
    ocaml-uutf
 
I have finally (mostly) sorted out OCaml ports and added a number of new ones.

What may be of interest to end-users:

Unison file syncronizer

mldonkey eMule client

GitLab CLI (install as `ocaml-lab`)

docfd document finder, sort of interactive grep

gufo, a shell in OCaml

aws-s3, library and CLI to access Amazon S3 (to install executable you need `ocaml-aws-s3-lwt` or/and `ocaml-aws-s3-async`)

P. S. In plans are Rocq Prover and Irmin.

@Forest Expertise I forgot, was it you who wondered why I ”prefer developer ports and not something for users”? My memory is poor. Anyway, here is the explanation: a dependency tree (just its OCaml part) for gitlab client:
Code:
  ocaml-cmdliner
  ocaml-cohttp-lwt-unix
    ocaml-http
    ocaml-logs
      ocaml-topkg
        ocaml-ocamlbuild
        opam
      ocaml-fmt
      ocaml-js_of_ocaml-compiler
        ocaml-ppxlib
          ocaml-compiler-libs
          ocaml-ppx_derivers
          ocaml-sexplib0
          ocaml-stdlib-shims
        ocaml-menhir
          ocaml-menhirSdk
          ocaml-menhirLib
          ocaml-coq-menhirlib
        ocaml-sedlex
          ocaml-gen
            ocaml-seq
        ocaml-yojson
      ocaml-lwt
        ocaml-cppo
        ocaml-dune-configurator
          ocaml-csexp
        ocaml-ocplib-endian
    ocaml-ppx_sexp_conv
      ocaml-base
    ocaml-cohttp
      ocaml-base64
      ocaml-re
        ocaml-js_of_ocaml
        ocaml-ounit
          ocaml-ounit2
        ocaml-ppx_expect
          ocaml-ppx_here
          ocaml-ppx_inline_test
            ocaml-time_now
              ocaml-jane-street-headers
              ocaml-jst-config
                ocaml-ppx_assert
                  ocaml-ppx_cold
                  ocaml-ppx_compare
              ocaml-ppx_base
                ocaml-ppx_enumerate
                ocaml-ppx_globalize
                ocaml-ppx_hash
              ocaml-ppx_optcomp
                ocaml-stdio
      ocaml-stringext
      ocaml-uri
        ocaml-angstrom
          ocaml-bigstringaf
      ocaml-uri-sexp
    ocaml-cohttp-lwt
      ocaml-ipaddr
        ocaml-domain-name
        ocaml-macaddr
    ocaml-conduit-lwt
      ocaml-conduit
        ocaml-astring
        ocaml-ipaddr-sexp
    ocaml-conduit-lwt-unix
      ocaml-ca-certs
        ocaml-bos
          ocaml-fpath
          ocaml-rresult
        ocaml-digestif
          ocaml-eqaf
        ocaml-mirage-crypto
        ocaml-ohex
        ocaml-ptime
        ocaml-x509
          ocaml-asn1-combinators
          ocaml-gmap
          ocaml-kdf
          ocaml-mirage-crypto-ec
            ocaml-mirage-crypto-rng
              ocaml-duration
          ocaml-mirage-crypto-pk
            ocaml-zarith
      ocaml-lwt_ssl
        ocaml-ssl
      ocaml-tls-lwt
        ocaml-tls
    ocaml-magic-mime
  ocaml-gitlab-unix
    ocaml-gitlab
      ocaml-atdgen
        ocaml-atd
          ocaml-easy-format
        ocaml-atdgen-runtime
          ocaml-biniou
            ocaml-camlp-streams
      ocaml-ISO8601
  ocaml-otoml
    ocaml-uutf
No, closest I can find in my post history is when I said I would focus on stuff for end users. That isn't meant to tell anyone else what they should do. It's just meant to convey what kind of contributions I am looking to make. I am well aware that isn't possible without an impressive set of dev tools. Luckily, you do a great job providing working dev tools so that I can just search through pip, gems, or github to find cool stuff ;)
My post history is public and not long if anyone wants to check.
Edit: Or maybe this is what you are thinking of "I am more concerned with end user software, while it appears most people who submit stats to Macports prioritize development tools."
That's just an observation. I install a lot more end user software than most people who submit stats to Macports.
 
Last edited:
Edit: Or maybe this is what you are thinking of "I am more concerned with end user software, while it appears most people who submit stats to Macports prioritize development tools."
That's just an observation. I install a lot more end user software than most people who submit stats to Macports.

Ah yeah, that’s it. I just wanted to say that we do not sabotage end users LOL, it is just a boring necessity to have a gazillion of intermediate packages to build something useful practically. (Though occasionally some stuff may be added just “because we can [make it work for powerpc]” without anything particular in mind.)
 
Build bots will be very useful. Or/and a machine accessible remotely (doesn’t have to run 24/7), so that heavy stuff like compilers and JDK can be done there, and something which requires multiple rebuilds to fix.

I can probably set up a Wireguard link to enable VPN access. Then both G5 Quads can sit on their own VLAN, that way they can be accessible over SSH and VNC and such. If they *crash* they'll need to be rebooted locally (unless there's some kind of Watchdog that can auto-reboot a G5 remotely?) but (hopefully) with air cooling they'll be much more *stable*

If people actually use pre-built packages, then yes. Then multiple servers can be set, and a user can choose those in order of preference what works better for a given geography.

I'm happy to host either (or both) source and binaries. There's at least a couple terabytes of space free on the OVH server
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.