1
0
mirror of https://github.com/tiyn/wiki.git synced 2026-02-22 10:24:47 +01:00

suckless: added ii guide

This commit is contained in:
TiynGER
2020-12-27 20:02:41 +01:00
parent a82bd98412
commit 294689ba92
2 changed files with 49 additions and 0 deletions

41
wiki/suckless/ii.md Normal file
View File

@@ -0,0 +1,41 @@
# II
ii is a suckless tool for the internet relay chat.
`<>` indicated placeholders.
## Join a server
On most servers `ssl` is required.
So you need the `ssl` patch and use `-e` instead of `-p`.
```shell
ii -n <nick> -s <server> -e 9999 &
(sleep 2 &&
echo "/msg NickServ REGISTER `<password>` `<mail>`" > ~/irc/<server>/nickserv/in &)
#(sleep 2 &&
#echo "/msg NickServ IDENTIFY `<password>`" > ~/irc/<server>/nickserv/in &)
```
## Join a channel
```shell
echo "/join <channel-name>" > ~/irc/<server>/in &
```
## Show channel
```shell
tail -f -n 500 \<channel>/out
```
## Write into channel
```shell
echo "\msg <message>" > ~/irc/<server>/<channel>/in
```
## Write private message
```shell
echo "\msg <recipient> <message>" > ~/irc/<server>/<channel>/in
```

41
wiki/suckless/suckless.md Normal file
View File

@@ -0,0 +1,41 @@
# Suckless
Suckless is a community that is best known for minimalist free software.
Notable works include `dwm` and `dmenu`.
## Workflow for installation
Programs written by the suckless community are minimal by default.
`.diff` files are available to patch functionality.
Configuring is done in the `config.h` file.
Expressions in `<>` may need replacement.
- If not already created initialize a git repository
- Create and switch to the `base` brach with `git branch base`
- Download the default version of the suckless program you want to patch
- Add and commit all the files in the `base` branch
- Clean the master branch
with `make clean & rm -f config.h & git reset --hard origin/base`
- Apply patches (this has to be done only once for each branch (except updates))
- Create and switch to a new branch for the patch with `git branch <feature>`
- Download the `.diff` file of the according feature into your directory
- Apply the patch to the current directory with `git apply <feature>.diff`
- Add and commit all the files in the `<feature>` branch
- Merge all branches into master branch (sometimes you can skip already merged
ones)
- Merge each branch (except the new feature) into master with `git merge <feature>`
- (maybe you have to manually merge some errors)
- If you have a `config` branch merge `config` into `master` before adding the
new `feature`
- Finally update the `config` branch
- If not created already create a `config` branch from the `base` branch
- Get the `config.def.h` of `master` into `config` with
`git checkout master config.def.h`
## Programs
- dmenu is a menu with prgram launcher functionality
- dwm is a window manager
- [ii](ii.md) is an IRC client
- slock is a screen locker
- st is a terminal