1
0
forked from extern/nix-config
Commit Graph

753 Commits

Author SHA1 Message Date
Donovan Glover
fa82cc7a1d
PKGBUILDs: Add Makefile
This Makefile automates the process of creating and installing the RPM
package. It hasn't been tested yet, so I may need to fix it later.
2018-11-12 22:57:54 -05:00
Donovan Glover
d5844458b3
PKGBUILDs: Add muya.spec
Here is the spec file I use to set up Fedora machines. It is located in
the PKGBUILDs directory since both my Arch and Fedora setups share the
same source files.
2018-11-12 22:35:11 -05:00
Donovan Glover
a6687d45e0
PKGBUILDs: Add sources
Here are the source files I package with my PKGBUILDs. The tari-scripts
directory features some color scripts from around the web. tari-urxvt
contains patches for urxvt, tari-util houses launch.c, and tari-web is
where my mozilla.cfg is located.
2018-11-12 22:03:37 -05:00
Donovan Glover
881f587fdc
meta: Add PKGBUILDs
Instead of having one big PKGBUILD, I have opted instead to split my
Arch configuration into multiple PKGBUILDs.

Of course, splitting the packages *too much* has diminishing returns,
but some separation makes it easier for both myself and others to pick
and choose any wanted functionality.
2018-11-12 21:32:28 -05:00
Donovan Glover
13afe8d8cd
fedora: Add vendor scripts
These scripts can be manually updated by running the `make update`
command. When you do so, visually compare the diffs. This is to
ensure that nothing particularly naughty happened upstream.

Note that this is not a fool-proof solution since one can simply
modify the content returned by any other location a script requests.
2018-11-11 12:11:44 -05:00
Donovan Glover
534b38ebbf
fedora: Update Makefile
This hasn't been tested yet, but it *should* work.

Most of the software I install is handled by the RPM, with the
exception of software not present in the official repositories.

The install scripts for these software are stored locally in this
repository since I want an easy way to keep track of the diffs. Of
course, you should run the `make update` command yourself to get the
latest updates and visually compare any differences from upstream.
2018-11-11 11:53:49 -05:00
Donovan Glover
5627f07961
bspwm: Update kitty config
This commit adds some functionality not present in the initial commit.
Note that changing background opacity will not work when executed inside
tmux.
2018-11-11 11:38:05 -05:00
Donovan Glover
a349c5805c
fedora: Update README
Since I learned a bit about RPMs and how to make them, I can drastically
simplify the instructions required to replicate my Fedora setup.
2018-11-11 11:17:10 -05:00
Donovan Glover
e164fd07e8
docs: Update README 2018-11-11 11:09:15 -05:00
Donovan Glover
e2df340589
extras: Update httpie config to 1.0.0
Note that this file is automatically formatted by httpie. To avoid
formatting diffs, any changes you make should follow the format
httpie uses.
2018-11-11 10:25:11 -05:00
Donovan Glover
207ef19a7b
meta: Add kitty
I've gone through a lot of terminal emulators by now, and have always
switched between URxvt and Termite (due to the features they support).

For URxvt, this is particularly cumbersome since the version in the
official repositories does not have the patches required for practical
use. Even with patches applied, URxvt supports neither true color nor
emoji. Termite worked well, but it lacked image support.

Kitty features all of the following:

- True color support
- Image support
- Emoji support
- Icon fonts support
- Transparency support

Additionally, projects like Ranger and Neofetch have already taken the
initiative to support the Kitty image protocol (which, luckily for me,
are the only programs I use with images in the terminal).

Why not Alacritty, the other GPU-based terminal?
---

Although Alacritty is also very performant, there are several things
that keep me away from this terminal emulator.

Alacritty, as of this writing, renders neither images nor emoji.
Although it is certainly possible to use a terminal emulator without
either of these, the lack of these features limits what you can do with
the program you (presumably) spend the most time with on your computer.

The current config setup is "all or nothing"; I cannot remove defaults
from my alacritty.yml and expect those same defaults to carry over.
Even common terminal escape sequences are hard-coded into the config
file, which cannot be removed without breaking things.

Some other benefits of kitty:

- Full image support in transparent terminals
- w3m hack + loop is no longer necessary for persistent images
- No weird artifacts around the image
- Can highlight text without affecting the image
- Images aren't lost after switching between desktops
2018-11-07 18:20:19 -05:00
Donovan Glover
0eb271a50c
tmux: Add true color support
It turns out that even if your terminal supports true color, it won't be
used in tmux unless you set the option explicitly. Now it is possible to
enjoy the benefits of true color inside tmux.
2018-11-07 11:34:19 -05:00
Donovan Glover
abe2fab50d
bspwm: Use tmux by default in all cases
Since tmux is only a problem when using neofetch with the w3m image
backend, I have instead added a new keybind to handle this use case,
which floats the terminal by default as well.
2018-11-04 15:20:48 -05:00
Donovan Glover
cddcb504d3
stow: Split systemd package into bspwm and ssh-agent
Since urxvt will only be used on my bspwm setup, and since ssh-agent
can be used on non-bspwm setups as well, it makes sense to separate
the two.
2018-11-04 11:39:56 -05:00
Donovan Glover
f06df4e1ab
fedora: Add font settings
They say that good font rendering makes any setup look better.
2018-11-01 21:58:38 -04:00
Donovan Glover
b2c252d82a
meta: Add executable bit to bspwmrc and other scripts
After a considerable amount of research, I finally understand how to use
chmod and what file permissions in linux actually mean.

It turns out that git can commit both regular files (644 permission) and
executable files (755 permission). This is great since changing file
permissions manually after a git clone is no longer needed.

This useful feature is enabled by default, however, it seems like I
disabled it a long time ago. If this is you, simply re-enable it by
setting `filemode` to true in your .git/config.
2018-11-01 20:58:24 -04:00
Donovan Glover
3ebc47ca28
bspwm: Add dropdown.sh
This commit makes it possible to toggle any terminal you want with
super + backslash. If the terminal doesn't exist already, it will
be created for you.
2018-11-01 16:14:34 -04:00
Donovan Glover
f3d129362e
misc: Update docs
Made dependency lists a bit more consistent and reverted some of the
Arch Linux wording since it felt a bit off. Even the official website
refers to Arch Linux as Arch from time to time.
2018-10-31 13:03:41 -04:00
Donovan Glover
2fa91642d3
vim: Install vim-plug if it is not present
This commit means that manually copy/pasting the curl command on new
machines is no longer necessary.
2018-10-31 12:35:27 -04:00
Donovan Glover
8056132e7b
archlinux: Add back install scripts
Although I removed install scripts in a previous commit, with the
current structure of this repository, it makes sense to include
them once again.
2018-10-31 11:33:31 -04:00
Donovan Glover
573257c518
meta: Use archlinux instead of arch
The word "arch" by itself may be confused with architecture, so it's
probably best to go with "archlinux" instead.
2018-10-31 11:28:48 -04:00
Donovan Glover
f548384980
meta: Add Arch rice
Here is the start of documentation for my Arch Linux rice. Although
it is mostly reproducible, there are still some parts I'm working on.
2018-10-31 11:20:00 -04:00
Donovan Glover
816b4ea9ff
fedora: Change cursor theme to Breeze
This makes the cursor theme consistent with my Arch rice.
2018-10-31 10:04:48 -04:00
Donovan Glover
9ac25f199c
fedora: Add Makefile
This commit adds a very basic Makefile that simplifies the tasks
required for the Fedora rice. Still a work in progress, but mostly
functional.
2018-10-31 02:42:58 -04:00
Donovan Glover
96e8a778f0
meta: Add Fedora rice
Instead of having a separate repository for each rice, I can instead put
them in this repository (prefixed with ., so that they're not indexed by
the stow Makefile).
2018-10-31 02:38:07 -04:00
Donovan Glover
02019be0d3
stow: Merge wal with bspwm
Realistically, you won't need my wal config if you are not using my
bspwm setup, since wal does a good job at otherwise changing most other
color schemes that you may find in, e.g., a GNOME or Plasma setup.
2018-10-30 16:49:10 -04:00
Donovan Glover
522b92c9cd
stow: Merge term with bspwm
Realistically, you'll be using neither termite nor urxvt if you have
access to a desktop environment since those usually include their own
terminal emulator that works out of the box anyway.

Additionally, many of the benefits from termite and urxvt are not a
necessity in other desktop environments.
2018-10-30 16:36:15 -04:00
Donovan Glover
700d99ae7c
docs: Update README
Fixed some typos and decreased the amount of repetitive information.
2018-10-30 11:24:23 -04:00
Donovan Glover
082f64f763
Makefile: Add systemd-enable-now target 2018-10-27 18:37:47 -04:00
Donovan Glover
6d4c594b1a
docs: Add ssh-agent instructions 2018-10-27 16:03:11 -04:00
Donovan Glover
80ca00bbae
vim: Add .gitkeep for undo directory
Instead of remembering to create the undo directory every time I use
vim on a different machine, stow can do that instead.
2018-10-27 16:00:01 -04:00
Donovan Glover
73e6cfec28
misc: Update dotfiles
lium and lfox are not needed anymore since I use rofi.
2018-10-27 15:48:08 -04:00
Donovan Glover
d773743979
docs: Fix some typos and missing instructions 2018-10-27 15:44:59 -04:00
Donovan Glover
eff7623a9a
Makefile: Don't repeat yourself
Instead of writing the same if conditional in three different places,
I can set a variable based on the conditional and use that instead.
2018-10-23 23:15:43 -04:00
Donovan Glover
21814cda7f
docs: Add READMEs for bspwm and extras
Now that all the READMEs have been added, all that's left is to polish
them as time goes on. It may be useful to add images to each of the
package directories to show visually what each contain.
2018-10-23 22:19:36 -04:00
Donovan Glover
19b91ec9ce
docs: Add READMEs for wal, term, and editorconfig
Also, after some testing, it turns out that my previous assumption about
systemd was wrong. Placing a service in default.target.wants directly
will cause the service to instead not be recognized by systemd.
2018-10-23 21:22:05 -04:00
Donovan Glover
1b0097ebc6
docs: Add READMEs for code, gpg, and systemd
Note that systemd usage information needs to be revised since systemd
user units appear to be enabled by default, and may be started by
default when placed in the default.target.wants directory.
2018-10-23 16:25:45 -04:00
Donovan Glover
43e79e2914
docs: Add READMEs for git, plasma, and tmux
Whether or not Plasma-specific dotfiles are still needed is
questionable, but I will keep this directory for now.
2018-10-23 14:25:45 -04:00
Donovan Glover
c3f85fc871
docs: Add READMEs for fish, vim, and xmodmap
Since I'd like other people to try my dotfiles, I will be writing
READMEs for each package directory, which should hopefully cover
anything a user needs to do in order to use the package.
2018-10-23 13:01:16 -04:00
Donovan Glover
ccf3623f2c
Update README
Since it is now possible (once more) to stow individual packages (this
time with make), the README has been updated to reflect that.
2018-10-22 23:37:39 -04:00
Donovan Glover
08334b59ed
stow: Split desktop package into term and xmodmap
"Desktop" was a really generic package name that didn't describe the
contents of what it contained. Since we already have a catch-all
directory (extras), I separated "desktop" into what it actually was:
settings for urxvt/termite and settings for xmodmap.

Some other programs may also use xrdb. The only reason the term files
are not in the bspwm directory instead is because it may be useful to
use urxvt or termite in non-bspwm environments.
2018-10-22 23:26:25 -04:00
Donovan Glover
20de137550
Update Makefile to support multiple package directories
It is now possible to install only a specific set of dotfiles instead
of everything at once. To do this, simply run make and set the "package"
variable from the shell. For example, to only stow my vim config, use
`make package=vim`.
2018-10-22 19:42:00 -04:00
Donovan Glover
b85f938296
stow: Add directories for vim, wal, and extras
The extras directory contains lesser-known programs that may
not be commonly stowed.
2018-10-22 17:09:28 -04:00
Donovan Glover
5de5e51398
stow: Add directories for code, desktop, and editorconfig
The desktop directory is used for desktop-related things that may be
useful outside of bspwm (such as caps lock functioning as ctrl +
escape). Whether or not this is needed is questionable, but it is an
option for now.

It may be better to further split these directories and avoid the
generic word "desktop" altogether.
2018-10-22 15:24:53 -04:00
Donovan Glover
3d541e96fd
stow: Add directories for fish, gpg, and tmux
Note that all these new directories are spread across multiple commits
since I don't want any one commit to be *too* big.
2018-10-22 15:17:19 -04:00
Donovan Glover
ea351fef7e
stow: Add directories for git, plasma, and systemd
Since these config files are specific enough, they warrant their own
package directories.
2018-10-22 15:09:58 -04:00
Donovan Glover
a0e535b2b5
stow: Move bspwm-specific dotfiles to separate directory
Previously I wanted to stow everything at once, but now that I know how
to use Makefiles a bit more, I can still stow everything at once with
multiple directories. Additionally, this allows people (myself included)
to only stow the dotfiles they want, such as only vim or only fish.

Instead of separating *every* file into its own directory, I've opted
instead to group common configs together and only use separate
directories where they make sense (e.g. a vim config).
2018-10-22 15:03:01 -04:00
Donovan Glover
c931883f52
Use urxvtc instead of urxvtcd
Since urxvtd is now managed with systemd, starting an init script like
urxvtcd is no longer necessary.
2018-10-22 01:02:06 -04:00
Donovan Glover
b9ea57bc2d
polybar: Slight refactor to config file
Since padding-left and padding-right will always be the same in this
case, I've gone ahead and made it simply "padding".

Since keys can use the values from other keys, some duplication in the
module sections can be avoided.
2018-10-21 22:10:13 -04:00
Donovan Glover
92adb1f1bb
bspwm: Don't use single_monocle by default
Having a monocle-like layout on a tiled desktop layout is more
confusing than it needs to be. If single_monocle is ever needed,
it can be manually set on-demand instead.
2018-10-21 21:58:03 -04:00