add WIP wiki articles and stuff
This commit is contained in:
parent
c4248851dc
commit
b8a6896498
66
index.css
66
index.css
|
@ -10,15 +10,28 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
.main {
|
||||||
|
background-color: #000000;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
background-color: #222222;
|
||||||
|
}
|
||||||
|
|
||||||
* {
|
* {
|
||||||
font-family: Helvetica, sans-serif;
|
font-family: Monospace;
|
||||||
font-size: 13px;
|
font-size: 11px;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #6666ff;
|
||||||
|
}
|
||||||
|
|
||||||
blockquote {
|
blockquote {
|
||||||
background-color: #f0f8f0;
|
background-color: #0f070f;
|
||||||
margin: 0px 0px 12px 20px;
|
margin: 0px 0px 12px 20px;
|
||||||
padding-top: 4px 10px 4px 10px;
|
padding-top: 4px 10px 4px 10px;
|
||||||
}
|
}
|
||||||
|
@ -50,7 +63,7 @@ h3 {
|
||||||
}
|
}
|
||||||
|
|
||||||
hr {
|
hr {
|
||||||
border-top: 1px solid #cccccc;
|
border-top: 1px solid #222222;
|
||||||
border-bottom: 0;
|
border-bottom: 0;
|
||||||
border-left: 0;
|
border-left: 0;
|
||||||
border-right: 0;
|
border-right: 0;
|
||||||
|
@ -77,7 +90,7 @@ p {
|
||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
font-family: Menlo, Courier, monospace;
|
font-family: Monospace, monospace;
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
margin-left: 12px;
|
margin-left: 12px;
|
||||||
margin-bottom: 12px;
|
margin-bottom: 12px;
|
||||||
|
@ -91,7 +104,7 @@ pre {
|
||||||
}
|
}
|
||||||
|
|
||||||
code {
|
code {
|
||||||
font-family: Menlo, Courier, monospace;
|
font-family: Monospace, monospace;
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -100,14 +113,16 @@ table {
|
||||||
}
|
}
|
||||||
|
|
||||||
table, td {
|
table, td {
|
||||||
|
background-color: #000000;
|
||||||
padding: 2px;
|
padding: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
textarea {
|
textarea {
|
||||||
font-family: Menlo, Courier, monospace;
|
font-family: Monospace, Courier, monospace;
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
width: 99%;
|
width: 99%;
|
||||||
background-color: #ffffee;
|
background-color: #000011;
|
||||||
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.main {
|
.main {
|
||||||
|
@ -115,32 +130,30 @@ textarea {
|
||||||
}
|
}
|
||||||
|
|
||||||
.note {
|
.note {
|
||||||
background-color: #ffffcc;
|
background-color: #000011;
|
||||||
padding: 4px;
|
padding: 4px;
|
||||||
margin: 0 8px 8px 8px;
|
margin: 0 8px 8px 8px;
|
||||||
color: #666644;
|
color: #9999bb;
|
||||||
border: solid 1px #666644;
|
border: solid 1px #9999bb;
|
||||||
}
|
}
|
||||||
|
|
||||||
.titlebar {
|
.titlebar {
|
||||||
background-color: #222222;
|
background-color: #111111;
|
||||||
background: -webkit-gradient(linear, left top, left bottom, from(#555555), to(#000000));
|
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
font-size: 18px;
|
font-size: 10px;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
padding: 4px 4px 4px 12px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.titledate {
|
.titledate {
|
||||||
font-size: 10px;
|
font-size: 10px;
|
||||||
color: #999999;
|
color: #777777;
|
||||||
}
|
}
|
||||||
|
|
||||||
.toolbar {
|
.toolbar {
|
||||||
background-color: #777777;
|
background-color: #222222;
|
||||||
background: -webkit-gradient(linear, left top, left bottom, from(#666666), to(#444444));
|
position: sticky;
|
||||||
font-size: 12px;
|
top: 0;
|
||||||
padding: 4px 4px 4px 12px;
|
font-size: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
a.tool {
|
a.tool {
|
||||||
|
@ -150,15 +163,22 @@ a.tool {
|
||||||
}
|
}
|
||||||
|
|
||||||
a.missing-link {
|
a.missing-link {
|
||||||
color: #ba0000;
|
color: #ed123e;
|
||||||
|
}
|
||||||
|
|
||||||
|
input {
|
||||||
|
background-color: #111111;
|
||||||
|
color: #ffffff;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
input.tool {
|
input.tool {
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
color: #000000;
|
background-color: #222222;
|
||||||
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
img {
|
img {
|
||||||
max-width: 100%;
|
max-width: 50%;
|
||||||
height: auto;
|
height: auto;
|
||||||
}
|
}
|
||||||
|
|
164
index.css.orig
Normal file
164
index.css.orig
Normal file
|
@ -0,0 +1,164 @@
|
||||||
|
/*
|
||||||
|
* W2
|
||||||
|
*
|
||||||
|
* Copyright (C) 2007-2011 Steven Frank <http://stevenf.com/>
|
||||||
|
*
|
||||||
|
* Code may be re-used as long as the above copyright notice is retained.
|
||||||
|
* See README.txt for full details.
|
||||||
|
*
|
||||||
|
* Written with Coda: <http://panic.com/coda/>
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
* {
|
||||||
|
font-family: Helvetica, sans-serif;
|
||||||
|
font-size: 13px;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
background-color: #f0f8f0;
|
||||||
|
margin: 0px 0px 12px 20px;
|
||||||
|
padding-top: 4px 10px 4px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
form {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
line-height: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
font-size: 13px;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
border-top: 1px solid #cccccc;
|
||||||
|
border-bottom: 0;
|
||||||
|
border-left: 0;
|
||||||
|
border-right: 0;
|
||||||
|
margin-top: 12px;
|
||||||
|
margin-bottom: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
padding-left: 12px;
|
||||||
|
margin-left: 12px;
|
||||||
|
margin-bottom: 12px;
|
||||||
|
list-style-position: inside;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol {
|
||||||
|
margin-left: 12px;
|
||||||
|
margin-bottom: 12px;
|
||||||
|
padding-left: 12px;
|
||||||
|
list-style-position: inside;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin: 12px 12px 12px 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
font-family: Menlo, Courier, monospace;
|
||||||
|
font-size: 11px;
|
||||||
|
margin-left: 12px;
|
||||||
|
margin-bottom: 12px;
|
||||||
|
|
||||||
|
/* stroke each browser so that they wrap lines in the pre tag */
|
||||||
|
white-space: pre-wrap; /* css-3 */
|
||||||
|
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
|
||||||
|
white-space: -pre-wrap; /* Opera 4-6 */
|
||||||
|
white-space: -o-pre-wrap; /* Opera 7 */
|
||||||
|
word-wrap: break-word; /* Internet Explorer 5.5+ */
|
||||||
|
}
|
||||||
|
|
||||||
|
code {
|
||||||
|
font-family: Menlo, Courier, monospace;
|
||||||
|
font-size: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
}
|
||||||
|
|
||||||
|
table, td {
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
textarea {
|
||||||
|
font-family: Menlo, Courier, monospace;
|
||||||
|
font-size: 11px;
|
||||||
|
width: 99%;
|
||||||
|
background-color: #ffffee;
|
||||||
|
}
|
||||||
|
|
||||||
|
.main {
|
||||||
|
padding: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.note {
|
||||||
|
background-color: #ffffcc;
|
||||||
|
padding: 4px;
|
||||||
|
margin: 0 8px 8px 8px;
|
||||||
|
color: #666644;
|
||||||
|
border: solid 1px #666644;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titlebar {
|
||||||
|
background-color: #222222;
|
||||||
|
background: -webkit-gradient(linear, left top, left bottom, from(#555555), to(#000000));
|
||||||
|
color: #ffffff;
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 4px 4px 4px 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titledate {
|
||||||
|
font-size: 10px;
|
||||||
|
color: #999999;
|
||||||
|
}
|
||||||
|
|
||||||
|
.toolbar {
|
||||||
|
background-color: #777777;
|
||||||
|
background: -webkit-gradient(linear, left top, left bottom, from(#666666), to(#444444));
|
||||||
|
font-size: 12px;
|
||||||
|
padding: 4px 4px 4px 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.tool {
|
||||||
|
font-size: 11px;
|
||||||
|
margin-right: 8px;
|
||||||
|
color: #eeeeee;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.missing-link {
|
||||||
|
color: #ba0000;
|
||||||
|
}
|
||||||
|
|
||||||
|
input.tool {
|
||||||
|
font-size: 11px;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
3
mktree.sh
Executable file
3
mktree.sh
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/sh
|
||||||
|
URL="https://codeberg.org/speedie/speedwm/raw/branch/master"
|
||||||
|
tree -I md5 -f --noreport --charset ascii | grep -vE "profiles|metadata|md5|Manifest|README|xml|repo_name|conf|directories|push|tree|LICENSE" | sed -e 's/| \+/ /g' -e 's/[|`]-\+/ */g' -e 's:\(* \)\(\(.*/\)\([^/]\+\)\):\1[\4](\2):g' | tail -n+2 | sed "s|]([.]|](${URL}|g"
|
183
pages/Getting Started.txt
Normal file
183
pages/Getting Started.txt
Normal file
|
@ -0,0 +1,183 @@
|
||||||
|
Getting Started
|
||||||
|
---------------
|
||||||
|
|
||||||
|
[speedwm](https://speedie.gq/projects/speedwm.php) is a window manager forked
|
||||||
|
from [dwm](https://dwm.suckless.org) (also known as dynamic window manager).
|
||||||
|
It manages the user's open windows and tiles them according to a set layout.
|
||||||
|
This is what makes it dynamic, unlike windows managers like i3 which you may
|
||||||
|
be used to.
|
||||||
|
|
||||||
|
### This is an X11 window manager, you need to use X.
|
||||||
|
|
||||||
|
Yes, this is an X11 window manager. I do not like Wayland and it's
|
||||||
|
philosophies, and I will not
|
||||||
|
support it for multiple reasons. See [[Wayland support]] for my reasoning
|
||||||
|
behind this. Hate me all you want for it!
|
||||||
|
|
||||||
|
If it isn't clear, `xorg-server` as well as `xinit` or `sx` is pretty much
|
||||||
|
expected. You can also use display managers like `sddm` or `lightdm` although
|
||||||
|
it should be mentioned that `ly` is **known** to have issues with dwm and
|
||||||
|
therefore also
|
||||||
|
speedwm. Do note that setting up X11 is out of the scope of this wiki, and you
|
||||||
|
need to figure out how to do that yourself.
|
||||||
|
|
||||||
|
### Supported operating systems
|
||||||
|
|
||||||
|
This is not some arbitrary requirement. While it may run if it's not listed
|
||||||
|
here, I will not be providing support due to having a lack of experience with
|
||||||
|
said operating system. The main operating systems that **do not** support
|
||||||
|
speedwm are macOS and Microsoft Windows. UNIX like operating systems are the
|
||||||
|
most likely to run it.
|
||||||
|
|
||||||
|
- Nearly all GNU/Linux distributions
|
||||||
|
- NixOS and GNU Guix may require separate instructions. I will not provide
|
||||||
|
support for these, use the existing documentation to set it up.
|
||||||
|
- FreeBSD, OpenBSD, NetBSD
|
||||||
|
- There are likely more BSDs that can run speedwm, but I cannot support all
|
||||||
|
of them. Try it and see if it works.
|
||||||
|
|
||||||
|
### Installation on Gentoo GNU/Linux
|
||||||
|
|
||||||
|
Gentoo has slightly different instructions for setting up speedwm. While you
|
||||||
|
can follow along with the generic installation instructions, I have a Gentoo
|
||||||
|
overlay with packages for all speedwm versions.
|
||||||
|
|
||||||
|
To get started, add [my
|
||||||
|
overlay](https://codeberg.org/speedie/speedie-overlay). Then simply `emerge
|
||||||
|
x11-wm/speedwm x11-wm/libspeedwm x11-wm/speedwm-extras`. Optionally, you may
|
||||||
|
`emerge x11-misc/spde` instead, which is a metapackage for a lot of stuff
|
||||||
|
including fonts, and general programs that work well for me.
|
||||||
|
|
||||||
|
If you want to install speedwm using Git, do this by adding the following
|
||||||
|
lines:
|
||||||
|
|
||||||
|
`=x11-wm/speedwm-9999 **`
|
||||||
|
|
||||||
|
`=x11-wm/libspeedwm-9999 **`
|
||||||
|
|
||||||
|
`=x11-wm/speedwm-extras-9999 **`
|
||||||
|
|
||||||
|
to `/etc/portage/package.accept_keywords` and then emerging the packages as
|
||||||
|
per the instructions above.
|
||||||
|
|
||||||
|
### Installation on generic GNU/Linux distributions
|
||||||
|
|
||||||
|
Installing speedwm on most GNU/Linux distributions is very simple. First,
|
||||||
|
determine if you want to install it using Git (the absolute latest version) or
|
||||||
|
using a stable tarball.
|
||||||
|
|
||||||
|
As of 26/01/2023, 1.8 is the latest tarball release
|
||||||
|
which is not very stable. For this reason, it is recommended that you `git
|
||||||
|
clone` the repository. If you do not have `git`, install it using your
|
||||||
|
distribution's package manager. If you're (still) going to be using a 'stable'
|
||||||
|
tarball, you do not need to install `git`.
|
||||||
|
|
||||||
|
While the list of dependencies will vary depending on the speedwm version
|
||||||
|
you're going to install (see docs/dependencies.md for your specific version),
|
||||||
|
below is a list for the latest release, 1.8 and soon to be 1.9.
|
||||||
|
|
||||||
|
- libXft
|
||||||
|
- libXinerama
|
||||||
|
- Used for multi-monitor support. It can be disabled if you do not need it
|
||||||
|
by commenting the XINERAMA libraries in `toggle.mk`.
|
||||||
|
- imlib2
|
||||||
|
- Used for tag previews and window icons. It can be disabled if you do not
|
||||||
|
need it. To do this, comment out `IMLIB2LIBS` in `toggle.mk` and set
|
||||||
|
`USEIMLIB2`, `USEWINICON` and `USETAGPREVIEW` to `0` in `toggle.h`.
|
||||||
|
- pango
|
||||||
|
- yajl
|
||||||
|
- Used for IPC support. It can be disabled if you do not need it. To do
|
||||||
|
this, comment out `YAJLINC` and `YAJLLIBS` in `toggle.mk` and set `USEIPC`
|
||||||
|
to `0` in `toggle.h`.
|
||||||
|
- tcc
|
||||||
|
- This is a compiler. It is used because it is much faster than `clang` or
|
||||||
|
`gcc` (although at the expense of debugging and compatibility). You can
|
||||||
|
swap it out by passing `CC=cc` to the `make` command later when we compile
|
||||||
|
speedwm.
|
||||||
|
|
||||||
|
#### Installation using `git`
|
||||||
|
|
||||||
|
This assumes you have `git` installed.
|
||||||
|
|
||||||
|
`cd` into a location where your normal user (not root) has permission to both
|
||||||
|
read and write. Do not clone the speedwm repository in `~/.config` as speedwm
|
||||||
|
will write configuration files to that location.
|
||||||
|
|
||||||
|
<span style="color:blue">Note: Cloning the repository to `~/.config` is fine
|
||||||
|
if the speedwm source code directory is **not** `speedwm` but speedwm
|
||||||
|
will use the `~/.config/speedwm` directory to store configuration files (not
|
||||||
|
source code).</span>
|
||||||
|
|
||||||
|
From here on, we're going to assume you are in the location `~/Documents`! Run
|
||||||
|
`git clone https://codeberg.org/speedie/speedwm.git speedwm` to clone the
|
||||||
|
repository into a directory named `speedwm`. Provided the repository hasn't
|
||||||
|
moved and you have a working internet connection, you should have received a
|
||||||
|
copy of the speedwm source code.
|
||||||
|
|
||||||
|
You can now `cd speedwm` into it so we can actually install it. If you need to
|
||||||
|
make changes to `toggle.h`, `toggle.mk`, `host.mk` or any other C source code,
|
||||||
|
now is the time to do it.
|
||||||
|
|
||||||
|
Now, it's time to compile it! Provided you have all dependencies installed,
|
||||||
|
this should be very, very easy and quick. Run `make clean install` as root to install
|
||||||
|
speedwm. The binary will be in `/usr/bin/speedwm`. If you need to use a
|
||||||
|
different compiler (tcc in Arch repositories has a few issues), you can run
|
||||||
|
`make CC=cc clean install` to use the system default compiler. Alternatively
|
||||||
|
use `gcc` instead of `cc` or whatever you want.
|
||||||
|
|
||||||
|
After installation, it is *highly* recommended that you move your source code
|
||||||
|
directory to a safe place. speedwm is a source based window manager and
|
||||||
|
**most** (but not all) changes you make to it are going to be done by
|
||||||
|
recompiling the window manager. This is, of course done with the same `make
|
||||||
|
clean install` command you used earlier.
|
||||||
|
|
||||||
|
I recommend you do this by forking the speedwm repository, and putting it on a
|
||||||
|
Git repository somewhere. That way, you can always clone your specific
|
||||||
|
version.
|
||||||
|
|
||||||
|
<span style="color:red">Warning: If you lose your source code, you will be
|
||||||
|
**unable** to make any further changes to speedwm.</span>
|
||||||
|
|
||||||
|
Now follow along with 'Using speedwm'.
|
||||||
|
|
||||||
|
#### Installation using a tarball
|
||||||
|
|
||||||
|
Installation using a tarball works pretty much the same. Visit [the releases
|
||||||
|
page](https://codeberg.org/speedie/speedwm/releases) and get the latest
|
||||||
|
(or an old if you want) tarball. Avoid the 'Source Code (ZIP)' and 'Source
|
||||||
|
Code (TAR.GZ)' options, get the 'speedwm-<version>.tar.gz' file.
|
||||||
|
|
||||||
|
`cd` into a location where your normal user (not root) has permission to both
|
||||||
|
read and write. Make sure `~/.config/speedwm` is not used by anything.
|
||||||
|
|
||||||
|
Now we need to unpack the tarball and get our source code. To do this, you can
|
||||||
|
use the `tar` command. I will spare you the time reading the man page and the
|
||||||
|
command to unpack the tarball is `tar -xpvf
|
||||||
|
/path/to/the/speedwm/tarball.tar.gz`. The `-x` argument here means extract.
|
||||||
|
`-p` means preserve permissions. The `-v` means verbose, we want to see
|
||||||
|
what's going on. `-f` means file, we want to specify a file to unpack.
|
||||||
|
|
||||||
|
After unpacking it, there should be one directory; `speedwm-<version>`. Let's
|
||||||
|
`cd speedwm-<version>` into it. Now it's time to compile speedwm!
|
||||||
|
|
||||||
|
Provided you have all dependencies installed, this should be very, very easy
|
||||||
|
and quick. Run `make clean install` as root to install speedwm. The binary
|
||||||
|
will be in `/usr/bin/speedwm`. If you need to use a different compiler (tcc in
|
||||||
|
Arch repostories has a few issues), you can run `make CC=cc clean install` to
|
||||||
|
use the system default compiler. Alternatively use `gcc` instead of `cc` or
|
||||||
|
whatever you want.
|
||||||
|
|
||||||
|
After installation, it is *highly* recommended that you move your source code
|
||||||
|
directory to a safe place. speedwm is a source based window manager and
|
||||||
|
**most** (but not all) changes you make to it are going to be done by
|
||||||
|
recompiling the window manager. This is, of course done with the same `make
|
||||||
|
clean install` command you used earlier.
|
||||||
|
|
||||||
|
I recommend you do this by putting the source code on a
|
||||||
|
Git or subversion repository somewhere. That way, you can always clone your specific
|
||||||
|
version.
|
||||||
|
|
||||||
|
<span style="color:red">Warning: If you lose your source code, you will be
|
||||||
|
**unable** to make any further changes to speedwm.</span>
|
||||||
|
|
||||||
|
Now follow along with 'Using speedwm'.
|
|
@ -1,5 +1,5 @@
|
||||||
Welcome to the speedwm wiki!
|
Welcome to the speedwm wiki!
|
||||||
-------------
|
----------------------------
|
||||||
|
|
||||||
![image](https://codeberg.org/speedie/speedwm/raw/branch/master/docs/preview.png)
|
![image](https://codeberg.org/speedie/speedwm/raw/branch/master/docs/preview.png)
|
||||||
|
|
||||||
|
|
2
pages/Wayland support.txt
Normal file
2
pages/Wayland support.txt
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
Wayland, and why it sucks.
|
||||||
|
--------------------------
|
Loading…
Reference in a new issue