Remember our little conversation about the whats min Ram specs are for modern MacOS'?
Just updated my Macbook 6,1 late 2009 using 4GB to Sonoma 14.3 using 1.4.0. It works reasonably well with performing mundane things like browsing the web, writing emails, notes calendar, printer server on the local network.
The actual bottle neck rather seems to be the processor and the 256mb GPU ram, given the numerous (sometimes unnecessary?) tasks running in the back ground. Swap is around 250mb after a few hours moderate usage while having 1 or 2 apps open.
Could you use it as a daily driver? Perhaps. Keyboard and Bluetooth are also working again with the latest OCLPn. That really begs the question: How often is hardware update actually necessary? I got too many iPhones, iPads and Macs lying around which are still working (well) with default OS. Thats a shame.
I have 17" MacBook Pro 5,2 with 8 GB RAM, C2D at 3.06 GHz, and a Samsung SSD.
It is a dual graphic card model, a 256 MB NVIDIA GE force 9400M (like yours) and a 500 MB NVIDIA GE for 9600M.
It run 14.3 without issues, at speeds compatible with "daily driver use", until I applied Sonoma 14.4 beta1, and then beta2 updates, just to push the envelope. It boots into login screen on beta2, but keyboard and trackpad are not functional, hence, I can't login to see if it actually would function. Hoping an OCLP version will help there, eventually.
The SSD is divided into 4 volumes, Sonoma, Ventura, Monterey and Catalina. The latter three are fully functional.
While I mainly use the MacBook Pro 5,2 as a "test bed", to see how long I can upgrade OS via OCLP, most applications run at speeds compatible with daily use. That includes GIMP (some versions still run on non-meta machines, albeit only at casual speeds), Libre Office and most Apple productivity application, with exception of Maps which requires metal capability.
I agree that many older Apple computers would function just fine with modern software, although I do recognize that there are limits dictated by the price of effort needed to maintain software compatibility, security requirements, etc.