Bananymous 
							
						 
						
							
								531211e09d 
								
							 
						 
						
							
							
								
								AOC2023: implement day6  
							
							
							
						 
						
							2023-12-06 07:27:25 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								82cb2ea20b 
								
							 
						 
						
							
							
								
								AOC2023: implement day5  
							
							
							
						 
						
							2023-12-05 09:13:13 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								622007f2ee 
								
							 
						 
						
							
							
								
								Shell: Verify that command exists before executing it  
							
							... 
							
							
							
							This prevents page fault somewhere when executing non-existing
commands. 
							
						 
						
							2023-12-04 22:57:27 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cf76d2e7d9 
								
							 
						 
						
							
							
								
								AOC2023: remove unnecessary loop  
							
							
							
						 
						
							2023-12-04 17:54:10 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								41f8974080 
								
							 
						 
						
							
							
								
								AOC2023: implement day4  
							
							
							
						 
						
							2023-12-04 17:51:27 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3ed25425a3 
								
							 
						 
						
							
							
								
								AOC2023: implement day3  
							
							... 
							
							
							
							Solution to second puzzle is not optimal, it definately should be
O(1) space, but I didn't want to think about it. 
							
						 
						
							2023-12-03 17:07:09 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								49f8c4268f 
								
							 
						 
						
							
							
								
								AOC2023: implement day2  
							
							
							
						 
						
							2023-12-02 16:10:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								70c224d8ea 
								
							 
						 
						
							
							
								
								AOC2023: Cleanup day1 code  
							
							
							
						 
						
							2023-12-01 13:31:55 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6a7335e5c9 
								
							 
						 
						
							
							
								
								AOC2023: implement day1  
							
							
							
						 
						
							2023-12-01 12:38:01 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3aaa755c51 
								
							 
						 
						
							
							
								
								AOC2023: update buildsystem  
							
							
							
						 
						
							2023-12-01 12:38:01 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								dabd79afa7 
								
							 
						 
						
							
							
								
								Userspace: Prepare aoc2023 environment :)  
							
							
							
						 
						
							2023-12-01 01:22:53 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6ccb1bbbf9 
								
							 
						 
						
							
							
								
								init: set default termios on every username prompt  
							
							... 
							
							
							
							Before if e.g. Shell crashed init would have broken termios 
							
						 
						
							2023-12-01 01:22:53 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8564b59e14 
								
							 
						 
						
							
							
								
								image: Remove inheritance from Netbpm  
							
							... 
							
							
							
							This inheritance made no sense 
							
						 
						
							2023-11-29 20:56:05 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								327b330338 
								
							 
						 
						
							
							
								
								Kernel: Make internal framebuffer bpp constexpr defined in libc  
							
							
							
						 
						
							2023-11-29 20:07:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7090388c70 
								
							 
						 
						
							
							
								
								cp: allow copying all files except directories  
							
							... 
							
							
							
							The old condition seemed odd. This allows taking screen shots by
copying the /dev/fb0. 
							
						 
						
							2023-11-29 16:13:40 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ff550785a7 
								
							 
						 
						
							
							
								
								Userspace: Implement basic image rendering for Netbpm  
							
							... 
							
							
							
							You can now render Netbpm (P6) format image to framebuffer using
`image` command. I added basic test image to
/usr/share/images/sample.ppm 
							
						 
						
							2023-11-29 16:11:35 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								056586486d 
								
							 
						 
						
							
							
								
								Shell: make clear use \e[2J instead of \e[J  
							
							... 
							
							
							
							This makes kernel to actually clear the full screen. If framebuffer
did not fit font exactly last row would be left partially uncleared 
							
						 
						
							2023-11-28 23:55:37 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								42a1d26d5b 
								
							 
						 
						
							
							
								
								Userspace: Implement basic test for framebuffer mmap  
							
							
							
						 
						
							2023-11-28 23:52:22 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4c3da66c92 
								
							 
						 
						
							
							
								
								mmap-shared-test: Add test case for msync  
							
							
							
						 
						
							2023-11-22 22:45:16 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								bfe6d60e9e 
								
							 
						 
						
							
							
								
								ls: print link targets when listing files  
							
							
							
						 
						
							2023-11-11 23:17:18 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								613d6640fe 
								
							 
						 
						
							
							
								
								meminfo: better format for files without permissions  
							
							
							
						 
						
							2023-11-07 02:41:01 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f6c312a6b3 
								
							 
						 
						
							
							
								
								BuildSystem: using sysroot doesn't need root privileges anymore!  
							
							... 
							
							
							
							Sysroot is now created with fakeroot. This allows root access to be
only needed for disk image creation, since it uses loopback devices. 
							
						 
						
							2023-11-04 17:50:43 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a63006afaf 
								
							 
						 
						
							
							
								
								Userspace: Add quick test for global ctors and dtors  
							
							
							
						 
						
							2023-10-30 11:11:10 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ea0d7156a4 
								
							 
						 
						
							
							
								
								rm: add option to remove recursively  
							
							
							
						 
						
							2023-10-26 02:32:49 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								81228d3401 
								
							 
						 
						
							
							
								
								Userspace: implement basic rm command  
							
							
							
						 
						
							2023-10-25 21:45:27 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6ee4d10651 
								
							 
						 
						
							
							
								
								Kernel/LibC/Userspace: Implement mkdir and creat  
							
							... 
							
							
							
							Touch now uses creat insteadd of open with O_CREAT flag 
							
						 
						
							2023-10-25 21:07:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c445ea6266 
								
							 
						 
						
							
							
								
								cp: abort copy if write fails  
							
							
							
						 
						
							2023-10-25 02:43:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e685f38fd1 
								
							 
						 
						
							
							
								
								Userspace: Add basic chmod command  
							
							
							
						 
						
							2023-10-25 02:37:19 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								657f95d3f0 
								
							 
						 
						
							
							
								
								Userspace: Implement basic cp  
							
							... 
							
							
							
							This does not support any meaningful command line arguments but
is a good start. 
							
						 
						
							2023-10-25 00:07:25 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								07f8c972b3 
								
							 
						 
						
							
							
								
								Shell: Set get old termios earlier  
							
							... 
							
							
							
							I sourced the config file before getting old termios. Sourcing
updated the termios so old_termios was always in non canonical, non
echoing mode. 
							
						 
						
							2023-10-24 19:10:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6f6ccbfa04 
								
							 
						 
						
							
							
								
								meminfo: fix g++ warning for oob write  
							
							... 
							
							
							
							g++ doesn't realize that read can only return -1 
							
						 
						
							2023-10-24 16:50:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8c792f9c6d 
								
							 
						 
						
							
							
								
								Shell: Fix parsing $ with unknown character  
							
							
							
						 
						
							2023-10-12 22:24:27 +03:00  
				
					
						
							
							
								 
						
							
								bc4d272c4f 
								
							 
						 
						
							
							
								
								cat: Use write() instead of puts to print file contents  
							
							... 
							
							
							
							This allows printing files that contain null bytes behave more like
you would expect 
							
						 
						
							2023-10-04 22:16:19 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								57605c2b3e 
								
							 
						 
						
							
							
								
								meminfo: Print allocated physical memory percentage  
							
							
							
						 
						
							2023-10-03 10:39:27 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1cd99631e1 
								
							 
						 
						
							
							
								
								Shell: source $HOME/.shellrc if found on Shell startup  
							
							
							
						 
						
							2023-10-03 10:39:27 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f67ed9a66e 
								
							 
						 
						
							
							
								
								Shell: Implement sourcing scripts  
							
							
							
						 
						
							2023-10-03 10:24:10 +03:00  
				
					
						
							
							
								 
						
							
								6c11dac113 
								
							 
						 
						
							
							
								
								meminfo: Add process command line to the output  
							
							
							
						 
						
							2023-09-30 23:17:31 +03:00  
				
					
						
							
							
								 
						
							
								5ee3506474 
								
							 
						 
						
							
							
								
								Kernel: Add physical memory info to /proc/{pid}/meminfo  
							
							
							
						 
						
							2023-09-30 22:11:45 +03:00  
				
					
						
							
							
								 
						
							
								c5119cda97 
								
							 
						 
						
							
							
								
								Userspace: Add meminfo command that parses /proc/{pid}/meminfo  
							
							
							
						 
						
							2023-09-30 21:20:53 +03:00  
				
					
						
							
							
								 
						
							
								6304388100 
								
							 
						 
						
							
							
								
								Shell: Quick fix to not freeze for multiple seconds  
							
							... 
							
							
							
							When sync is writing to disk, it reserves whole disk to itself.
This commit makes Shell to read username only once from getpwuid().
We used to get username every time prompt was printed. 
							
						 
						
							2023-09-29 19:20:48 +03:00  
				
					
						
							
							
								 
						
							
								96b1186c19 
								
							 
						 
						
							
							
								
								Userspace: Implement basic test for MAP_SHARED  
							
							
							
						 
						
							2023-09-29 18:59:37 +03:00  
				
					
						
							
							
								 
						
							
								b57811b371 
								
							 
						 
						
							
							
								
								Userspace: Implement cat-mmap  
							
							... 
							
							
							
							This behaves exactly as cat, but uses mmap to read the file. 
							
						 
						
							2023-09-29 17:24:55 +03:00  
				
					
						
							
							
								 
						
							
								6eda65eea6 
								
							 
						 
						
							
							
								
								Kernel/LibC/Userspace: Add SYS_POWEROFF + cli tool  
							
							... 
							
							
							
							You can now shutdown/reboot banan-os with the poweroff cli tool.
Reboot doesn't seem to work on qemu. 
							
						 
						
							2023-09-28 12:36:47 +03:00  
				
					
						
							
							
								 
						
							
								4a01e4c3b4 
								
							 
						 
						
							
							
								
								Userspace: Use printf length modifiers when printing  
							
							
							
						 
						
							2023-09-28 11:49:31 +03:00  
				
					
						
							
							
								 
						
							
								399d5338c6 
								
							 
						 
						
							
							
								
								Shell: String leading and trailing whitespace from commands  
							
							... 
							
							
							
							This fixes a bug of inserting empty argument if command had trailing
whitespace 
							
						 
						
							2023-09-28 10:28:49 +03:00  
				
					
						
							
							
								 
						
							
								b573701625 
								
							 
						 
						
							
							
								
								Sync: Add some argument parsing to sync(1)  
							
							... 
							
							
							
							You can specify --block to make the program wait until sync is
complete. 
							
						 
						
							2023-09-27 00:37:23 +03:00  
				
					
						
							
							
								 
						
							
								3ba15b41a3 
								
							 
						 
						
							
							
								
								Kernel/LibC: remove PATH resoltion from kernel  
							
							... 
							
							
							
							I have no idea why I had made PATH environment variable parsing
to be part of the kernel. Now the shell does the parsing and
environment syscall is no longer needed. 
							
						 
						
							2023-09-23 03:08:14 +03:00  
				
					
						
							
							
								 
						
							
								63dc2b6aa6 
								
							 
						 
						
							
							
								
								Kernel: Implement SYS_SYNC and add sync executable to userspace  
							
							... 
							
							
							
							You can (and have to) manually sync disk after writes to it. 
							
						 
						
							2023-09-11 01:26:27 +03:00  
				
					
						
							
							
								 
						
							
								9ebf29991d 
								
							 
						 
						
							
							
								
								Kernel: Add basic dd command  
							
							... 
							
							
							
							This only supports if, of, bs, count and status=progress 
							
						 
						
							2023-09-10 01:19:47 +03:00  
				
					
						
							
							
								 
						
							
								921d95d18f 
								
							 
						 
						
							
							
								
								All: Clear lines with only whitspace in them  
							
							
							
						 
						
							2023-09-10 00:31:42 +03:00