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
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
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
a9b0bfa740
LibC: Make ino_t always 64 bit
2024-06-14 00:18:21 +03:00
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
234051d6bc
Shell: Optimize drawing characters at the end of a command
2024-06-03 18:03:19 +03:00
981c0eb8bc
Shell: Only set terminal properties if STDIN is a TTY
2024-06-03 18:02:49 +03:00
6346d1b6c7
Shell: Add builtin command for starting window server and test windows
2024-06-02 17:27:40 +03:00
05ee242b80
WindowServer: Add window title to title bar and send close events
2024-06-02 17:27:09 +03:00
ae3ae6fd0e
WindowServer: Fix partial invalidation over cursor
2024-05-31 03:20:21 +03:00
011a5f57e1
WindowServer: Add title bars and clean up code
2024-05-31 03:02:58 +03:00
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
8bc6c2eb20
Kernel: Move KeyEvent/MouseEvent from kernel to LibInput
2024-05-28 23:30:08 +03:00
cc2cc2849e
Whoami: Rewrite whoami using getlogin
2024-05-23 15:44:21 +03:00
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
967f9a9174
Shell: Ignore tab as that just fucks up formatting
2024-05-07 14:16:17 +03:00
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
5dbe51a52e
Userspace: Update printf formats to compile on 32 bit
2024-03-26 03:03:33 +02:00
7f5c850744
Userspace: Add us keymap and make it default
2024-03-19 12:30:57 +02:00
b979023b9d
Shell: Add test cases for stroul and strod in builtin test-strtox
2024-02-16 15:35:02 +02:00
c469d9b3ff
Shell: Add builtin test for strtol test-strtol
2024-02-14 22:38:16 +02:00
1f467580ee
Userspace: Add test for popen
2024-02-14 17:23:26 +02:00
7eb5d220fd
Userspace: Implement getopt for testing libc getopt()
2024-02-14 15:01:27 +02:00
420a7b60ca
resolver: use select for client communication
2024-02-12 23:47:39 +02:00
ccde8148a7
Userspace: Implement basic udp test program
2024-02-12 04:45:42 +02:00
b9bbf42538
Userspace: Implement basic test program for tcp connection
2024-02-12 04:45:42 +02:00
f117027175
resolver: dump errors to debug output
2024-02-08 18:34:15 +02:00
5a939cf252
Userspace: Add simple test for unix domain sockets
2024-02-08 13:18:54 +02:00
065ee9004c
Userspace: Add DNS cache to resolver
...
Also the format of resolver reply is now just sockaddr_storage with
family set and address in the storage field.
2024-02-08 12:06:30 +02:00
2424f38a62
Userspace: Implement super simple DNS resolver in userspace
...
You connect to this service using unix domain sockets and send the
asked domain name. It will respond with ip address or 'unavailable'
There is no DNS cache implemented so all calls ask the nameserver.
2024-02-08 03:14:00 +02:00
40e341b0ee
BAN: Remove unstable hash map and set
...
These can now be implemented safely with new linked list api
2024-02-06 17:35:15 +02:00
f804e87f7d
Kernel: Implement basic gateway for network interfaces
2024-02-05 18:18:56 +02:00
b2291ce162
Kernel/BAN: Fix network strucute endianness
2024-02-05 18:18:56 +02:00
89805fb092
dhcp-client: Use dprintln for debug printing
2024-02-05 01:24:45 +02:00
692cec8458
Kernel/Userspace/LibC: Implement basic dprintln for userspace
2024-02-05 01:24:09 +02:00
79897e77dc
dhcp-client: Remove packet send test :D
2024-02-03 18:04:31 +02:00
2138eeb87f
Userspace: Implement super simple DHCP client
2024-02-03 02:41:06 +02:00
7cb71ec6fb
test-sort: Test more algorithms and cleanup output format
2024-02-01 15:22:28 +02:00
9213dd13bc
dd: Improve output format
...
Include written bytes and speed with units
2024-02-01 00:06:46 +02:00
210b24b6e3
AOC2023: Delete file that should not be committed...
2024-01-24 15:53:38 +02:00
dfe5a2d665
All: Cleanup all files
...
Add newline to end of files and remove whitespace from end of lines
2024-01-24 15:53:38 +02:00
64a63fa4be
Userspace: Add loadkeys program to change keymap
2024-01-10 14:57:50 +02:00
51214ea1bf
Kernel: Add load_keymap syscall and load Finnish keymap in init
2024-01-10 14:46:29 +02:00
40f55be587
Userspace: Write simple mouse test program
...
This program draws circle on framebuffer, that you can move with
mouse, resize with scroll, and recolor with mouse buttons.
2024-01-04 19:50:26 +02:00
753de3d9f0
ls: Write group name instead of gid in list mode
2024-01-03 00:15:13 +02:00
1bd33e76e5
cat/cat-mmap: print newline if file doesn't end in one
2024-01-02 23:27:13 +02:00
96d831c31a
Kernel/LibC/Userspace: Implement chown and set tty owner on login
2024-01-02 22:19:38 +02:00
8b5e437936
AOC2023: Implement day25 part1
...
7 starts missing + partly broken day22. I might finish these soon...
2023-12-26 20:04:42 +02:00
d87fa1a7ea
AOC2023: Implement day24 part1
2023-12-26 14:10:49 +02:00
910a57089b
AOC2023: Implement day23 part1
...
My day22 implementation is off by couple of bricks...
2023-12-26 00:56:35 +02:00