I am currently working on the GNU operating system in order to create a secure libre Lisp workstation.
By combining:
- GNU/Linux Guix distribution
- GNU Emacs
- A Lisp window manager (like exwm or StumpWM)
...one obtains a computing style and programming environment that can be referred to as Lisp user space. This is a modern iteration of the Lisp machines of yore.
Any of the system's application code can be made available to you at any time. You can be aware of all the code that is running on your machine, which puts GNU among the most secure operating systems on Earth.
By combining GNU Guix's high-performance computing emphasis with advanced Clojure parallel computing libraries, one ends up with a powerful workstation for expressing complex workloads in elegant forms.
Secure yourself against malevolent state actors and never trust someone else's unverified binaries again, as you can build from the source all the way down.
Lisp user space provides an introspective, hackable, and transactionable operating system that can be modified live in a REPL.
Lisp user space is centered on text-based user interfaces instead of graphical user interfaces, and can be used without a mouse, which makes it easier to use for people living with disabilities as well as power users.
Emacs has text-based keyboard-driven applications for all the major desktop environment functions, such as window management, file management, web browsing, mail, streaming music, chatting, shell management, version control, and life organization. All these tools can be modified and adjusted live as you use them.
If in POSIX everything is truly a file, then the logical conclusion is that the ideal POSIX "desktop environment" should be a file editor, and the only editor that can function as such is GNU Emacs.
The operating system is mostly defined declaratively in Scheme Lisp and the applications are mostly coded imperatively in Emacs Lisp. Both can be inspected and hacked live in a REPL, making it a pure expression of the libre software ethic, and an incredibly versatile tool for a skilled programmer.
I continue to progress on publishing tools and documentation for this rich computing style.
Follow me on GitHub to keep track of my contributions to various Lisp user space codebases! Development on the GNU operating system itself is limited to the official mailing lists for each project. And follow me on Medium in order to follow my latest announcements and tutorials.
Are you interested in having an advanced Lisp-based workstation that you can hack live to suit your needs? Getting started is easy:
- Install the Guix GNU/Linux distribution
- Only install nonguix if you truly require additional hardware support
- Install Emacs (
guix install emacs
) - Install Geiser (
M-x package-install geiser-guile
) and SLY (M-x package-install sly
) - Install a Lisp window manager like exwm (
M-x package-install exwm
) or StumpWM (guix install stumpwm
) - Bootstrap your window manager (exwm, StumpWM)
- Boot into your window manager (exwm, StumpWM)