Peter MacDonald (computer programmer)

Peter MacDonald is a Canadian software engineer, best known as the creator of Softlanding Linux System (SLS), widely regarded as the first complete Linux distribution. Some of his work served as a foundation of Wine. He also created the Tcl web browser BrowseX, and the PDQI suite of Tcl utilities.

Current projects include Jsish, an embeddable javascript interpreter with builtin type-checking.

Biography
Peter Charles MacDonald was born in Victoria, British Columbia on June 28, 1957. He graduated from the Computer Science program of the University of Victoria with a BSc (1989) and MSc (1996, master's thesis: Decomposing the Linux Kernel into Dynamically Loadable Modules).

SLS
MacDonald co-developed early features of the Linux kernel in the early 1990s, including shared libraries, pseudo terminals, the select call and virtual consoles. He announced Softlanding Linux System (SLS), the first standalone Linux install, for testing in August 1992 (on 15 floppy disks), and for general release in October 1992 (recommending at least 10 MB of disk space).

SLS became popular, but also drew criticism. MacDonald was criticized for trying to make money on free software, but defended by Linus Torvalds. Two of the early Linux distributions were made specifically in reaction to SLS, Ian Murdock's Debian to compensate for SLS's bugs, and Patrick Volkerding's Slackware to include installer patches which weren't added to SLS, and which MacDonald wouldn't allow Volkerding to distribute independently.

Other software
The initial 1993 Wine Windows compatibility layer was based on Tcl/Tk windowing functions MacDonald wrote (though later rewritten as direct Xlib calls).

MacDonald founded BrowseX Systems in 1999, and put out version 1.0 of BrowseX, an open source Tcl-based cross-platform web browser, meant to be smaller and faster than Netscape. The last update of BrowseX was in 2003; the company was renamed to PDQ Interfaces Inc., and put out a set of various TCL based utilities.

Jsish: a javascript interpreter with builtin sqlite, json, websocket, and zvfs support.