Commit Graph
3999 Commits
Author SHA1 Message Date
Bananymous 59077f0f72 Kernel: Allow pinning multiple memory regions
One port allocated memory page by page and did a big write on the final
multi-region buffer. Now we allow this!
2026-08-25 15:33:56 +03:00
Bananymous 645150039a BuildSystem: Add script to package all ports 2026-08-25 15:32:54 +03:00
Bananymous 8a5557f4ae BuildSystem: Cleanup port install script with packaging 2026-08-25 15:32:54 +03:00
Bananymous b20a1640b2 ports: Fix packaging of bunch of ports 2026-08-25 15:32:54 +03:00
Bananymous aca9f459ed ports: Fix compilation of bunch of ports 2026-08-25 15:32:54 +03:00
Bananymous ef469ab043 ports: Update python 3.13.3->3.14.7 2026-08-25 15:32:54 +03:00
Bananymous d2f4137894 ports: Add missing libXxf86vm port 2026-08-25 15:32:54 +03:00
Bananymous 94b2105cd6 LibC: Add duplocale stub 2026-08-25 15:32:54 +03:00
Bananymous 1d618ea39d ports: Remove circular harfbuzz/freetype/cairo dependency
I don't even know why I was rebuilding cairo and freetype can be just
configured with dynamic harfbuzz
2026-08-25 15:32:54 +03:00
Bananymous c6694f6a28 ports: Create files in /etc/profile.d instead of modifying shellrc 2026-08-25 03:52:52 +03:00
Bananymous 631fec7c4d init/Shell: init now spawns a login shell which sources /etc/profile 2026-08-25 03:52:52 +03:00
Bananymous 68c741d54d BuildSystem: Allow packaging ports into xbps packages
if you build a package, you can build a port with
`PACKAGE=1 ./build.sh`
2026-08-25 03:52:52 +03:00
Bananymous f9487b63b0 ports: Add gimp port 2026-08-24 21:53:03 +03:00
Bananymous 1a3dc080e6 ports: Add poppler port 2026-08-24 21:53:03 +03:00
Bananymous 1a227504e2 ports: Add AppStream port 2026-08-24 21:53:03 +03:00
Bananymous 69d8927c12 ports: Add libfyaml port 2026-08-24 21:53:03 +03:00
Bananymous 9b5fd077d2 ports: Add mypaint port 2026-08-24 21:53:03 +03:00
Bananymous 889415b22a ports: Add gexiv2 port 2026-08-24 21:53:00 +03:00
Bananymous da94e21dbe ports: Add gegl port 2026-08-24 21:53:00 +03:00
Bananymous 501783e9ae ports: Add babl port 2026-08-24 21:53:00 +03:00
Bananymous f1f2f2aa25 ports: Add lcms2 port 2026-08-24 21:53:00 +03:00
Bananymous f2d08a85a5 porst: Add json-glib port 2026-08-24 21:52:55 +03:00
Bananymous 44189938d7 ports: Add glib-networking port 2026-08-24 21:01:41 +03:00
Bananymous c6536260c3 ports: Add librsvg port
We use version 2.40.21 as that is the last version that does not need a
rust toolchain
2026-08-24 20:58:21 +03:00
Bananymous d22ff2cbc4 ports: Add libcroco port 2026-08-24 20:58:09 +03:00
Bananymous 48d8902e98 ports/glib: Add init script to compile schemas 2026-08-24 20:57:27 +03:00
Bananymous b4349511f4 ports/gdk-pixbuf: Add init script to update pixbuf loader cache
If the loader cache is not updated, pixbuf fails to load anything :)
2026-08-24 20:56:25 +03:00
Bananymous b42b16add7 ports/sdl2-compat: Use -f when linking pc files 2026-08-24 20:55:30 +03:00
Bananymous 8fd18eef4d ports/harfbuzz: Don't compile cairo if its not compiled 2026-08-24 20:54:12 +03:00
Bananymous 1e7afa11d7 ports/ffmpeg: Don't compile static libraries 2026-08-24 20:53:11 +03:00
Bananymous 1cfcd76588 init: Run all scripts from /etc/init.d at startup 2026-08-24 20:37:45 +03:00
Bananymous 179f76114b init: Generate /etc/machine-id if it doesn't exist 2026-08-24 19:18:31 +03:00
Bananymous 65e559596b LibC: Add sys/random.h with getrandom 2026-08-24 19:16:37 +03:00
Bananymous 98c11ee33b Kernel: Support non-null-terminated paths in sockaddr_un 2026-08-24 17:37:34 +03:00
Bananymous 2f4fec9ab9 ports: Update shared-mime-info 2.4->2.5.1
2.4 failed to build spec on my machine and did not support disabling it
2026-08-24 03:55:19 +03:00
Bananymous a38e29c59d audio: Passing number to audio now generates a sinwave at that freq 2026-08-24 01:44:37 +03:00
Bananymous c6a435ed36 LibAudio: Allow generating sine waves 2026-08-24 01:44:04 +03:00
Bananymous 2e22ebf0b5 LibC: Cleanup TSC clock_gettime control flow 2026-08-24 01:37:05 +03:00
Bananymous cd6269d406 Kernel: Add very simple BGA driver
Only thing this is currently helpful is qemu when booting with -kernel
flag as that does not provide framebuffer info in multiboot headers
2026-08-24 01:35:06 +03:00
Bananymous 9a9a4fe8c0 Kernel: Don't allow creating zero sized shm objects 2026-08-23 15:51:01 +03:00
Bananymous f163dacce5 Kernel: Safely fail allocating zero sized BAR regions
Our device discovery thinks vmware's audio device is AC97 and allocating
one of the BARs leads to zero sized allocation -> panic from page table
as it tries to allocate 0 pages. Now we gracefully handle these regions
and fail to allocate the BAR
2026-08-23 15:44:12 +03:00
Bananymous 7e7ca3d929 Kernel: Add support for iHDA Selectors
Again this has not been tested as I don't have any hardware with
Selector on an usable output path. My T61 does have Selectors but they
are not used for the internal speakers. The T61 does have mixers though
so they seem to be working fine!
2026-08-23 15:20:41 +03:00
Bananymous c00f37b930 Kernel: Evaluate and validate PS/2 _CRS
Don't assume it is a buffer. On bochs it is a method :D
2026-08-23 15:08:01 +03:00
Bananymous ace5edfda2 Kernel: "Recognize" USB wireless controllers
Apparently USB device descriptor is allowed to have class
WirelessController if and only if it is a bluetooth controller(?) :D Now
we print ENOTSUP instead of EINVAL when encountering these
2026-08-23 14:21:42 +03:00
Bananymous 17813f3fcf Kernel: Store SchedulerThreadNode directly in Thread
Having the pointer indirection was weird and forced allocations when
adding/binding a new thread :P
2026-08-23 14:21:27 +03:00
Bananymous cce6e417df Kernel: Remove obsolete SpinLockGuardAsMutex declaration 2026-08-23 14:21:27 +03:00
Bananymous 8eb572d038 Kernel: Add reads/write to System CMOS to AML 2026-08-23 14:21:27 +03:00
Bananymous cee65bd68e Kernel: Fix ACPI Embedded Controllers
I was polling the wrong bit in read/write which lead to dead locks on
machines that used embedded controllers :D

Also EC GPEs are now only initialized AFTER the ACPI post initialization
is done. This fixes some issues where _GPE body was not fully available
yet
2026-08-23 14:21:27 +03:00
Bananymous 74d7a48c4b Kernel: Make TTY write lock a spinlock
I don't really like this but its needed with the current architecture to
allow printing while interrupts are disabled. I was hitting a dead lock
on few real machines
2026-08-23 14:21:27 +03:00
Bananymous 315d8895a7 WindowServer: Start TaskBar and Terminal after starting up
This removes the race condition from `start-gui` not starting
WindowServer fast enough and leading to the apps crashing as they
timeout while connecting to the server
2026-08-22 16:05:54 +03:00