summaryrefslogtreecommitdiff
path: root/Userland
AgeCommit message (Collapse)Author
2019-05-07Shell: Move the Shell to a separate directory and let's call it "Shell" :^)Andreas Kling
2019-05-07Shell: Use a Vector<char> for the main input buffer.Andreas Kling
2019-05-04date: Add "-u" argument for printing current Unix timestamp.Andreas Kling
2019-05-03Kernel+Userland: Implement mknod() syscall and add a /bin/mknod program.Andreas Kling
2019-05-02strace: Allow "strace command" to trace a process from start to finish.Andreas Kling
Tracing a specific pid is now done via "strace -p PID". To ensure we don't miss any syscalls, we fork and have the child immediately SIGSTOP itself. Then when the parent has set up the systrace() fd, we send SIGCONT to the child which then execs the command. :^)
2019-05-02sh: Log to debugger how long command took.Andreas Kling
2019-04-26sh: Remove debug spam during command launch.Andreas Kling
2019-04-26sh: Add a simple "export" command for setting environment variables.Andreas Kling
2019-04-26Userland: Add a simple /bin/tr program.Andreas Kling
2019-04-26Userland: Add a simple /bin/sort program.Andreas Kling
2019-04-26Userland: Add a simple /bin/head program.Andreas Kling
2019-04-25sh: Make "cd" jump to the home directory. And also let's set $HOME.Andreas Kling
Nobody else is setting $HOME right now, so we might as well do it here. This should eventually be done by some sort of "login" program.
2019-04-25sh: Support erasing a whole word with WERASE (^W).Andreas Kling
2019-04-25sh: Add support for redirecting stdin and stdout with < and >.Andreas Kling
This is certainly about time. The kernel has had all the necessary support in place for months, and I just kept postponing working on the shell. :^)
2019-04-25cat: Just use fd 0 when no arguments are passed.Andreas Kling
I'm not sure why it seemed necessary at some point to open /dev/stdin rather than simply using the already-open fd 0.
2019-04-25sh: Refactor command parsing into a separate class.Andreas Kling
2019-04-25sh: Add basic command piping support.Andreas Kling
2019-04-25fgrep: Don't repeat old incoming data if fgets() failed.Andreas Kling
2019-04-25Userland: Add a simple /bin/echo program.Andreas Kling
2019-04-23Put assertions behind a DEBUG flag to make it easy to build without them.Andreas Kling
2019-04-23touch: Newly created files were accidentally marked as FIFO's.Andreas Kling
2019-04-22Kernel: Add a systrace() syscall and implement /bin/strace using it.Andreas Kling
Calling systrace(pid) gives you a file descriptor with a stream of the syscalls made by a peer process. The process must be owned by the same UID who calls systrace(). :^)
2019-04-21Include Makefile.common in all other Makefiles.Andreas Kling
2019-04-20Kernel: Remove "restorer" field from SignalActionData.Andreas Kling
I was originally implementing signals by looking at some man page about sigaction() to see how it works. It seems like the restorer thingy is system-specific and not required by POSIX, so let's get rid of it.
2019-04-20Sprinkle use of AK::Vector in various places.Andreas Kling
Some of these are less helpful than others. Avoiding a bunch of mallocs in the event loop wakeup code is definitely nice.
2019-04-20Get rid of SERENITY macro since the compiler already defines __serenity__Andreas Kling
This makes it a bit easier to use AK templates out-of-tree.
2019-04-15Userland: Add a /bin/basename program.Andreas Kling
2019-04-15Userspace: gitignore binariesNicolas Van Bossuyt
2019-04-14Userland: Oops, that merge broke the build, just needed a few tweaks. :^)Andreas Kling
2019-04-14Userland: Maybe find is overkillNicolas Van Bossuyt
2019-04-14Userland: making the makefile smarterNicolas Van Bossuyt
2019-04-14Uptime: making the ouput prettierVAN BOSSUYT Nicolas
Just like the -p option on linux
2019-04-14Kernel: Add /proc/uptime file (number of seconds since boot.)Andreas Kling
Also added a simple /bin/uptime to pretty-print this information. :^)
2019-04-10Introduce LibCore and move GElapsedTimer => CElapsedTimer.Andreas Kling
I need a layer somewhere between AK (usable both by userspace and kernel) and LibGUI (usable by userspace except WindowServer.) So here's LibCore.
2019-04-10LibGUI: Move frame painting from GFrame to StylePainter.Andreas Kling
This way it can be used by others who might not have a GFrame object.
2019-04-10LibGUI: Turn GTextBox into a wrapper around a single-line GTextEditor.Andreas Kling
2019-04-07Kernel+Userland: Add the rename() syscall along with a basic /bin/mv.Andreas Kling
2019-03-28LibGUI: Improve GFrame's look for Container shapes.Andreas Kling
This is now starting to look like a proper container. Very nice :^)
2019-03-28Userland: Add a simple GFrame testing window to guitest2.Andreas Kling
2019-03-28LibGUI: Add a GPainter class that inherits from Painter.Andreas Kling
This gets rid of the last little piece of LibGUI knowledge in Painter.
2019-03-27Kernel: Add Inode::truncate(size).Andreas Kling
- Use this to implement the O_TRUNC open flag. - Fix creat() to pass O_CREAT | O_TRUNC | O_WRONLY. - Make sure we truncate wherever appropriate.
2019-03-27LibC: Run constructors on process startup.Andreas Kling
Cooperate with the compiler to generate and execute the _init_array list of constructor functions on userspace program statup. This took two days to get working, my goodness. :^)
2019-03-27LibC: Time-related POSIX compliance fixes.Andreas Kling
2019-03-24QuickShow: Fill the window with white if the opened image has alpha.Andreas Kling
2019-03-22LibGUI: Add a setting to make GLabel stretch its icon.Andreas Kling
Use this in QuickShow to allow arbitrarily scaling the opened image.
2019-03-22LibGUI: Add a GProgressBar widget.Andreas Kling
2019-03-21WindowServer: Support PNG wallpapers.Andreas Kling
Fix up /bin/pape so it tells the WindowServer which wallpaper file to use.
2019-03-21Userland: Turn off double buffering in QuickShow.Andreas Kling
Since this program is primarily used to display potentially huge but still static images, let's not put extra strain on the system by double buffering.
2019-03-21PNGLoader: Support for color type 2 (RGB triplets) and multiple IDAT chunks.Andreas Kling
2019-03-21SharedGraphics: Implement a simple PNG decoder.Andreas Kling
This is extremely unoptimized, but it does successfully load "folder32.png" so it must be at least somewhat correct. :^)