Commit Graph

1001 Commits

Author SHA1 Message Date
Donovan Glover
8c1545c4e8
kitty: Use distinguishable border colors
Now that I use borderless and gapless windows by default, the window
management feature of kitty has become even more useful to me. This
change makes it easy to determine the active kitty window.

Despite having used tmux exclusively before, I have grown accustomed to
the benefits of using kitty as the window manager. tmux may still be
useful, for example, over ssh, but kitty is arguably the way to go for
local user sessions.
2018-12-06 01:37:18 -05:00
Donovan Glover
72411885cd
fish: Add color to man pages
Note that this will affect the output of `env` since color codes are
used. Using a function to invoke man is not ideal since fish uses its
own function for its man pages.
2018-12-05 23:31:06 -05:00
Donovan Glover
c0526a8c55
meta: Modernize polybar
It turns out that merge commit messages are used to keep track of
branch information since the commits themselves only reference other
commits and the actual branches may be deleted at a future date (even
`git clone` by default will not pull in any other branches).

Personally, I find a meaningful commit message more useful than a merge
commit message, so I'll be using that instead. Later when looking at
the commit history, "Merge branch <branch_name>" will not be useful
since the mentioned branches will have already been deleted.

Some projects rebase all changes into one commit, then push that
single commit to master. This seems like a very convenient approach
for small fixes, although if done for larger changes, each individual
commit and its respective explanation is lost.

In particular, this merge commit adds a bunch of config changes that
make polybar (and the system itself) more practical to use. Borders and
gaps are now disabled by default, and can be manually set through bspc
for your ricing needs.
2018-12-05 22:24:51 -05:00
Donovan Glover
454848572a
polybar: Fix padding
It turns out that the left padding from the bspwm labels are used in
addition to the left padding from polybar, so in order for padding to be
consistent across both the left and right sections, the section with the
bspwm module needs to have its padding subtracted by the amount used by
the bspwm labels.
2018-12-05 18:06:34 -05:00
Donovan Glover
72152ad7f6
polybar: Set foreground to background-alt by default
Since basically everything uses background-alt, it's easier to make
each module inherit this property instead.
2018-12-05 17:38:42 -05:00
Donovan Glover
62619de372
polybar: Don't distinguish between empty desktops
Time will tell whether or not I keep this, but one less color makes
it easier to seamlessly integrate the bar with different color schemes.

With this change, the interface is also arguably cleaner.
2018-12-05 17:34:09 -05:00
Donovan Glover
b14e971165
polybar: Decrease bspwm label padding 2018-12-05 15:37:37 -05:00
Donovan Glover
2439706a28
polybar: Show title of focused window at center
It turns out that showing the window title is very useful for actually
using the window manager, especially with no visual indicator through
window borders to determine which one is selected.
2018-12-05 15:35:01 -05:00
Donovan Glover
1e8652d638
polybar: Remove ws-icons
This can be handled by bspwm instead.
2018-12-05 14:51:59 -05:00
Donovan Glover
1ad54203d2
meta: Add git branch information to fish prompt
If I stayed on zsh instead of switch to fish, I would've probably never
known how easy it is to add certain information to the prompt. Since
the prompt itself is just a function, you can run any commands you want
inside it to get information, including git commands.

This commit adds the current branch you're on only when inside a git
repository, and only when you're not in a tty.
2018-12-05 11:45:29 -05:00
Donovan Glover
8b12687dd8
polybar: Remove border width and window gap by default
Realistically, you use a window manager to take up all the available
space on a screen. Borders and gaps are counter-intuitive in this
regard.

Since polybar has a module that shows the title of the focused window,
using a border width even in gapless mode is no longer necessary. This
also works conveniently well with bspwm's monocle desktop layout, which
will also inherit the no-border no-gaps methodology and take up all the
available screen space.
2018-12-05 11:31:38 -05:00
Donovan Glover
f1b4f82556
polybar: Remove the no bar option
It turns out that polybar is able to provide very useful information for
window management in bspwm, so much so that disabling the bar completely
wouldn't make sense.

Since there's already a way to hide the bar (with a sxhkd keybind), and
since a "no bar" option would break this functionality even though the
hidden bar keybind produces the same result, it makes sense to remove
this.
2018-12-05 11:24:55 -05:00
Donovan Glover
7732bc7c52
docs: Update install-scripts README
In the near future the install scripts should be usable with
a single and simple command.
2018-12-04 15:15:47 -05:00
Donovan Glover
0d2bfe21f8
misc: Update docs
Some minor changes to make things a bit more consistent.
2018-12-04 15:11:41 -05:00
Donovan Glover
39e81595ad
gtk: Only show menu decoration
This removes the minimize, maximize, and close buttons from GTK
applications, since we don't use them under bspwm anyway.

Note that Qt applications should already do this, no configuration
necessary.
2018-12-04 14:53:50 -05:00
Donovan Glover
1052d8ea36
gtk: Remove cursor theme size
The cursor theme size is set based on the X cursor size, which itself is
based on the X DPI.

Note that (as far as I know) there is no easy way to change the X cursor
size without restarting the X session with the new DPI.
2018-12-04 14:26:09 -05:00
Donovan Glover
082ff6bb12
meta: Refactor install scripts
Lots of changes here with the goal of streamlining the installation
process. The install scripts work very well now, although there are
still some final changes that I would like to make (notably the removal
of the unzip requirement and the inclusion of more options to automate
the process even further).
2018-12-04 03:01:14 -05:00
Donovan Glover
8c97022151
archlinux: Add rng-tools to initial package list
Note that Arch Linux packages a newer version of rng-tools that is
currently maintained and built upon the original upstream.
2018-12-04 01:56:31 -05:00
Donovan Glover
818d8a7df3
archlinux: Add polkit to initial package list
The polkit package is used to let unprivileged users run certain
commands. With it, it is possible to run system commands such as
`poweroff` and `reboot` with an unprivileged user.

Traditionally, only privileged users have access to power management,
but for many desktop setups, you may want to let unprivileged users
perform operations such as shutdown the machine if no other users
are logged in.
2018-12-04 01:48:01 -05:00
Donovan Glover
da138458b7
docs: Add README for xeventbind
It turns out that the README for the xeventbind PKGBUILD actually works
very well here. On another note, I've yet to figure out how exactly I
want to document PKGBUILDs.
2018-12-04 00:25:40 -05:00
Donovan Glover
3d670565f7
meta: Add xeventbind package
This is an X-specific script that changes (mostly) everything that needs
to be changed on resolution change, with the exception of X cursor size.

Note that any programs already running are not affected. For this kind
of functionality, you probably want to use Wayland instead.
2018-12-04 00:14:09 -05:00
Donovan Glover
dc261e58ad
archlinux: Lock the root account
No need to log in to the root account since we already configured
a user with sudo rights.
2018-12-03 21:45:47 -05:00
Donovan Glover
8d41afb5f7
archlinux: Swap user@host placeholder positions
It's actually more intuitive for the user to "fill in the blank" than
it is for the user to see future steps as blank lines.
2018-12-03 20:59:45 -05:00
Donovan Glover
6cfcc4cca9
archlinux: Use sudoers.d instead of editing sudoers directly
Note that file names containing '.' or '~' are skipped.
2018-12-03 20:27:47 -05:00
Donovan Glover
b55f9b7fce
archlinux: Add fr_FR and ja_JP locales
Because sometimes you want to use a non-English language.
2018-12-03 20:18:49 -05:00
Donovan Glover
f342218993
archlinux: Properly state how locales are created and used
It turns out that locale.gen is used to generate the locales that
can be set with locale.conf.
2018-12-03 19:47:38 -05:00
Donovan Glover
17ee1c287b
archlinux: Always uncomment lines in locale.gen
It turns out that replacing the contents of locale.gen with the locales
you want is not a good idea, since then it is impossible to reference
the file at a later date to make changes as needed.
2018-12-03 19:05:26 -05:00
Donovan Glover
8b490aa2d0
fish: Remove git status -s abbreviation
It turns out that the short version of git status is not as informative
as the regular git status, making it impractical to use.
2018-12-03 18:44:09 -05:00
Donovan Glover
3b2fee629f
fish: Add git merge and git tag abbreviations 2018-12-03 12:33:24 -05:00
Donovan Glover
a114435391
archlinux: Fix HiDPI font for virtual console
It turns out the font that I was setting before didn't actually do
anything. This is the real way to double the font size in your virtual
console, particularly useful for HiDPI displays, since your tty does not
know about your X DPI.
2018-12-03 12:13:11 -05:00
Donovan Glover
1fea6d782d
archlinux: Swap username and hostname inputs
Since the username appears before the hostname (user@host), and since
anyone using these install scripts will probably want to log in with the
local user account and not the root account, this change makes sense.
2018-12-03 11:32:55 -05:00
Donovan Glover
fdd5e27de8
archlinux: Create systemd output directories as needed
Symlinking the service files manually works, but it is not guaranteed
that these directories will already be created after the pacstrap step.
2018-12-03 11:12:13 -05:00
Donovan Glover
83c1c72655
archlinux: Remove unnecessary mkinitcpio call
Since mkinitcpio is already ran on the installation of the linux
package with pacstrap, and since we don't change any config settings,
recreating the initramfs is not necessary.
2018-12-03 11:08:21 -05:00
Donovan Glover
be6a7a8316
archlinux: Remove virtual console keymap settings
It turns out that this doesn't actually do anything since the default
keymap is already "us".
2018-12-03 10:55:09 -05:00
Donovan Glover
29c7965ace
archlinux: Use GiB by default during installation
Since we already specify that the size is "(in GiB)", the user should
not be expected to repeat this information in the input.
2018-12-03 10:44:37 -05:00
Donovan Glover
54d2824113
archlinux: Finalize install.sh
This should work, although I haven't tested it yet.

In the future it may be easier to simply download the other install
scripts from this install script. That way we solve the problem of
having to unzip this entire repository in the installation image.
2018-12-02 18:48:19 -05:00
Donovan Glover
1d67bf6d74
meta: Make Arch installation passwd interactive
Instead of trying to automatically set the password to something easy to
remember, it is probably better to simply ask for the password upfront.
2018-12-02 18:44:26 -05:00
Donovan Glover
4923b4bdca
archlinux: Update install script descriptions 2018-12-02 18:32:25 -05:00
Donovan Glover
0c8cfe8cc2
archlinux: Ask for confirmation before installation
This should ensure that a user knows what they're doing before running
the install scripts. Note that parted will also ask for a confirmation
before overwriting existing data.
2018-12-02 17:43:29 -05:00
Donovan Glover
9bdcba18c8
archlinux: Ask for size of primary partition 2018-12-02 17:15:11 -05:00
Donovan Glover
86573141fc
meta: Update PKGBUILDs
tari-util is no longer used, and some dependencies have been fixed.
2018-12-02 16:59:40 -05:00
Donovan Glover
69e2a52bf2
tari-web: Remove unnecessary dependencies
Since fonts and other desktop-related packages are now handled by
tari-desktop, this is no longer necessary. Note that I also created
tari-web before I figured out HiDPI support for Qt and GTK applications.
2018-12-02 16:18:12 -05:00
Donovan Glover
83598a092c
meta: Remove tari-util
I initially created tari-util as a package to be pre-built and installed
in the installation media. This was a while ago, and now that I know
exactly how the installation process and PKGBUILDs work, all the
previous issues I had with makepkg turned out to not be issues at all.
2018-12-02 15:48:11 -05:00
Donovan Glover
2935a4f007
PKGBUILDs: Clean up spacing
One dependency per line seems to be the way to go here.
2018-12-02 15:31:21 -05:00
Donovan Glover
14dbf3d51f
archlinux: Fix path for config files
Since I am trying to get 004-postinstall to work in the installation
media, the config paths need /mnt added to them.
2018-12-02 10:51:31 -05:00
Donovan Glover
6faca9353f
archlinux: Enable systemd services before first boot
This should work, although I haven't tested it yet.
2018-12-02 10:47:47 -05:00
Donovan Glover
4b97b8df9d
archlinux: Handle reads through new install.sh
This not only fixes the issue where set -x would cause the read
line to be altered, but also separates user input from what the
install scripts actually do.
2018-12-02 01:12:09 -05:00
Donovan Glover
f413aff320
meta: Release 0.1.0
0.1.0 has to happen sooner or later, might as well do it now!
2018-12-01 23:06:45 -05:00
Donovan Glover
e75dd9cc77
archlinux: Remove shortened timeouts from system.conf
I added shortened systemd timeouts when I didn't know how to use
journalctl. But now that I know enough to fix things that might
stall these commands, this is no longer necessary.
2018-12-01 21:24:41 -05:00
Donovan Glover
5e3b57d42f
archlinux: Remove redundant timedatectl command
Since all systemd's timedatectl does is create the same symlink we
made in the installation media, duplicating it here isn't necessary.
2018-12-01 21:07:55 -05:00