add WIP wiki articles and stuff

This commit is contained in:
speedie 2023-01-26 19:42:40 +01:00
parent c4248851dc
commit b8a6896498
6 changed files with 398 additions and 26 deletions

View file

@ -9,16 +9,29 @@
* Written with Coda: <http://panic.com/coda/> * Written with Coda: <http://panic.com/coda/>
* *
*/ */
.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,47 +113,47 @@ 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 {
padding: 8px; padding: 8px;
} }
.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
View 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
View 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
View 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'.

View file

@ -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)

View file

@ -0,0 +1,2 @@
Wayland, and why it sucks.
--------------------------