Commit Graph

2360 Commits

Author SHA1 Message Date
f8a39ffeec
startui: Change mismatched parameter name 2024-01-31 22:45:11 +01:00
d440559d54
startui: Fix typo 2024-01-31 22:43:40 +01:00
443d8957f3
apps: Add startui
This service starts a complete UI session (wind, components, and init --user), all with their respective privileges.

This lets us move that responsibility away from wind and let it be only a window manager.
2024-01-31 22:42:24 +01:00
ea14dab7d7
wind: Stop using magic numbers for user and group IDs 2024-01-30 20:26:54 +01:00
16223b2f53
init: Add a (user) prefix to logs when not running as system init 2024-01-19 21:21:07 +01:00
9c36ef6e9e
terminal: Stop setting the pty to nonblocking mode when it's not needed 2024-01-19 21:18:01 +01:00
63f785563d
terminal: Use proper lambda functions when registering a fd listener for the pseudoterminal 2024-01-19 21:11:03 +01:00
1cd355a8e8
libos: Add Function<Args...> and use that to make EventLoop callbacks more versatile 2024-01-18 20:52:36 +01:00
d4d748e153
terminal: Remove m_cursor_timer->restart() from tick_cursor()
Since the timer was created as a repeating timer, it is already restarted after the function.
2024-01-13 16:26:37 +01:00
cee677b1f7
libui: Make App::process_events() private
Previously this was public as some applications (mainly terminal) needed to run some code in-between events, but this is no longer needed, due to the EventLoop providing these services (timers and file descriptor notifiers)
2024-01-08 19:13:47 +01:00
e4c9211edc
terminal: Use os::Timer and EventLoop::register_fd_listener 2024-01-08 19:04:04 +01:00
6bf8225f63
libos: Add Timer::reset, restart and stop 2024-01-08 19:01:59 +01:00
1223c6c20b
libos: Add FIXME to EventLoop 2024-01-08 19:01:39 +01:00
fd402083d7
kernel: Fix kernel panic when adding a timer before another one
This was caused because add_to_timer_queue() did not set active_clock when inserting a timer before the end, making disarm() a no-op.
Therefore, the clock would continue to use the timer after it had been freed.
2024-01-06 18:12:25 +01:00
4019cf90cf
kernel: Unify panic messages 2024-01-06 17:44:56 +01:00
1f2f676ea4
Update gitignore rules 2024-01-06 17:31:00 +01:00
075ed83764
Add about icon to git
Apparently, I had skipped this one, I really need to improve these
gitignore rules.
2024-01-06 17:23:14 +01:00
7f6863c093
apps: Use os::Timer instead of os::EventLoop::register_timer 2024-01-05 22:18:12 +01:00
a9c339939a
libos: Move timer handling to a separate class and use POSIX timers 2024-01-05 22:16:50 +01:00
3231a1296d
libc: Add support for POSIX timers 2024-01-05 22:15:06 +01:00
17b44a8ce6
kernel: Reenable stack tracing in kernel-mode exceptions
Stack tracing in user-mode exceptions was moved to when a signal kills the process, but this isn't done for kernel-mode exceptions so there was no stack trace anymore.
2024-01-05 22:14:31 +01:00
41c90aa436
kernel: Add POSIX timer support 2024-01-05 22:12:58 +01:00
f8cc093e17
tools: Add useful script to develop ports 2024-01-04 21:04:58 +01:00
64a941dc18
ports: Use --enable-initfini-array in gcc and binutils ports 2024-01-04 21:04:45 +01:00
2a85a7473a
kernel: Show stacktraces on all signal terminations 2024-01-04 21:04:24 +01:00
e34395915d
libc+tests+tools: Call global constructors in userspace code 2024-01-04 21:02:51 +01:00
d9899f1c3d
Update LICENSE 2024-01-04 11:24:48 +01:00
c24d0da5f0
ports/gcc: Fix --with-build-sysroot and enable asserts 2024-01-04 11:15:14 +01:00
1208d94b37
kernel: Add stack diagnostics to userspace fault reporting 2024-01-04 11:14:19 +01:00
f34dd56375
wind+libui: Implement client side decorations 2023-12-27 12:56:40 +01:00
5188def9e5
stat: Recognize sockets properly
Some checks failed
continuous-integration/drone/push Build is failing
2023-12-04 20:42:31 +01:00
9b01b5a5db
kernel: Correctly register file times for more file systems and file types 2023-12-04 20:42:17 +01:00
b619f717c8
kernel+libc: Implement pause() and sigsuspend()
All checks were successful
continuous-integration/drone/push Build is passing
2023-12-04 20:26:01 +01:00
92ab403687
terminal: Use forkpty()
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-25 12:18:48 +01:00
5bb4321134
libc: Add login_tty() and forkpty() 2023-11-25 12:18:25 +01:00
3a5924be64
kernel: Set the initial foreground process group when acquiring a controlling terminal 2023-11-25 12:18:04 +01:00
99dc819bca
terminal: Stop killing child process manually when exiting
All checks were successful
continuous-integration/drone/push Build is passing
This is already handled by the pty subsystem.
2023-11-22 21:35:26 +01:00
73a7d4f2a1
wind+libui: Run wind as a separate user
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-22 21:31:08 +01:00
efeab5699e
su: Allow disabled passwords 2023-11-22 21:31:08 +01:00
1005305d5a
su: Support supplementary groups 2023-11-22 21:31:08 +01:00
8a90db837b
kernel+libc: Add support for supplementary groups (2/2)
Adds system calls for setting and getting groups, along with libc wrappers.
2023-11-22 21:31:07 +01:00
3ad23eab21
kernel: Add support for supplementary groups (1/2)
Adds support for supplementary groups internally in the kernel.
No userspace support.
2023-11-22 18:49:40 +01:00
e97b61ef16
gol: Use EventLoop timers
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-16 22:02:31 +01:00
d1d53c6891
kernel: Remove signal debug messages 2023-11-16 22:02:17 +01:00
8a57d8a9b7
libos: Use setitimer() for millisecond precision 2023-11-16 21:58:45 +01:00
678121c3ed
kernel+libc: Add setitimer()
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-16 21:48:18 +01:00
c4d2847da1
kernel: Rework the entire time system to use modular clocks
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-15 23:50:04 +01:00
e28e1c682c
kernel: Tweak some timer code
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-04 10:47:41 +01:00
dfebdce689
kernel: Add a timer queue with more versatility than simple alarm()
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-03 19:53:34 +01:00
54ec441000
libluna: Add LinkedList::add_before() to mirror add_after()
Need this for later.
2023-11-03 19:52:36 +01:00