Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Code:
server-105:~ serveradmin$ rndc -V status
status
create task
enabling log channel
WARNING: key file (/opt/local/etc/rndc.key) exists, but using default configuration file (/opt/local/etc/rndc.conf)
create parser
get key for server
get config key list
decode base64 secret
post event
using server 127.0.0.1 (127.0.0.1#953)
create message
render message
parse message
create message
render message
parse message
version: BIND 9.18.21 (Extended Support Version) <id:cb6cff6>
running on localhost: Darwin Power Macintosh 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 16:57:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_PPC
boot time: Tue, 13 Feb 2024 14:59:01 GMT
last configured: Tue, 13 Feb 2024 14:59:02 GMT
configuration file: /opt/local/etc/named.conf
CPUs found: 1
worker threads: 1
UDP listeners per interface: 1
number of zones: 104 (99 automatic)
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is ON
recursive clients: 0/900/1000
tcp clients: 0/150
TCP high-water: 0
server is up and running
server-105:~ serveradmin$

Code:
server-105:~ serveradmin$ named -V
BIND 9.18.21 (Extended Support Version) <id:cb6cff6>
running on Darwin Power Macintosh 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 16:57:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_PPC
built by make with  '--prefix=/opt/local' '--disable-silent-rules' '--mandir=/opt/local/share/man' '--with-openssl=/opt/local' '--with-libidn2=/opt/local' '--enable-doh' '--with-dlopen=no' '--with-jemalloc=no' 'CC=/opt/local/bin/gcc-mp-7' 'CFLAGS=-pipe -Os -I/opt/local/include/LegacySupport -arch ppc' 'LDFLAGS=-L/opt/local/lib -Wl,-headerpad_max_install_names -lMacportsLegacySupport -arch ppc' 'CPPFLAGS=-I/opt/local/include -I/opt/local/include/LegacySupport'
compiled by GCC 7.5.0
compiled with OpenSSL version: OpenSSL 3.1.5 30 Jan 2024
linked to OpenSSL version: OpenSSL 3.1.5 30 Jan 2024
compiled with libuv version: 1.44.2
linked to libuv version: 1.44.2
compiled with libnghttp2 version: 1.59.0
linked to libnghttp2 version: 1.59.0
compiled with libxml2 version: 2.11.6
linked to libxml2 version: 21106
compiled with json-c version: 0.17
linked to json-c version: 0.17
compiled with zlib version: 1.3.1
linked to zlib version: 1.3.1
threads support is enabled
DNSSEC algorithms: RSASHA1 NSEC3RSASHA1 RSASHA256 RSASHA512 ECDSAP256SHA256 ECDSAP384SHA384 ED25519 ED448
DS algorithms: SHA-1 SHA-256 SHA-384
HMAC algorithms: HMAC-MD5 HMAC-SHA1 HMAC-SHA224 HMAC-SHA256 HMAC-SHA384 HMAC-SHA512
TKEY mode 2 support (Diffie-Hellman): yes
TKEY mode 3 support (GSS-API): yes

default paths:
  named configuration:  /opt/local/etc/named.conf
  rndc configuration:   /opt/local/etc/rndc.conf
  DNSSEC root key:      /opt/local/etc/bind.keys
  nsupdate session key: /opt/local/var/run/named/session.key
  named PID file:       /opt/local/var/run/named/named.pid
  named lock file:      /

Since it's a new bind9 version those syntax are invalid. Just need to tweek my config files... But it's up and running.

I also had to hack the launchclt org.isc.named.plist. Couldn't get macports to load bind9. Well, actually does run but the after a few minutes it fails, can't bind to interface. So, I made my own. /Library/LaunchDaemons/org.isc.named.plist. Also, removed Apples plist version so Server Admin doesn't load it.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>KeepAlive</key>
        <true/>
        <key>Label</key>
        <string>org.isc.named</string>
        <key>ProgramArguments</key>
        <array>
                <string>/opt/local/sbin/named</string>
                <string>-f</string>
                <string>-c</string>
                <string>/opt/local/etc/named.conf</string>
        </array>
</dict>
</plist>

Change file permissions to named:named and some are root:named. I'll need further testing.

TIA

The PR is rebased to updated version of bind9: https://github.com/macports/macports-ports/pull/22639
Hopefully gets merged soon.
 
Librenms Syslog

Looks like it's resolving.

Code:
Timestamp
Level
Hostname
Program
Message
Priority
2024-02-15 11:34:09    6    192.168.0.252    NAMED    client @0x413f934 192.168.0.13#54349 (catalog.gamepass.com): query: catalog.gamepass.com IN A + (192.168.0.252)    6
2024-02-15 11:33:57    6    192.168.0.252    NAMED    client @0x413f934 192.168.0.1#11175 (benjamin.logs.roku.com): query: benjamin.logs.roku.com IN A + (192.168.0.252)    6
2024-02-15 11:33:57    6    192.168.0.252    NAMED    client @0x41d2f34 192.168.0.12#47421 (benjamin.logs.roku.com): query: benjamin.logs.roku.com IN A + (192.168.0.252)    6
2024-02-15 11:33:54    6    192.168.0.252    NAMED    client @0x41d2f34 192.168.0.13#54349 (spoc.norton.com): query: spoc.norton.com IN A + (192.168.0.252)    6
2024-02-15 11:33:51    6    192.168.0.252    NAMED    client @0x41d2f34 192.168.0.10#37964 (cfd-v4-service-stitcher-dash-use1-1.prd.pluto.tv): query: cfd-v4-service-stitcher-dash-use1-1.prd.pluto.tv IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4314b34 192.168.0.1#36238 (outbound2j.letsencrypt.org): query: outbound2j.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4329534 192.168.0.1#31648 (outbound2i.letsencrypt.org): query: outbound2i.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4303134 192.168.0.1#28450 (outbound2g.letsencrypt.org): query: outbound2g.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x41be734 192.168.0.1#6719 (outbound2f.letsencrypt.org): query: outbound2f.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x41ce134 192.168.0.1#56687 (outbound2e.letsencrypt.org): query: outbound2e.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x41f4f34 192.168.0.1#29184 (outbound2d.letsencrypt.org): query: outbound2d.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4133534 192.168.0.1#2458 (outbound2c.letsencrypt.org): query: outbound2c.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4300734 192.168.0.1#6451 (outbound2b.letsencrypt.org): query: outbound2b.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4214734 192.168.0.1#63035 (outbound2a.letsencrypt.org): query: outbound2a.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x422e934 192.168.0.1#58747 (outbound1j.letsencrypt.org): query: outbound1j.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x421b334 192.168.0.1#48636 (outbound1i.letsencrypt.org): query: outbound1i.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x41a7f34 192.168.0.1#23979 (outbound1g.letsencrypt.org): query: outbound1g.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x415c934 192.168.0.1#10044 (outbound1f.letsencrypt.org): query: outbound1f.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4231934 192.168.0.1#18815 (outbound1e.letsencrypt.org): query: outbound1e.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x420db34 192.168.0.1#40446 (outbound1d.letsencrypt.org): query: outbound1d.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x41ecb34 192.168.0.1#63315 (outbound1c.letsencrypt.org): query: outbound1c.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4318d34 192.168.0.1#35171 (outbound1b.letsencrypt.org): query: outbound1b.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4173334 192.168.0.1#42626 (outbound1a.letsencrypt.org): query: outbound1a.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4308534 192.168.0.1#59789 (acme-v02.api.letsencrypt.org): query: acme-v02.api.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4332b34 192.168.0.1#43339 (acme-staging-v02.api.letsencrypt.org): query: acme-staging-v02.api.letsencrypt.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4198134 192.168.0.1#15806 (debian.org): query: debian.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4211d34 192.168.0.1#44875 (www.debian.org): query: www.debian.org IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x41d2f34 192.168.0.1#21670 (api.rokutime.com): query: api.rokutime.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4227934 192.168.0.1#11680 (rokutime.com): query: rokutime.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x432bf34 192.168.0.1#41698 (www.rokutime.com): query: www.rokutime.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4195734 192.168.0.1#19783 (samsung.com): query: samsung.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x413f934 192.168.0.1#62244 (www.samsung.com): query: www.samsung.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x430c734 192.168.0.1#15779 (digicert.com): query: digicert.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x4188b34 192.168.0.1#13585 (www.digicert.com): query: www.digicert.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x417d334 192.168.0.1#50447 (pandasecurity.com): query: pandasecurity.com IN A + (192.168.0.252)    6
2024-02-15 11:33:32    6    192.168.0.252    NAMED    client @0x41e8934 192.168.0.1#49675 (www.pandasecurity.com): query: www.pandasecurity.com IN A + (192.168.0.252)    6
2024-02-15 11:33:31    6    192.168.0.252    NAMED    client @0x41e8934 192.168.0.13#54349 (filedownload.lenovo.com): query: filedownload.lenovo.com IN A + (192.168.0.252)    6
2024-02-15 11:33:22    6    192.168.0.252    NAMED    client @0x41e8934 192.168.0.13#54349 (v10.events.data.microsoft.com): query: v10.events.data.microsoft.com IN A + (192.168.0.252)    6
2024-02-15 11:33:21    6    192.168.0.252    NAMED    client @0x41e8934 192.168.0.13#54349 (settings-win.data.microsoft.com): query: settings-win.data.microsoft.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x4214734 192.168.0.1#24304 (pds-init.ess.apple.com): query: pds-init.ess.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x4211d34 192.168.0.1#64014 (bag.itunes.apple.com): query: bag.itunes.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x4205734 192.168.0.1#4430 (init.gc.apple.com): query: init.gc.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x430c734 192.168.0.1#48411 (partiality.itunes.apple.com): query: partiality.itunes.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x422e934 192.168.0.1#63687 (api-glb-ause1c.smoot.apple.com): query: api-glb-ause1c.smoot.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x432bf34 192.168.0.1#34850 (fbs.smoot.apple.com): query: fbs.smoot.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x41ecb34 192.168.0.1#14786 (swallow.apple.com): query: swallow.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x41bc934 192.168.0.1#40032 (xp.apple.com): query: xp.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x4184534 192.168.0.1#33810 (init-p01md.apple.com): query: init-p01md.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x4305b34 192.168.0.1#62599 (client-api.itunes.apple.com): query: client-api.itunes.apple.com IN A + (192.168.0.252)    6
2024-02-15 11:33:20    6    192.168.0.252    NAMED    client @0x4114734 192.168.0.1#58145 (gspe79-ssl.ls.apple.com): query: gspe79-ssl.ls.apple.com IN A + (192.168.0.252)    6
 

ISC Bind 9 Configuration and Statistics

Not sure why I'm only getting QUERY only. I'll have to check if I need to add some configure options.

Code:
Server Incoming Requests by DNS Opcode
Cou…
0
50,000
100,000
QUERY
IQUERY
STATUS
NOTIFY
UPDATE
Opcode    Counter
QUERY    64,660
IQUERY    0
STATUS    0
NOTIFY    0
UPDATE    0
QUERY    64660
IQUERY    0
STATUS    0
NOTIFY    0
UPDATE    0
Total:    64660
 
Now I'm trying to implement Librenms BIND9 app to get statistics with SNMP on my mac mini 2009.
SNMP is running but I'm not getting anywhere. I followed Librenms doc's on this but still no data.

I'm getting SNMP data for everything else. So it is working.
 
Any chance to rework the build to not replace named.conf if it already exists. Also, in the PortFile I believe dlopen is no longer a configure option. Can't say in what version of BIND9 it was dropped. Also, should I be concerned that there is no named file lock file.

Could you open the ticket on https://trac.macports.org please and assign to the port maintainer (one into assign to field another into CC danielluke jmroot)?

I am unable to sort the particulars which are not specific to building for PowerPC, since I do not use this software and do not know what it should be doing. From what I understand, your current requests are not specific to PowerPC or macOS < 10.7. So this is a general problem, and should be reported to the port maintainers.
 
How would I pull the latest binary package of packages that haven't been updated in the binhost yet?
 
How would I pull the latest binary package of packages that haven't been updated in the binhost yet?

Since MacPorts does not have buildbots for PowerPC (and will never have buildbots for 10.6 ppc anyway, as it is not an officially released OS), there are no binaries, until/unless someone builds them. So the available choices are, in this case, either use whatever versions are made available on macos-powerpc.org/packages or build from source.

There are two approaches here (assuming a need to have the latest versions of everything or just different from what is provided):

1. [Recommended for developers and power-users.] Build MacPorts from source, making needed adjustments. To be able to use my packages in this case one will need to set up an overlay repo, add my certificate, set it in certificates.conf and add http address to sources.conf. Then just use pre-built ports when desired (and they are available), otherwise build from source. As an overlay repo a clone from GH can be used or provided tar archives. GH will be more up-to-date, but may have some temporary incoherencies (when something required for some port is not yet committed).

2. [Easy way.] Install whatever is suggested here. Then you can set MacPorts master as an overlay repo, for example, that will take prevalence (so you will need to build from source when MacPorts has a higher version of something). Or make your own overlay repo according to personal needs.

Finally, you could always hack an installation of anything by manually editing or overwriting a portfile (just a version, to install from my packages, or whatever desired to build instead from source).

Does this address your query?
 
Since MacPorts does not have buildbots for PowerPC (and will never have buildbots for 10.6 ppc anyway, as it is not an officially released OS), there are no binaries, until/unless someone builds them. So the available choices are, in this case, either use whatever versions are made available on macos-powerpc.org/packages or build from source.

There are two approaches here (assuming a need to have the latest versions of everything or just different from what is provided):

1. [Recommended for developers and power-users.] Build MacPorts from source, making needed adjustments. To be able to use my packages in this case one will need to set up an overlay repo, add my certificate, set it in certificates.conf and add http address to sources.conf. Then just use pre-built ports when desired (and they are available), otherwise build from source. As an overlay repo a clone from GH can be used or provided tar archives. GH will be more up-to-date, but may have some temporary incoherencies (when something required for some port is not yet committed).

2. [Easy way.] Install whatever is suggested here. Then you can set MacPorts master as an overlay repo, for example, that will take prevalence (so you will need to build from source when MacPorts has a higher version of something). Or make your own overlay repo according to personal needs.

Finally, you could always hack an installation of anything by manually editing or overwriting a portfile (just a version, to install from my packages, or whatever desired to build instead from source).

Does this address your query?
yes, thanks! smaller stuff I'm fine building from source but things like gcc take over a day to build so it's not very practical to build them from source on a PPC Mac
 
yes, thanks! smaller stuff I'm fine building from source but things like gcc take over a day to build so it's not very practical to build them from source on a PPC Mac

If it is a one-time thing, you could also manually download a package, extract it and then do the following:

– run port configure for a port in question;
– go to the workpath and find a status file there;
– open it and add missing stages up to prior to destroot, i.e. including build but not destroot (it is trivial, just add new lines and close with saving);
– place contents of extracted package into destroot;
– sudo port -v install portname.

This way you do not need to set up anything, you just trick MacPorts into assuming the port was just successfully built locally.
 
yes, thanks! smaller stuff I'm fine building from source but things like gcc take over a day to build

BTW, if a port is really wanted but not available, ping me. While I am probably not gonna try fixing something like the latest mongodb or nodejs, anything which is just a matter of compilation or reasonable fixing could be done.

so it's not very practical to build them from source on a PPC Mac

Forgot this one: do you think I am building all this on Raptor Talos?
But yeah, G4 is a pain. I can imagine how long will guile take (it is about 12 hrs on the Quad vs 4 hrs for gcc).
 
Something about 12k on 10.6 ppc :)

BTW how about adding your site to archives.conf in PowerPC Ports?
That's impressive! I've mostly just been building ports I personally have some interest in, I wouldn't quite know where to begin expanding beyond that. I'm not sure how you selected the ports in your archive, but I might use your list as a reference?

Either way, I would love to get to even half your number, but I don't think it's practical with my build setup (the fastest machine I have is the 1.67 Ghz Powerbook G4). I would either need to pickup a G5 tower on the cheap or find a good way to cross-compile everything from x86 (which, correct me if I'm wrong, is not a viable option as-is today?).

As for adding to the archives.conf, I think that's a great idea! I could also add your 10.6 repo to my archives.conf as well, but then we'd have two floating around potentially.

I like the idea of combining efforts though, seems like a logical next step. I still would love an "easy" script that we could give people to just run and have it do everything necessary to tap into our repos, but again, don't have much time right now. The classic retro computing conunrdurm lol. Let's continue this topic closer to the New Year?
 
That's impressive! I've mostly just been building ports I personally have some interest in, I wouldn't quite know where to begin expanding beyond that. I'm not sure how you selected the ports in your archive, but I might use your list as a reference?

Either way, I would love to get to even half your number, but I don't think it's practical with my build setup (the fastest machine I have is the 1.67 Ghz Powerbook G4). I would either need to pickup a G5 tower on the cheap or find a good way to cross-compile everything from x86 (which, correct me if I'm wrong, is not a viable option as-is today?).

There is no point to build everything, given we are talking about a PowerBook. From a practical point of view, it will be nice to have available fundamental toolchain components, so that people can avoid a pain of building several versions of gcc, cmake, llvm and boost. Then, a bunch of basic ports which are needed pretty much always: gnutls, glib2, openldap, git, curl, wget and alike. And then something that is expected to be of interest for most regular users: Qt4, ffmpeg, stuff like that.
Most of regular end-user software is mentioned here: https://forums.macrumors.com/thread...-currently-supported-on-macos-powerpc.2421891

As for adding to the archives.conf, I think that's a great idea! I could also add your 10.6 repo to my archives.conf as well, but then we'd have two floating around potentially.

I like the idea of combining efforts though, seems like a logical next step. I still would love an "easy" script that we could give people to just run and have it do everything necessary to tap into our repos, but again, don't have much time right now.

I have a patched MacPorts here: http://macos-powerpc.org
It is supposed to “just work” without any special knowledge, using both my portfiles where needed and pre-built ports from my package archive.

What I want is someone to do some builds for 10.5, as long as MacPorts does not provide that. (I can make a version of patched MacPorts for 10.5, but I have no resources to build everything for 10.5 in addition to 10.6.)

P. S. It won’t be a good idea to have two different versions for the same system mixed together, that will create conflicts and will be impossible to debug. But my packages are only for 10.6 ppc. So combining that with whatever for 10.4–10.5 works fine.
 
  • Like
Reactions: crimsonRE
Finally had some time to jump back into this. I hope everyone had a nice holiday and New Year. Let's get to it!

Part 1:
I've kicked off the process of upgrading all my outdated ports (which are in the hundreds) and--perhaps as to be expected--I've run into an issue. For some reason, python313 has gotten introduced as a dependency, but python313 is not installed (I have 312 installed). So MP goes to upgrade 313 and then it reports back to me that it can't because it's not installed...which is true. If I do the normal 'upgrade outdated', it will get introduced as a dependency and fail. Any idea why this might be? I didn't think it was possible to specify dependency versions in Portfiles, so I can only assume maybe the DB got corrupted or something and MP thinks 313 should be in the dep tree?

EDIT: Ok I think I answered my own question: no, it's not possible to specify versions of specific ports, but if the port name itself is versioned then it's obviously fine. Silly me. So something I upgraded wants to install Python313, now I need to figure out why it won't build.

EDIT EDIT: Ok, you're just too on top of your game barracuda :). I see you already have a ticket open for this, the suggestion in the comments worked. Everything should be updated in a few days.

Anyhow, I've done some hackery in the short term to get around that and am on day three of build time for the upgrades, probably will be another two days before it's done. After that, though, I will still have a broken system as any of the ports that "thought" 313 was required haven't been upgraded. I should note 313 fails to build on my machine, otherwise I might have just shrugged it off and carried on.


Part 2:
P. S. It won’t be a good idea to have two different versions for the same system mixed together, that will create conflicts and will be impossible to debug. But my packages are only for 10.6 ppc. So combining that with whatever for 10.4–10.5 works fine.

I was thinking about this more from a version control perspective so we don't have multiple archives.conf, but given the scale we operate at I think you're right it's fine. It would be nice to combine these in future perhaps and work from the same sources.conf if you're up for it.

I am working on a build script I can add as a cron job to run weekly, keeping these ports up to date without going months in between upgrades. I have the basics cobbled together to fix the GCC compiler logic (thank you again for that) after a 'port sync', but I am struggling on how to do proper error handling. From what I've read around the 'net, MP doesn't really have a good solution for continuing an upgrade after a particular port fails, even if that port isn't a dependency for anything else. Here's an example of what I'm talking about: https://apple.stackexchange.com/questions/336753/macports-install-non-dependencies-past-error.

I'm thinking I would need a way to parse the build log for failures, then add the failed port as an exclusion and re-run the upgrade (e.g. port upgrade outdated and not {failed port}) recursively. This would allow me to keep (hopefully most) ports up to date without manual intervention, and then come back and fix the failures when I have time.

Happy New Year and viva la PPC in 2025.
 
Last edited:
I see you already have a ticket open for this, the suggestion in the comments worked. Everything should be updated in a few days.

Here is the fix for Python 3.13, I believe: https://github.com/macos-powerpc/po.../python314-devel/files/patch-posixmodule.diff (works for both versions).

P. S. There are some major changes due to switching to 10.6.8, and PPCPorts did not catch up fully yet. I need to move all local changes to the branch and reupload new dists. So automatically it will not work right now, but by hand it should.
 
  • Like
Reactions: doctor_dog
BTW, if a port is really wanted but not available, ping me. While I am probably not gonna try fixing something like the latest mongodb or nodejs, anything which is just a matter of compilation or reasonable fixing could be done.



Forgot this one: do you think I am building all this on Raptor Talos?
But yeah, G4 is a pain. I can imagine how long will guile take (it is about 12 hrs on the Quad vs 4 hrs for gcc).
If the quad is 4 hours for GCC I don’t even want to know how long my PB G4 1.67 is going to take. We’re up to hour 4 building gcc10

I’ve never used Macports till today but I’m super interested in the concept. Makes my head spin reading through this thread though LOL

Also are you the same person that created pyobd? Was looking to run this once python3 built, thought it was funny the name was the similar
 
  • Like
Reactions: barracuda156
If the quad is 4 hours for GCC I don’t even want to know how long my PB G4 1.67 is going to take. We’re up to hour 4 building gcc10

I think I never tried to build anything beyond gcc7 on a PowerBook, and yeah, I can imagine it is slow. But the developer who made a PR to move old systems from gcc7 to gcc14 in MacPorts recently ran builds on iBook G4, so it is certainly possible.
But gcc is not a huge thing to build after all. Mercury takes about 8 or 9 hrs on the Quad, guile about 20 hrs. But of stuff which is required gcc is the toughest.

I’ve never used Macports till today but I’m super interested in the concept. Makes my head spin reading through this thread though LOL

If you switch to 10.6.8, life is easier, since a lot of stuff is available pre-built (of course, assuming you trust pre-built stuff). Probably way more than anyone gonna actually use, ever LOL

Also are you the same person that created pyobd? Was looking to run this once python3 built, thought it was funny the name was the similar

No, that’s unrelated to me.
 
If the quad is 4 hours for GCC I don’t even want to know how long my PB G4 1.67 is going to take. We’re up to hour 4 building gcc10

I’ve never used Macports till today but I’m super interested in the concept. Makes my head spin reading through this thread though LOL

Also are you the same person that created pyobd? Was looking to run this once python3 built, thought it was funny the name was the similar
I just upgraded everything in my 10.5 repo (what this thread is about), it took about 6.5 days of build time on PB 1.67. Not to steal barracuda's thunder, you can also just download the pre-built compilers and libraries from this repo if you are running 10.5 as well. If you are on 10.6, use @barracuda156's 10.6 pre-built repo. I've got gcc7, gcc10-bootstrap, gcc11, gcc12, and the latest gcc 14.2 available. Hope this helps, let us know if you have any issues. And no, I'm not involved in pyobd either.
 
Not to steal barracuda's thunder, you can also just download the pre-built compilers and libraries from this repo if you are running 10.5 as well.

You probably know, but for others: I do not provide anything for 10.5, and not planning to (at least unless ppc64 is fixed by someone, and that is not in sight). So for 10.5 my repo is not an option for pre-built stuff (using port sources is possible, but not recommended, since I do not test on 10.5, so anything may be broken, and no support is guaranteed in that case).

(If you or someone will be interested to maintain ports for 10.5 in macos-powerpc repo, please, contributions are welcome.)
 
  • Like
Reactions: Project Alice
Quick update, I upgraded all packages to latest as of this evening and put fresh ports up on the archive server. It's up to 537 packages now (list attached), more than I would have guessed. I'll try to update this more frequently going forward. If there's a port you want that's not on here send me a DM and I'll give it a go.
Not sure if the offer is still open, but libgcc14 would be greatly appreciated. Trying to install py310-numpy which unfortunately relies on that, seems all other dependencies are there though(looking at compile times, libgcc14 looks like a nightmare for my G4)

EDIT: didn't realize you're using a G4 1.67 as well! If you happen to have the package available/can upload it, otherwise I can build it. Strongly considering snagging a G5 now LOL
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.