From ea88979731f4175b5ec505bc7fb20f779d21d7f5 Mon Sep 17 00:00:00 2001 From: Mountain Man <43313373+MountainMan1312@users.noreply.github.com> Date: Sun, 4 Jun 2023 23:58:15 -0400 Subject: Overhaul `README.md` --- README.md | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 64 insertions(+), 10 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index 86c24d1..bf25387 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,88 @@ # MMOSMacs -MMOSMacs is the Emacs configuration for MMOS, which is currently just an -idea I have for an Emacs-centric Linux distribution. MMOSMacs is the -core of my computing experience, and is designed to be a -jack-of-all-trades just like me. +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. + +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. ## Installation +### Get the files in place + First, clone this repository into your `~/.emacs.d` directory. + ```bash -cd -git clone https://github.com/MountainMan1312/MMOSMacs.git .emacs.d +git clone https://github.com/MountainMan1312/MMOSMacs.git ~/.emacs.d ``` -Next create symlinks to the `xinitrc` and `emacs.desktop` files so X +Next create symlinks to the `.xinitrc` and `emacs.desktop` files so X knows what to do: + ```bash # Backup your `.xinitrc` file if you feel like it. # Replace `.xinitrc.old` with whatever you want to name the backup. -mv .xinitrc .xinitrc.old +mv ~/.xinitrc ~/.xinitrc.old # Symlink your `.xinitrc` file -ln -s .emacs.d/xinitrc .xinitrc +ln -s ~/.emacs.d/.xinitrc ~/.xinitrc # Symlink `emacs.desktop` to add MMOSMacs as an entry to your Display # Manager / login screen. -sudo ln -s .emacs.d/emacs.desktop /usr/share/xsessions/emacs.desktop +sudo ln -s ~/.emacs.d/emacs.desktop /usr/share/xsessions/emacs.desktop +``` + +Optionally create a symlink to the `.sbclrc` file for SBCL: + +```bash +ln -s ~/.emacs.d/.sbclrc ~/.sbclrc +``` + +### Install necessary packages + +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: + +- app-admin/sudo +- app-dicts/aspell +- app-editors/emacs (USE="dynamic-loading gui jit libxml2 threads") +- app-emacs/emacs-common (USE="gui libxml2 X") +- app-emacs/emacs-daemon +- dev-lang/ghc +- dev-lang/rust +- dev-lang/sbcl +- dev-util/shellcheck +- dev-vcs/git +- media-fonts/jetbrains-mono +- media-fonts/noto +- net-libs/nodejs +- net-p2p/syncthing +- sys-devel/gcc (USE="jit") +- x11-apps/setxkbmap +- x11-base/xorg-server +- x11-misc/arandr + + +### Setup `~/kb` and Syncthing for `org-roam` knowledgebase + +Next you need to setup the `~/kb` directory, which will contain: + +- `org-roam-directory` +- `org-agenda-files` + +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. + +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: + +```xml + +
127.0.0.1:40469
+ KoafJAnTpYxPSuywYmk9fNP2gpuVLFfb + black ``` +Change the `
127.0.0.1:40469
` part to `
0.0.0.0:40469
` to allow connections from other computers. Be sure to disable this once you've got Syncthing setup for security. + + + ## Plans -- cgit v1.2.3