diff options
author | Mountain Man <43313373+MountainMan1312@users.noreply.github.com> | 2023-06-04 23:58:15 -0400 |
---|---|---|
committer | Mountain Man <43313373+MountainMan1312@users.noreply.github.com> | 2023-06-04 23:58:15 -0400 |
commit | ea88979731f4175b5ec505bc7fb20f779d21d7f5 (patch) | |
tree | 96f3858fd606e5af8d84791db1d04cc3978f54bb | |
parent | Rename `xinitrc` to `.xinitrc` (diff) | |
download | mmosmacs-ea88979731f4175b5ec505bc7fb20f779d21d7f5.tar.gz mmosmacs-ea88979731f4175b5ec505bc7fb20f779d21d7f5.tar.bz2 mmosmacs-ea88979731f4175b5ec505bc7fb20f779d21d7f5.zip |
Overhaul `README.md`
-rw-r--r-- | README.md | 74 |
1 files changed, 64 insertions, 10 deletions
@@ -1,34 +1,88 @@ | |||
1 | # MMOSMacs | 1 | # MMOSMacs |
2 | 2 | ||
3 | MMOSMacs is the Emacs configuration for MMOS, which is currently just an | 3 | MMOSMacs is my personal Emacs configuration, but it's also the precursor to a project I'm planning, ***Elder Linux***, which will be completely based around Emacs as a desktop environment. |
4 | idea I have for an Emacs-centric Linux distribution. MMOSMacs is the | 4 | |
5 | core of my computing experience, and is designed to be a | 5 | MMOSMacs is the core of my computing experience, and is meant to be a jack of all trades, just like me. As such, this is a "kitchen sink" configuration. I make no attempt to separate my personal preferences from the main functionality. |
6 | jack-of-all-trades just like me. | ||
7 | 6 | ||
8 | 7 | ||
9 | ## Installation | 8 | ## Installation |
10 | 9 | ||
10 | ### Get the files in place | ||
11 | |||
11 | First, clone this repository into your `~/.emacs.d` directory. | 12 | First, clone this repository into your `~/.emacs.d` directory. |
13 | |||
12 | ```bash | 14 | ```bash |
13 | cd | 15 | git clone https://github.com/MountainMan1312/MMOSMacs.git ~/.emacs.d |
14 | git clone https://github.com/MountainMan1312/MMOSMacs.git .emacs.d | ||
15 | ``` | 16 | ``` |
16 | 17 | ||
17 | Next create symlinks to the `xinitrc` and `emacs.desktop` files so X | 18 | Next create symlinks to the `.xinitrc` and `emacs.desktop` files so X |
18 | knows what to do: | 19 | knows what to do: |
20 | |||
19 | ```bash | 21 | ```bash |
20 | # Backup your `.xinitrc` file if you feel like it. | 22 | # Backup your `.xinitrc` file if you feel like it. |
21 | # Replace `.xinitrc.old` with whatever you want to name the backup. | 23 | # Replace `.xinitrc.old` with whatever you want to name the backup. |
22 | mv .xinitrc .xinitrc.old | 24 | mv ~/.xinitrc ~/.xinitrc.old |
23 | 25 | ||
24 | # Symlink your `.xinitrc` file | 26 | # Symlink your `.xinitrc` file |
25 | ln -s .emacs.d/xinitrc .xinitrc | 27 | ln -s ~/.emacs.d/.xinitrc ~/.xinitrc |
26 | 28 | ||
27 | # Symlink `emacs.desktop` to add MMOSMacs as an entry to your Display | 29 | # Symlink `emacs.desktop` to add MMOSMacs as an entry to your Display |
28 | # Manager / login screen. | 30 | # Manager / login screen. |
29 | sudo ln -s .emacs.d/emacs.desktop /usr/share/xsessions/emacs.desktop | 31 | sudo ln -s ~/.emacs.d/emacs.desktop /usr/share/xsessions/emacs.desktop |
32 | ``` | ||
33 | |||
34 | Optionally create a symlink to the `.sbclrc` file for SBCL: | ||
35 | |||
36 | ```bash | ||
37 | ln -s ~/.emacs.d/.sbclrc ~/.sbclrc | ||
38 | ``` | ||
39 | |||
40 | ### Install necessary packages | ||
41 | |||
42 | You'll also need the following packages installed on your system. Gentoo packages are listed, you'll have to find your distro's equivalent on your own: | ||
43 | |||
44 | - app-admin/sudo | ||
45 | - app-dicts/aspell | ||
46 | - app-editors/emacs (USE="dynamic-loading gui jit libxml2 threads") | ||
47 | - app-emacs/emacs-common (USE="gui libxml2 X") | ||
48 | - app-emacs/emacs-daemon | ||
49 | - dev-lang/ghc | ||
50 | - dev-lang/rust | ||
51 | - dev-lang/sbcl | ||
52 | - dev-util/shellcheck | ||
53 | - dev-vcs/git | ||
54 | - media-fonts/jetbrains-mono | ||
55 | - media-fonts/noto | ||
56 | - net-libs/nodejs | ||
57 | - net-p2p/syncthing | ||
58 | - sys-devel/gcc (USE="jit") | ||
59 | - x11-apps/setxkbmap | ||
60 | - x11-base/xorg-server | ||
61 | - x11-misc/arandr | ||
62 | |||
63 | |||
64 | ### Setup `~/kb` and Syncthing for `org-roam` knowledgebase | ||
65 | |||
66 | Next you need to setup the `~/kb` directory, which will contain: | ||
67 | |||
68 | - `org-roam-directory` | ||
69 | - `org-agenda-files` | ||
70 | |||
71 | Follow [the Syncthing documentation](https://docs.syncthing.net/) and [the Gentoo Wiki entry for Syncthing](https://wiki.gentoo.org/wiki/Syncthing) to get Syncthing setup. | ||
72 | |||
73 | If you need to access the Syncthing GUI from a different computer, you can allow this by modifying `~/.config/syncthing/config.xml`. Find the following in that file: | ||
74 | |||
75 | ```xml | ||
76 | <gui enabled="true" tls="false" debugging="false"> | ||
77 | <address>127.0.0.1:40469</address> | ||
78 | <apikey>KoafJAnTpYxPSuywYmk9fNP2gpuVLFfb</apikey> | ||
79 | <theme>black</theme> | ||
30 | ``` | 80 | ``` |
31 | 81 | ||
82 | Change the `<address>127.0.0.1:40469</address>` part to `<address>0.0.0.0:40469</address>` to allow connections from other computers. Be sure to disable this once you've got Syncthing setup for security. | ||
83 | |||
84 | |||
85 | |||
32 | 86 | ||
33 | ## Plans | 87 | ## Plans |
34 | 88 | ||