Add a display server and graphical user interface #38

Merged
apio merged 103 commits from display-server into main 2023-09-20 18:49:21 +00:00
Owner

It's finally doable.

After a long list of required features, including:

  • UNIX local domain sockets
  • Raw keyboard and mouse support
  • poll()
  • POSIX shared memory
  • Memory-mapped files
  • Disabling the TTY (i.e. setting it to graphical mode, ioctl(fd, TTYSETGFX, 1))

A display server is finally possible. This is the start of it.

It's finally doable. After a long list of required features, including: - UNIX local domain sockets - Raw keyboard and mouse support - poll() - POSIX shared memory - Memory-mapped files - Disabling the TTY (i.e. setting it to graphical mode, ioctl(fd, TTYSETGFX, 1)) A display server is finally possible. This is the start of it.
apio added 4 commits 2023-08-03 10:24:22 +00:00
apio added 3 commits 2023-08-03 14:40:25 +00:00
apio added 1 commit 2023-08-03 15:39:01 +00:00
libui+wind: (Draggable) windows
All checks were successful
continuous-integration/drone/pr Build is passing
f3dbea044f
apio added 1 commit 2023-08-03 15:39:55 +00:00
base: Remove startup items not necessary for GUI startup
All checks were successful
continuous-integration/drone/pr Build is passing
72c94d1e57
apio added 1 commit 2023-08-03 15:46:52 +00:00
kernel: Store FD_CLOEXEC in the file descriptor itself
All checks were successful
continuous-integration/drone/pr Build is passing
3021fffb07
Closes #39.
apio force-pushed display-server from 3021fffb07 to a48d6fe001 2023-08-03 15:47:43 +00:00 Compare
apio added 1 commit 2023-08-03 15:50:20 +00:00
libui: Remove unnecessary stuff
All checks were successful
continuous-integration/drone/pr Build is passing
4b797367dd
apio added 1 commit 2023-08-03 15:52:34 +00:00
libui: Add getters for separate color values
All checks were successful
continuous-integration/drone/pr Build is passing
8bff3d647e
apio added 1 commit 2023-08-03 16:33:09 +00:00
libui: Remove redundant statement
All checks were successful
continuous-integration/drone/pr Build is passing
37731d2a95
apio added 2 commits 2023-08-04 11:08:57 +00:00
wind: Reorder drag sequence
All checks were successful
continuous-integration/drone/pr Build is passing
653b2074c0
apio added 6 commits 2023-08-04 14:09:04 +00:00
apio force-pushed display-server from f2c5306f10 to 49d5930912 2023-08-04 14:09:24 +00:00 Compare
apio added 4 commits 2023-08-04 19:18:24 +00:00
apio added 1 commit 2023-08-06 10:08:31 +00:00
libui: Render font characters properly with no spacing, matching the width calculations
All checks were successful
continuous-integration/drone/pr Build is passing
2dff2c9934
apio added 4 commits 2023-08-06 10:45:22 +00:00
apio added 1 commit 2023-08-07 17:11:00 +00:00
libui+wind: Move some static variables inside functions
All checks were successful
continuous-integration/drone/pr Build is passing
2ddec76061
apio added 1 commit 2023-08-07 17:16:50 +00:00
libui: Document ui::Font
All checks were successful
continuous-integration/drone/pr Build is passing
2ffdc6f539
apio added 1 commit 2023-08-07 17:17:28 +00:00
libui: Change 'into' to 'onto'
All checks were successful
continuous-integration/drone/pr Build is passing
e50d23790e
apio force-pushed display-server from e50d23790e to d67fcd2ec0 2023-08-07 17:23:22 +00:00 Compare
apio force-pushed display-server from d67fcd2ec0 to 939f443e9b 2023-08-07 20:51:35 +00:00 Compare
apio force-pushed display-server from 939f443e9b to ecfd20dba6 2023-08-07 20:54:14 +00:00 Compare
apio force-pushed display-server from ecfd20dba6 to e5bb07874d 2023-08-08 08:46:04 +00:00 Compare
apio added 1 commit 2023-08-08 09:40:35 +00:00
libos: Remove some shared pointers and change them to owned/live on the stack
All checks were successful
continuous-integration/drone/pr Build is passing
563d4beb30
apio force-pushed display-server from 563d4beb30 to 1bd6cf048b 2023-08-08 10:51:18 +00:00 Compare
apio force-pushed display-server from 1bd6cf048b to 38f799ce39 2023-08-08 14:34:49 +00:00 Compare
apio force-pushed display-server from 38f799ce39 to 9c0fab2e88 2023-08-08 15:47:02 +00:00 Compare
apio force-pushed display-server from 9c0fab2e88 to d896101268 2023-08-14 08:56:34 +00:00 Compare
apio added 2 commits 2023-08-14 09:07:42 +00:00
wind: Use init --user and pledge()
Some checks failed
continuous-integration/drone/pr Build is failing
64e6ee9489
apio force-pushed display-server from 64e6ee9489 to c0ca99bc7c 2023-08-14 09:09:42 +00:00 Compare
apio added 9 commits 2023-08-14 16:16:12 +00:00
apio added 1 commit 2023-08-14 18:09:13 +00:00
wind+gclient: Add SetWindowTitle and support shm buffers
Some checks failed
continuous-integration/drone/pr Build is failing
60f9c0e5a3
apio added 11 commits 2023-08-15 13:40:13 +00:00
apio force-pushed display-server from 945d838166 to 462c48001f 2023-08-16 07:23:52 +00:00 Compare
apio added 1 commit 2023-08-16 08:58:03 +00:00
base: Actually add the start icon to source control
Some checks failed
continuous-integration/drone/pr Build is failing
326bc41e4b
apio force-pushed display-server from 326bc41e4b to 5099b2b0f4 2023-08-16 08:59:33 +00:00 Compare
apio force-pushed display-server from 5099b2b0f4 to b95d495815 2023-08-16 12:55:37 +00:00 Compare
apio added 3 commits 2023-08-16 14:49:54 +00:00
apio added 2 commits 2023-08-17 09:21:17 +00:00
Classic "keeping a pointer to an element inside a vector after the vector is updated" bug, ah yes.
wind: Handle ftruncate() and mmap() errors properly
Some checks failed
continuous-integration/drone/pr Build is failing
56066f332f
apio force-pushed display-server from 56066f332f to 4d6ac5cf30 2023-08-17 18:17:30 +00:00 Compare
apio added 1 commit 2023-08-17 18:22:31 +00:00
wind: Show memory usage in debug output
Some checks failed
continuous-integration/drone/pr Build is failing
822a2b7d43
apio force-pushed display-server from 822a2b7d43 to a770b67b08 2023-08-21 12:07:06 +00:00 Compare
apio added 1 commit 2023-08-21 12:07:48 +00:00
libui: Install the built library into the system root
Some checks failed
continuous-integration/drone/pr Build is failing
d10fceda0a
apio force-pushed display-server from d10fceda0a to 44f2a4e97e 2023-08-22 09:56:35 +00:00 Compare
apio force-pushed display-server from 44f2a4e97e to 58cb1e763f 2023-08-22 11:36:53 +00:00 Compare
apio added 1 commit 2023-08-22 11:37:14 +00:00
wind: Stop using the removed 'signal' pledge
All checks were successful
continuous-integration/drone/pr Build is passing
1de85aa4be
apio force-pushed display-server from 1de85aa4be to 1d4055411d 2023-08-28 10:51:25 +00:00 Compare
apio added 3 commits 2023-08-29 13:33:51 +00:00
apio added 1 commit 2023-08-29 14:25:39 +00:00
libui+wind+libos: Move shared memory handling code to os::SharedMemory
All checks were successful
continuous-integration/drone/pr Build is passing
d5d21e1eb0
apio added 1 commit 2023-08-31 12:55:50 +00:00
wind: Make sure stdin is always a TTY
All checks were successful
continuous-integration/drone/pr Build is passing
a2b6149f50
apio added 1 commit 2023-09-02 12:02:20 +00:00
wind: Move more fallible operations before window creation
All checks were successful
continuous-integration/drone/pr Build is passing
8ab823fc43
apio force-pushed display-server from 8ab823fc43 to 6eea3bda06 2023-09-04 10:17:03 +00:00 Compare
apio force-pushed display-server from 6eea3bda06 to 3a13017ede 2023-09-05 08:47:17 +00:00 Compare
apio force-pushed display-server from 3a13017ede to 26623f8a0d 2023-09-10 16:56:03 +00:00 Compare
apio added 5 commits 2023-09-11 17:39:50 +00:00
apio force-pushed display-server from fd62ea588d to ff525c9044 2023-09-12 20:09:52 +00:00 Compare
apio added 1 commit 2023-09-14 19:30:03 +00:00
libui: Add option to run event processing in a loop instead of in app.run()
All checks were successful
continuous-integration/drone/pr Build is passing
dce7b92c95
apio added 1 commit 2023-09-14 19:32:19 +00:00
shell: Allow running as interactive even if not running in a TTY
All checks were successful
continuous-integration/drone/pr Build is passing
8227e7c0ea
apio added 1 commit 2023-09-14 20:51:32 +00:00
apps: Add basic terminal app
All checks were successful
continuous-integration/drone/pr Build is passing
05a0d912fa
apio added 1 commit 2023-09-14 20:56:01 +00:00
kernel: Allow performing extra actions when opening an inode
All checks were successful
continuous-integration/drone/pr Build is passing
69a0600d45
apio added 8 commits 2023-09-16 09:48:41 +00:00
apio added 2 commits 2023-09-16 11:12:46 +00:00
Before this, the call to update() was always skipped.
terminal: Add cursor support
All checks were successful
continuous-integration/drone/pr Build is passing
ea3907d012
apio added 2 commits 2023-09-16 11:29:52 +00:00
apio added 4 commits 2023-09-18 05:21:14 +00:00
apio force-pushed display-server from 6f683c48f0 to 0cb21c2e90 2023-09-20 05:07:51 +00:00 Compare
apio added 4 commits 2023-09-20 17:49:21 +00:00
apio added 1 commit 2023-09-20 17:58:35 +00:00
kernel: Increase the OOM threshold to 4 MiB free
All checks were successful
continuous-integration/drone/pr Build is passing
52b04bd33b
apio added 1 commit 2023-09-20 18:17:22 +00:00
gol: Use the windowing system
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
b09226b8ba
apio changed title from WIP: Add a display server and graphical user interface to Add a display server and graphical user interface 2023-09-20 18:48:53 +00:00
apio merged commit b09226b8ba into main 2023-09-20 18:49:21 +00:00
apio deleted branch display-server 2023-09-20 19:11:58 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: apio/Luna#38
No description provided.