Bananymous 
							
						 
						
							
								f0be4f86a6 
								
							 
						 
						
							
							
								
								LibC/Kernel: Implement access  
							
							
							
						 
						
							2024-07-30 11:51:07 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e5bb843059 
								
							 
						 
						
							
							
								
								LibC/Kernel: Implement ttyname  
							
							
							
						 
						
							2024-07-30 11:41:18 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ca774dfeb5 
								
							 
						 
						
							
							
								
								LibC: Implement setlocale() for C locale  
							
							
							
						 
						
							2024-07-30 11:33:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								681d8327f5 
								
							 
						 
						
							
							
								
								LibC/Kernel: Cleanup termios code  
							
							... 
							
							
							
							This is still not correct, but much better than it used to be 
							
						 
						
							2024-07-30 11:10:43 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e00efca170 
								
							 
						 
						
							
							
								
								Userspace: Pprogram template and loadfont mark install as optional  
							
							
							
						 
						
							2024-07-21 17:41:40 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3ab1214012 
								
							 
						 
						
							
							
								
								LibC: Fix _toupper and _tolower definitions  
							
							... 
							
							
							
							They were using C++ global namespace, which of course does not exist for
C targets. 
							
						 
						
							2024-07-18 01:10:51 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								61f0043cd8 
								
							 
						 
						
							
							
								
								resolver: Fix infinite debug printing loop, if client disconnects  
							
							
							
						 
						
							2024-07-16 15:05:07 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5b8fdbc82d 
								
							 
						 
						
							
							
								
								LibC: Don't expose math.h in stdlib.h  
							
							
							
						 
						
							2024-07-16 12:47:38 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a5cb4057f9 
								
							 
						 
						
							
							
								
								Kernel: Implement unified input files for device hot-plugging support  
							
							... 
							
							
							
							/dev/keyboard and /dev/mouse can be read for events from any attached
keyboard or mouse respectively. This makes device hot-plugging support
pretty much automatic for TTY, GUI, and whatever takes input. 
							
						 
						
							2024-07-15 22:11:15 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								442ea8a692 
								
							 
						 
						
							
							
								
								BAN: Remove Optional emplace constructor  
							
							... 
							
							
							
							This was kind breaking some initializations. Emplacing is still possible
through Optional::emplace 
							
						 
						
							2024-07-14 01:53:50 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a97a574718 
								
							 
						 
						
							
							
								
								Kernel: Rewrite the whole input system  
							
							... 
							
							
							
							PS/2 code is now kind of messed up, but it works. Keyboards and mice are
now an abstract class that is automatically exposed to userspace. This
will make adding USB input much nicer. 
							
						 
						
							2024-07-14 01:53:50 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8ddab05ed3 
								
							 
						 
						
							
							
								
								BuildSystem: Cleanup userspace directory layout  
							
							... 
							
							
							
							userspace programs are now in userspace/programs
userspace tests are now in userspace/tests
This makes listing userspace projects much cleaner. Libraries were
already separated to their own directory, so other programs should also. 
							
						 
						
							2024-07-03 09:18:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5dc441c4af 
								
							 
						 
						
							
							
								
								Kernel/userspace: Implement KD_LOADFONT and loadfont program  
							
							
							
						 
						
							2024-07-03 09:02:49 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d58a569660 
								
							 
						 
						
							
							
								
								WindowServer: Limit msync to 60 Hz and only sync necessary pages  
							
							... 
							
							
							
							This speeds up GUI a lot. I can now run GUI on real hardware at almost
60 Hz. 
							
						 
						
							2024-06-29 19:00:58 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0c645ba867 
								
							 
						 
						
							
							
								
								LibGUI: Window now uses double buffering  
							
							... 
							
							
							
							This allows data in shared memory object be always up to date. With this
change window server can update lazily, and not necessarily on all
invalidate calls 
							
						 
						
							2024-06-27 00:39:59 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f538dd5276 
								
							 
						 
						
							
							
								
								test-tcp: Fix printing of "connection reset" when tcp connection closed  
							
							
							
						 
						
							2024-06-27 00:39:22 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								66905fcc08 
								
							 
						 
						
							
							
								
								http-server: Make http-server actually usable  
							
							... 
							
							
							
							http-server now implements basic static content from a specified
directory. 
							
						 
						
							2024-06-25 19:36:10 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								af4b138094 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement realpath  
							
							... 
							
							
							
							realpath is implemented as a syscall. This is not really required but it
was the easiest way to get it working as there is already path
canonicalization at kernel level. 
							
						 
						
							2024-06-25 19:32:40 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								95681a7a05 
								
							 
						 
						
							
							
								
								LibImage: Cleanup bicubic calculations  
							
							
							
						 
						
							2024-06-25 11:04:03 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								67dfe0bcf3 
								
							 
						 
						
							
							
								
								BAN: Allow String::formatted to fail  
							
							
							
						 
						
							2024-06-25 11:04:03 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								61aa1ea11f 
								
							 
						 
						
							
							
								
								sudo: Fix installation permissions  
							
							... 
							
							
							
							I had accudentally removed SETUID bit from sudo. This required to
elevate the permissions. 
							
						 
						
							2024-06-24 15:00:08 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								20aa7c79d1 
								
							 
						 
						
							
							
								
								BuildSystem: Fix crt file installation  
							
							... 
							
							
							
							crt files should be installed always before userpace programs are
linked. 
							
						 
						
							2024-06-22 17:30:00 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								22548a3f4a 
								
							 
						 
						
							
							
								
								BuildSystem: Fix crt file installation  
							
							... 
							
							
							
							crt files for userspace are now a dependency of libc, which means that
everytime libc gets installed, crt files will also install.
This fixes the problem when building libc 
							
						 
						
							2024-06-21 17:10:58 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9e1b5cbaab 
								
							 
						 
						
							
							
								
								BuildSystem: Cleanup CMake code to allow libc only installation  
							
							... 
							
							
							
							There was no way to just install libc which is required for stdlibc++ 
							
						 
						
							2024-06-21 01:45:14 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1488ec5a03 
								
							 
						 
						
							
							
								
								Userspace: Implement the most basic http server  
							
							... 
							
							
							
							This server just responds with static http "hello world" to every
incoming request 
							
						 
						
							2024-06-20 13:29:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ad6d95ba52 
								
							 
						 
						
							
							
								
								BuildSystem: Rework the whole cmake build system  
							
							... 
							
							
							
							Now files are installed using the install() command instead of manually
copying files to their destinations. This allows automatic recompilation
of headers that did not work previously 
							
						 
						
							2024-06-19 09:40:03 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								318ce5dec8 
								
							 
						 
						
							
							
								
								All: Fix a lot of compiler warnings from header files  
							
							... 
							
							
							
							While reworking build system, header files started to report warnings. 
							
						 
						
							2024-06-18 23:02:10 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c69919738b 
								
							 
						 
						
							
							
								
								BuildSystem: Move all userpace libraries under the userspace directory  
							
							... 
							
							
							
							As the number of libraries is increasing, root directory starts to
expand. This adds better organization for libraries 
							
						 
						
							2024-06-18 13:14:35 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								aaf7a249c6 
								
							 
						 
						
							
							
								
								image: Add nicer error message if image could not be parsed  
							
							
							
						 
						
							2024-06-17 22:58:59 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								dd64e2060e 
								
							 
						 
						
							
							
								
								WindowServer: Add support for background images  
							
							... 
							
							
							
							WindowServer now looks in _$HOME/.config/WindowServer.conf_ for a
configuration file that can specify a background image.
Also add default background image /usr/share/images/sample.ppm to the
base sysroot provided in the git repo. 
							
						 
						
							2024-06-16 00:28:09 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								157e05f57c 
								
							 
						 
						
							
							
								
								image: Implement --scale argument to scale image to framebuffer  
							
							... 
							
							
							
							Also fix bug where red and blue channels were flipped 
							
						 
						
							2024-06-15 17:24:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								672ce40618 
								
							 
						 
						
							
							
								
								LibImage: Move userspace image parsing to its own library  
							
							... 
							
							
							
							The image utility now uses this tool instead of parsing images on its
own. 
							
						 
						
							2024-06-14 11:05:54 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a9b0bfa740 
								
							 
						 
						
							
							
								
								LibC: Make ino_t always 64 bit  
							
							
							
						 
						
							2024-06-14 00:18:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								843a6851c4 
								
							 
						 
						
							
							
								
								Userspace: Start work on a terminal emulator  
							
							... 
							
							
							
							Terminal is still missing some ANSI codes, cursor and pseudo terminal
support.
Shell's builtin start-gui now launches a Terminal instead of test
windows. 
							
						 
						
							2024-06-03 18:04:33 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								234051d6bc 
								
							 
						 
						
							
							
								
								Shell: Optimize drawing characters at the end of a command  
							
							
							
						 
						
							2024-06-03 18:03:19 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								981c0eb8bc 
								
							 
						 
						
							
							
								
								Shell: Only set terminal properties if STDIN is a TTY  
							
							
							
						 
						
							2024-06-03 18:02:49 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6346d1b6c7 
								
							 
						 
						
							
							
								
								Shell: Add builtin command for starting window server and test windows  
							
							
							
						 
						
							2024-06-02 17:27:40 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								05ee242b80 
								
							 
						 
						
							
							
								
								WindowServer: Add window title to title bar and send close events  
							
							
							
						 
						
							2024-06-02 17:27:09 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ae3ae6fd0e 
								
							 
						 
						
							
							
								
								WindowServer: Fix partial invalidation over cursor  
							
							
							
						 
						
							2024-05-31 03:20:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								011a5f57e1 
								
							 
						 
						
							
							
								
								WindowServer: Add title bars and clean up code  
							
							
							
						 
						
							2024-05-31 03:02:58 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c2b6ba0d5a 
								
							 
						 
						
							
							
								
								Userspace: Start work on GUI and WindowServer  
							
							... 
							
							
							
							Current implementation can create custom windows and each window has
its own framebuffer. When window wants to write its framebuffer to the
screen it will send a message to the WindowServer using unix sockets. 
							
						 
						
							2024-05-29 16:00:54 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8bc6c2eb20 
								
							 
						 
						
							
							
								
								Kernel: Move KeyEvent/MouseEvent from kernel to LibInput  
							
							
							
						 
						
							2024-05-28 23:30:08 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cc2cc2849e 
								
							 
						 
						
							
							
								
								Whoami: Rewrite whoami using getlogin  
							
							
							
						 
						
							2024-05-23 15:44:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								06f4b0b29a 
								
							 
						 
						
							
							
								
								BAN: Make String and StringView header only  
							
							... 
							
							
							
							This allows linking with libc without having to link ban 
							
						 
						
							2024-05-23 15:43:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								967f9a9174 
								
							 
						 
						
							
							
								
								Shell: Ignore tab as that just fucks up formatting  
							
							
							
						 
						
							2024-05-07 14:16:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								414f0f6cd9 
								
							 
						 
						
							
							
								
								Userspace: Don't link with libc  
							
							... 
							
							
							
							This fixes bug where sometimes cmake does not find libc from sysroot
LibC is linked per program in its own CMakeLists.txt 
							
						 
						
							2024-04-03 14:46:18 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5dbe51a52e 
								
							 
						 
						
							
							
								
								Userspace: Update printf formats to compile on 32 bit  
							
							
							
						 
						
							2024-03-26 03:03:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7f5c850744 
								
							 
						 
						
							
							
								
								Userspace: Add us keymap and make it default  
							
							
							
						 
						
							2024-03-19 12:30:57 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b979023b9d 
								
							 
						 
						
							
							
								
								Shell: Add test cases for stroul and strod in builtin `test-strtox`  
							
							
							
						 
						
							2024-02-16 15:35:02 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c469d9b3ff 
								
							 
						 
						
							
							
								
								Shell: Add builtin test for strtol `test-strtol`  
							
							
							
						 
						
							2024-02-14 22:38:16 +02:00