More moving things around...

This commit is contained in:
Daniel Flanagan 2020-11-06 00:31:43 -06:00
parent c71ddb0e75
commit 66c91a20bc
Signed by: lytedev
GPG key ID: 5B2020A0F9921EF4
58 changed files with 72 additions and 265 deletions

7
.gitignore vendored
View file

@ -6,13 +6,10 @@
fishd.tmp.* fishd.tmp.*
# keep the pipelines but hide their results # keep the pipelines but hide their results
/bin/pipelines/*/*/* /env/common/data/pipelines/*/*/*
# a place to keep secrets per-env # a place to keep secrets per-env
/env/*/.hidden .hidden
# ... and a place to keep shared secrets
/env/.hidden
# TODO: should be unnecessary once color generation is homegrown # TODO: should be unnecessary once color generation is homegrown
/colors/gen/vendor /colors/gen/vendor

View file

@ -1,7 +1,5 @@
MAKEFILE_PATH ?= $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) MAKEFILE_PATH ?= $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
all: install .PHONY: install
default: install
install: install:
cd ${MAKEFILE_PATH} && ./setup.bash @cd ${MAKEFILE_PATH} && ./bin/setup-dotfiles

View file

@ -4,7 +4,7 @@
# + Super+Control+{1-9} should control the size of the preselect space. # + Super+Control+{1-9} should control the size of the preselect space.
# + Super+Shift+b should balance the size of all selected nodes. # + Super+Shift+b should balance the size of all selected nodes.
set $dfpbin $HOME/.config/dotfiles/bin set $dfpbin $HOME/.config/lytedev-dotfiles/bin
set $mod Mod4 set $mod Mod4
set $default_gap 0 set $default_gap 0
@ -167,4 +167,5 @@ bar {
exec gammastep -t 6500:3500 -l 39.0:-94.5 exec gammastep -t 6500:3500 -l 39.0:-94.5
exec swayidle -w timeout 300 'swaylock -f -c 000000' timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -f -c 000000' exec swayidle -w timeout 300 'swaylock -f -c 000000' timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -f -c 000000'
include $HOME/.env/sway/config.d/main include $HOME/.env/sway/main
# include $HOME/.env/sway/config.d/*

View file

@ -1,7 +1,7 @@
#!/usr/bin/env sh #!/usr/bin/env sh
[ -z "$XDG_CONFIG_HOME" ] && export XDG_CONFIG_HOME="$HOME/.config" [ -z "$XDG_CONFIG_HOME" ] && export XDG_CONFIG_HOME="$HOME/.config"
[ -z "$DOTFILES_PATH" ] && export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles" [ -z "$DOTFILES_PATH" ] && export DOTFILES_PATH="$XDG_CONFIG_HOME/lytedev-dotfiles"
. "$DOTFILES_PATH/bin/prelude" . "$DOTFILES_PATH/bin/prelude"

View file

@ -2,7 +2,7 @@ profile desktop-H {
output "Samsung Electric Company CF791 HTRJ500315" enable mode 3440x1440@100Hz position 1440,560 scale 1 transform normal output "Samsung Electric Company CF791 HTRJ500315" enable mode 3440x1440@100Hz position 1440,560 scale 1 transform normal
output "Dell Inc. DELL U2719DC 5DL4QS2" enable mode 2560x1440@60Hz position 0,0 scale 1 transform 90 output "Dell Inc. DELL U2719DC 5DL4QS2" enable mode 2560x1440@60Hz position 0,0 scale 1 transform 90
output "Dell Inc. DELL U2719DC 9DL4QS2" enable mode 2560x1440@60Hz position 4880,0 scale 1 transform 270 output "Dell Inc. DELL U2719DC 9DL4QS2" enable mode 2560x1440@60Hz position 4880,0 scale 1 transform 270
exec "$HOME/.config/dotfiles/apps/kanshi/desktop-H-workspaces.sh" exec "$HOME/.config/lytedev-dotfiles/apps/kanshi/desktop-H-workspaces.sh"
} }
profile laptop-solo { profile laptop-solo {

View file

@ -1,7 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
export XDG_CONFIG_HOME="$HOME/.config" export XDG_CONFIG_HOME="$HOME/.config"
export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles" export DOTFILES_PATH="$XDG_CONFIG_HOME/lytedev-dotfiles"
. "$DOTFILES_PATH/bin/prelude" . "$DOTFILES_PATH/bin/prelude"

View file

@ -1,7 +1,7 @@
#!/usr/bin/env fish #!/usr/bin/env fish
set -Ux XDG_CONFIG_HOME $HOME/.config set -Ux XDG_CONFIG_HOME $HOME/.config
set -Ux DOTFILES_PATH $XDG_CONFIG_HOME/dotfiles set -Ux DOTFILES_PATH $XDG_CONFIG_HOME/lytedev-dotfiles
set -Ux ENV_PATH $HOME/.env set -Ux ENV_PATH $HOME/.env
source $DOTFILES_PATH/apps/shell/fish/paths.fish source $DOTFILES_PATH/apps/shell/fish/paths.fish
@ -51,4 +51,12 @@ for cf in config.fish .hidden/config.fish
test -f $f && source $f test -f $f && source $f
end end
# TODO: completion
function src-hidden-dir
not scount $argv && echo "No directory specified" && exit 1
set f $ENV_PATH/.hidden/fish.d/$argv[1]/config.fish
echo "Checking $f..."
test -f $f && source $f
end
mkdir -p $NOTES_PATH $USER_LOGS_PATH $SCROTS_PATH mkdir -p $NOTES_PATH $USER_LOGS_PATH $SCROTS_PATH

View file

@ -47,7 +47,7 @@ bind-key h switch-client -p
bind-key k switch-client -n bind-key k switch-client -n
bind-key l switch-client -n bind-key l switch-client -n
# bind s run-shell "tmux new-window sh -c "$DOTFILES_PATH/bin/tmuxswitcher"" # bind s run-shell "tmux new-window sh -c "$DOTFILES_PATH/bin/tmuxswitcher""
bind s run-shell "tmux new-window \"sh -c ~/.config/dotfiles/bin/tmuxswitcher\"" bind s run-shell "tmux new-window \"sh -c ~/.config/lytedev-dotfiles/bin/tmuxswitcher\""
# reset the working directory of the current session # reset the working directory of the current session
bind-key P attach-session -t . -c "#{pane_current_path}" \; display-message "Reset session dir to #{pane_current_path}" bind-key P attach-session -t . -c "#{pane_current_path}" \; display-message "Reset session dir to #{pane_current_path}"
@ -60,10 +60,10 @@ set -g status-interval 5
set -g status-right-length 80 set -g status-right-length 80
set -g status-right "#[fg=colour4]#W#[fg=default]#[bg=default] #H" set -g status-right "#[fg=colour4]#W#[fg=default]#[bg=default] #H"
set -g status-left-length 200 set -g status-left-length 200
set -g status-left "#[fg=colour7]#(~/.config/dotfiles/bin/tmux-session-list #S)" set -g status-left "#[fg=colour7]#(~/.config/lytedev-dotfiles/bin/tmux-session-list #S)"
set -g message-style "fg=colour7 bg=colour18" set -g message-style "fg=colour7 bg=colour18"
bind-key O display-message "#(~/.config/dotfiles/bin/tmux-save-buffer #S)" bind-key O display-message "#(~/.config/lytedev-dotfiles/bin/tmux-save-buffer #S)"
# pane split line colors # pane split line colors
set -g pane-active-border-style bg=black,fg=blue set -g pane-active-border-style bg=black,fg=blue

View file

@ -1,4 +1,4 @@
#!/usr/bin/env sh #!/usr/bin/env sh
source "$HOME/.config/dotfiles/bin/prelude" source "$(dirname "$0")/prelude"
floating-term sh -c "launch | xargs swaymsg exec --" floating-term sh -c "launch | xargs swaymsg exec --"

10
bin/choose-common-env Executable file
View file

@ -0,0 +1,10 @@
#!/usr/bin/env sh
machines_path="$DOTFILES_PATH/env/common/machines"
machine="$(
cd "$machines_path" && \
find ./ -mindepth 1 -maxdepth 1 -type d | \
cut -c3- | \
fzf --prompt "Choose your machine > ")"
ezln "$machines_path/$machine" "$ENV_PATH"
echo "Symlinked '$(realpath "$machines_path/$machine")' to your ENV_PATH ('$ENV_PATH')"

View file

@ -5,7 +5,7 @@
root_home="/root" root_home="/root"
daniel_home="/home/daniel/.home" daniel_home="/home/daniel/.home"
nice_home="/home/daniel" nice_home="/home/daniel"
dotfiles="/.config/dotfiles" dotfiles="/.config/lytedev-dotfiles"
add_unstable_channel() { add_unstable_channel() {
nix-channel --add https://nixos.org/channels/nixos-unstable nixos-unstable nix-channel --add https://nixos.org/channels/nixos-unstable nixos-unstable

View file

@ -1,6 +1,6 @@
#!/usr/bin/env sh #!/usr/bin/env sh
SAVED_PIPELINE_DIR="$DOTFILES_PATH/bin/pipelines" SAVED_PIPELINE_DIR="$DOTFILES_PATH/env/common/data/pipelines"
mkdir -p "$SAVED_PIPELINE_DIR" mkdir -p "$SAVED_PIPELINE_DIR"
if [ -n "${1+x}" ]; then if [ -n "${1+x}" ]; then

View file

@ -1,4 +0,0 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/dotfiles/.env/pipelines/b64/pipeline.VRMehQda
base64

View file

@ -1,4 +0,0 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/dotfiles/.env/pipelines/base64/tmp_pipeline.ca7uoTRo
base64

View file

@ -1,4 +0,0 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/dotfiles/.env/pipelines/linewise/tmp_pipeline.epyGqDjQ
linewise base64

View file

@ -1,4 +0,0 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/dotfiles/.env/pipelines/test/pipeline.Zpgm8j42
base64

View file

@ -1,4 +0,0 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/dotfiles/.env/pipelines/xxd/tmp_pipeline.dmXdfyZv
hexyl

View file

@ -4,8 +4,9 @@
# be loaded and properly set by every script - this means you are responsible # be loaded and properly set by every script - this means you are responsible
# for making sure they're loaded! # for making sure they're loaded!
export XDG_CONFIG_HOME="$HOME/.config" export XDG_CONFIG_HOME="$HOME/.config"
export DOTFILES_PATH="$XDG_CONFIG_HOME/dotfiles" export DOTFILES_PATH="$XDG_CONFIG_HOME/lytedev-dotfiles"
export ENV_PATH="$HOME/.env" export ENV_PATH="$HOME/.env"
export TERMINAL="kitty" export TERMINAL="kitty"
# TODO: better logic for auto-detecting alternative home directories? # TODO: better logic for auto-detecting alternative home directories?

View file

@ -2,8 +2,8 @@
# TODO: quiet/auto-agree mode for curl | bash automagic? # TODO: quiet/auto-agree mode for curl | bash automagic?
dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/" && pwd) dfp=$(cd "$(dirname "${BASH_SOURCE[0]}" )/.." && pwd)
source "${dfp}/lib/setup_helpers.bash" source "${dfp}/env/common/setup_helpers.bash"
INTERACTIVE=1 INTERACTIVE=1
@ -16,9 +16,6 @@ while test $# -gt 0; do
esac esac
done done
# TODO: note about setting up ~/.env (link to a folder in ./env)
# should prompt user, perhaps?
links=( links=(
# desktop environment files # desktop environment files
"apps/de/bspwm/rc" "$XDG_CONFIG_HOME/bspwm/bspwmrc" "apps/de/bspwm/rc" "$XDG_CONFIG_HOME/bspwm/bspwmrc"
@ -34,7 +31,7 @@ links=(
"apps/de/compton/compton.conf" "$XDG_CONFIG_HOME/compton.conf" "apps/de/compton/compton.conf" "$XDG_CONFIG_HOME/compton.conf"
"apps/de/dunst/rc" "$XDG_CONFIG_HOME/dunst/dunstrc" "apps/de/dunst/rc" "$XDG_CONFIG_HOME/dunst/dunstrc"
"apps/de/mako/" "$XDG_CONFIG_HOME/mako" "apps/de/mako/" "$XDG_CONFIG_HOME/mako"
"bin/lib/colors/xresources" "$HOME/.Xresources.colors" "env/common/colors/xresources" "$HOME/.Xresources.colors"
# shell files # shell files
"apps/shell/bash/rc" "$HOME/.bashrc" "apps/shell/bash/rc" "$HOME/.bashrc"
@ -47,7 +44,7 @@ links=(
"apps/neovim/" "$XDG_CONFIG_HOME/nvim" "apps/neovim/" "$XDG_CONFIG_HOME/nvim"
"apps/neovim/" "$HOME/.vim" "apps/neovim/" "$HOME/.vim"
"apps/neovim/init.vim" "$HOME/.vimrc" "apps/neovim/init.vim" "$HOME/.vimrc"
"bin/lib/colors/vim" "$XDG_CONFIG_HOME/nvim/colors/base16-donokai.vim" "env/common/colors/vim" "$XDG_CONFIG_HOME/nvim/colors/base16-donokai.vim"
"apps/emacs/" "$HOME/.emacs.lytedev" "apps/emacs/" "$HOME/.emacs.lytedev"
# gtk configuration files # gtk configuration files
@ -130,18 +127,16 @@ links=(
"apps/kanshi" "$XDG_CONFIG_HOME/kanshi" "apps/kanshi" "$XDG_CONFIG_HOME/kanshi"
) )
chmod 700 -R "$HOME/.bin"
# TODO: pass interactive? # TODO: pass interactive?
_dotfiles_setup_run_setup "$dfp/.agreed-to-erasing-files.lock" "${links[@]}" _dotfiles_setup_run_setup "$dfp/.agreed-to-erasing-files.lock" "${links[@]}"
if [[ "$INTERACTIVE" = 1 ]]; then if [[ "$INTERACTIVE" = 1 ]]; then
echo -n -e "Do you want to run the bin/lib/sudo_setup script for changes to /etc" echo -n -e "Do you want to run the env/common/sudo_setup script for changes to /etc"
echo -n -e "\nand other root directories?" echo -n -e "\nand other root directories?"
read -r -p " [y/N] " response read -r -p " [y/N] " response
response=${response,,} # to lower case response=${response,,} # to lower case
if [[ $response =~ ^(yes|y)$ ]]; then if [[ $response =~ ^(yes|y)$ ]]; then
"$dfp/bin/lib/sudo_setup" "$dfp/env/common/sudo_setup"
fi fi
# execute the user's shell # execute the user's shell

4
env/common/data/pipelines/b64/transform vendored Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/lytedev-dotfiles/.env/pipelines/b64/pipeline.VRMehQda
base64

4
env/common/data/pipelines/base64/transform vendored Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/lytedev-dotfiles/.env/pipelines/base64/tmp_pipeline.ca7uoTRo
base64

View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/lytedev-dotfiles/.env/pipelines/linewise/tmp_pipeline.epyGqDjQ
linewise base64

4
env/common/data/pipelines/test/transform vendored Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/lytedev-dotfiles/.env/pipelines/test/pipeline.Zpgm8j42
base64

4
env/common/data/pipelines/xxd/transform vendored Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/env bash
# for /home/daniel/.home/.config/lytedev-dotfiles/.env/pipelines/xxd/tmp_pipeline.dmXdfyZv
hexyl

1
env/common/machines/laptop/laptop vendored Symbolic link
View file

@ -0,0 +1 @@
/home/daniel/.home/.config/dotfiles/env/common/machines/laptop

5
env/common/machines/laptop/sway/main vendored Normal file
View file

@ -0,0 +1,5 @@
exec libinput-gestures -c $HOME/.config/lytedev-dotfiles/apps/de/libinput/sway-gestures.conf
bindswitch lid:toggle exec swaylock
input type:keyboard {
xkb_options ctrl:nocaps
}

4
env/desktop/bash vendored
View file

@ -1,4 +0,0 @@
#!/usr/bin/env bash
hb="$ENV_PATH/.hidden/bash"
[ -f "$hb" ] && . "$hb"

4
env/desktop/bspwm vendored
View file

@ -1,4 +0,0 @@
#!/usr/bin/env bash
# TODO: this doesn't quite work all the time
export REVERSE_DESKTOP_ORDERING=1

View file

@ -1,13 +0,0 @@
#!/usr/bin/env fish
# TODO: completion
function src-hidden-dir
not scount $argv && echo "No directory specified" && exit 1
set f $ENV_PATH/.hidden/fish.d/$argv[1]/config.fish
echo "Checking $f..."
test -f $f && source $f
end
set hc $ENV_PATH/.hidden/config.fish
test -f $hc && source $hc

View file

@ -1,105 +0,0 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{ config, pkgs, ... }:
{
imports = [
./hardware-configuration.nix
# TODO: fork?
(import "${builtins.fetchTarball https://github.com/rycee/home-manager/archive/master.tar.gz}/nixos")
];
home-manager.users.daniel = {
}
# TODO: bootloader will vary by device
boot = {
supportedFilesystems = [ "exfat" ];
loader = {
grub = {
enable = true;
version = 2;
device = "/dev/sda";
};
};
};
networking = {
hostName = "nether";
useDHCP = true;
firewall = {
allowedTCPPorts = [ 22 80 443 7770 ];
allowedUDPPorts = [ 53 57 63 67 7770 ];
# enable = false;
};
};
i18n.defaultLocale = "en_US.UTF-8";
console = {
font = "Lat2-Terminus16";
keyMap = "us";
};
time.timeZone = "America/Chicago";
environment = {
systemPackages = with pkgs; [
wget lsof vim git curl fish fzf neovim
];
variables.EDITOR = "nvim";
};
services = {
openssh.enable = true;
xserver = {
enable = true;
layout = "us";
libinput.enable = true;
desktopManager.plasma5.enable = true;
};
};
fonts = {
enableFontDir = true;
enableGhostscriptFonts = true;
fontconfig = {
enable = true;
antialias = true;
useEmbeddedBitmaps = true;
defaultFonts = {
serif = [ "Iosevka Type" ];
sansSerif = [ "Iosevka Type" ];
monospace = [ "Iosevka Type" ];
};
};
fonts = with pkgs; [
iosevka
nerdfonts
];
};
sound.enable = true;
hardware.pulseaudio.enable = true;
users.extraUsers.daniel = {
isNormalUser = true;
group = "users";
extraGroups = [ "wheel" ];
home = "/home/daniel/.home";
shell = pkgs.fish;
createHome = true;
uid = 1000;
};
nixpkgs.config = {
allowUnfree = true;
};
system.stateVersion = "20.03";
}

View file

@ -1,8 +0,0 @@
#!/usr/bin/env sh
autorandr --load games
xrandr --output eDP1 --mode 1600x900
"${DOTFILES_PATH}/apps/de/bspwm/rc"
xrdb -merge "$ENV_PATH/x/games.resources"
restartbar
"${HOME}/.fehbg"

View file

@ -1,9 +0,0 @@
#!/usr/bin/env sh
autorandr --change
xrandr --output eDP1 --scale-from 1600x900 --filter nearest --mode 3200x1800
xrdb -merge "$ENV_PATH/x/docked.resources"
xrdb -merge "$ENV_PATH/x/home.docked.resources"
"${DOTFILES_PATH}/apps/de/bspwm/rc"
restartbar
"${HOME}/.fehbg"

View file

@ -1,9 +0,0 @@
#!/usr/bin/env bash
resrc
"${DOTFILES_PATH}/apps/de/x/loadresources"
autorandr --change
"${DOTFILES_PATH}/apps/de/bspwm/rc"
"${DOTFILES_PATH}/apps/de/x/loadresources"
restartbar
"${HOME}/.fehbg"

View file

@ -1,8 +0,0 @@
#!/usr/bin/env sh
autorandr --change
xrandr --output eDP1 --scale-from 1600x900 --filter nearest --mode 3200x1800
xrdb -merge "$ENV_PATH/x/docked.resources"
"${DOTFILES_PATH}/apps/de/bspwm/rc"
restartbar
"${HOME}/.fehbg"

View file

@ -1,12 +0,0 @@
#!/usr/bin/env fish
# TODO: completion
function src-hidden-dir
not scount $argv && echo "No directory specified" && exit 1
set f $ENV_PATH/.hidden/fish.d/$argv[1]/config.fish
echo "Checking $f..."
test -f $f && source $f
end
set hc $ENV_PATH/.hidden/config.fish
test -f $hc && source $hc

View file

@ -1,32 +0,0 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, ... }:
{
imports =
[ <nixpkgs/nixos/modules/installer/scan/not-detected.nix>
];
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "rtsx_pci_sdmmc" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/d1d92974-c0c0-4566-8131-c3dda9b21122";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/3EB9-C18F";
fsType = "vfat";
};
swapDevices = [ ];
nix.maxJobs = lib.mkDefault 4;
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
# High-DPI console
console.font = lib.mkDefault "${pkgs.terminus_font}/share/consolefonts/ter-u28n.psf.gz";
}

View file

@ -1,5 +0,0 @@
exec libinput-gestures -c $HOME/.config/dotfiles/apps/de/libinput/sway-gestures.conf
bindswitch lid:toggle exec swaylock
input type:keyboard {
xkb_options ctrl:nocaps
}

View file

@ -1,4 +1,4 @@
# dotfiles by lytedev # lytedev's dotfiles
This repository is undergoing some massive changes. This repository is undergoing some massive changes.
@ -11,9 +11,9 @@ curl -s -L https://git.lyte.dev/lytedev/dotfiles/raw/branch/master/bin/init-dotf
[🖥️ Upstream][upstream] • [🐙 GitHub Mirror][github] [🖥️ Upstream][upstream] • [🐙 GitHub Mirror][github]
## Improvements ## To Do
+ Move to NixOS or Guix? Declarative is the future! + Move to NixOS (WIP) or Guix? Declarative is the future!
+ Custom Iosevka font with kitty-compatible ligatures? + Custom Iosevka font with kitty-compatible ligatures?
+ Makefile instead of setup script + Makefile instead of setup script
+ `c` (and similar aliases) could utilize `CDPATH` envvar? + `c` (and similar aliases) could utilize `CDPATH` envvar?