4 Commits

Author SHA1 Message Date
a6afdd7efb Restructure repo to use pkgs subdirectory 2025-09-02 04:01:17 -04:00
20b6470625 Relicense original contributions to 0BSD
- Remove verbose copyright sections in favor of SPDX metadata
- Simplify README with concise GNU Stow setup instructions
2025-09-02 03:26:36 -04:00
0ada0f3b67 Organize dotfiles for GNU Stow 2025-09-01 22:54:51 -04:00
b470701a9d Add ~/.local/bin to user PATH 2025-08-30 20:42:46 -04:00
12 changed files with 81 additions and 110 deletions

View File

@@ -1,7 +0,0 @@
[core]
editor = vim
[include]
path = ~/.gitconfig_other
[init]
defaultBranch = main

3
.stowrc Normal file
View File

@@ -0,0 +1,3 @@
--dir=pkgs
--target=$HOME
--verbose

12
LICENSES/0BSD.txt Normal file
View File

@@ -0,0 +1,12 @@
Copyright (C) 2025 by Kris Lamoureux <kris@lamoureux.io>
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.

18
LICENSES/MIT.txt Normal file
View File

@@ -0,0 +1,18 @@
MIT License
Copyright (c) 2009-2016 Marcin Kulik
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and
associated documentation files (the "Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial
portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO
EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@@ -1,63 +1,27 @@
## Kris' dotfiles <!--
### Installation SPDX-FileCopyrightText: 2025 Kris Lamoureux <kris@lamoureux.io>
SPDX-License-Identifier: 0BSD
-->
Clone the repository: ## Dotfiles
`git clone https://github.com/krislamo/dotfiles.git` Use GNU Stow to slow down your home directory listings with my
[accumulated sludge](https://web.archive.org/web/20141205101508/https://plus.google.com/+RobPikeTheHuman/posts/R58WgWwN9jp).
Symbolic linking is currently based on the working directory, so you must run the install script while you are inside its directory. Navigate into the repository: ### Setup
`cd dotfiles` 1. Clone into a subdirectory of `$HOME` and change into it
Now you will be successful running the install.sh script: git clone https://git.krislamo.org/kris/dotfiles.git ~/.dotfiles && \
cd ~/.dotfiles
`./install.sh` 2. List available configuration packages
basename -a pkgs/*/
#### Copyrights and Licenses 3. Dry run `stow` with `-n` against configuration sets and verify output before
running
`Files: .bash_aliases .gitconfig .bashrc .vimrc install.sh` stow -n $(basename -a pkgs/*/)
Copyright (C) 2019-2020 Kris Lamoureux - Use `-nvv` for more verbose output.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
---
`Files: .bashrc`
The original file is from Debian GNU/Linux's prepackaged version of the FSF's GNU Bash,
the Bourne Again SHell. This package was put together by Matthias Klose <doko@debian.org\>
See package: <https://packages.debian.org/buster/bash> for more information and copyright notices.
---
`Files: .vim/colors/monokai.vim`
The MIT License (MIT)
Copyright (c) 2009-2016 Marcin Kulik
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -1,47 +0,0 @@
#!/bin/bash
# This script loops through files in this repository, creating symlinks in your
# home directory targeting here. It will prompt you to backup regular files and
# replace broken symlinks but will ignore good symlinks regardless of their
# target.
DOTFILES="$(pwd)/.*[a-z]"
for FILE in $DOTFILES; do
BASEFILE=$(basename $FILE)
NEWLINK=0
# Exclude the repo's .git folder
if [ "$BASEFILE" != ".git" ]; then
# If basefile is a link
if [ -L ~/$BASEFILE ]; then
# If basefile is not a file, and therefore is a broken symlink
if [ ! -f ~/$BASEFILE ]; then
read -p "Press [ENTER] to replace broken symlink ~/$BASEFILE."
rm ~/$BASEFILE
NEWLINK=1
else
echo "~/$BASEFILE is already linked."
fi
# If basefile is a regular file or directory
elif [ -f ~/$BASEFILE ] || [ -d ~/$BASEFILE ]; then
DATE=$(date '+%Y%m%d%H%M%S')
read -p "Press [ENTER] to move ~/$BASEFILE to ~/$BASEFILE-$DATE."
mv ~/$BASEFILE ~/$BASEFILE-$DATE
NEWLINK=1
else
echo "Nothing in location ~/$BASEFILE"
NEWLINK=1
fi
# Create a new symlink
if [ $NEWLINK -eq 1 ]; then
echo "Creating new link to $(pwd)/$BASEFILE from" ~
ln -s $(pwd)/$BASEFILE ~/$BASEFILE
fi
fi
done
. ~/.bashrc

View File

@@ -1,3 +1,8 @@
# SPDX-FileCopyrightText: 2019-2022, 2025 Kris Lamoureux <kris@lamoureux.io>
# SPDX-License-Identifier: 0BSD
# shellcheck shell=bash
# Local system administration # Local system administration
# Alias management # Alias management
@@ -56,11 +61,11 @@ alias 'log'='git log'
alias 'oneline'='git log --oneline' alias 'oneline'='git log --oneline'
alias 'logsig'='git log --show-signature' alias 'logsig'='git log --show-signature'
alias 'checkout'='git checkout' alias 'checkout'='git checkout'
alias 'commit'='git commit' alias 'commit'='git commit -S'
alias 'tcommit'='git commit -m "testing"' alias 'tcommit'='git commit -m "testing"'
alias 'tamend'='git commit --amend --no-edit --date "`date -R`"' alias 'tamend'='git commit --amend --no-edit --date "`date -R`"'
alias 'amend'='git commit --amend' alias 'amend'='git commit -S --amend'
alias 'amendnew'='git commit --amend --date "`date -R`"' alias 'amendnew'='git commit -S --amend --date "`date -R`"'
alias 'giturl'='git remote set-url' alias 'giturl'='git remote set-url'
alias 'setorigin'='git remote set-url origin' alias 'setorigin'='git remote set-url origin'
alias 'origin'='git remote show origin' alias 'origin'='git remote show origin'

View File

@@ -1,3 +1,9 @@
# SPDX-FileCopyrightText: 2019 Matthias Klose <doko@debian.org>
# SPDX-FileCopyrightText: 2019, 2025 Kris Lamoureux <kris@lamoureux.io>
# SPDX-License-Identifier: GPL-3.0-or-later
# shellcheck shell=bash disable=SC1090,SC1091
# ~/.bashrc: executed by bash(1) for non-login shells. # ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples # for examples
@@ -112,5 +118,8 @@ if ! shopt -oq posix; then
fi fi
fi fi
# Add ~/.local/bin to PATH
export PATH="$HOME/.local/bin:$PATH"
# Ask for decryption in terminal window # Ask for decryption in terminal window
export GPG_TTY=$(tty) export GPG_TTY=$(tty)

9
pkgs/git/.gitconfig Normal file
View File

@@ -0,0 +1,9 @@
# SPDX-FileCopyrightText: 2019, 2022 Kris Lamoureux <kris@lamoureux.io>
# SPDX-License-Identifier: 0BSD
[core]
editor = vim
[init]
defaultBranch = main
[include]
path = ~/.gitconfig_other

View File

@@ -1,3 +1,5 @@
" SPDX-FileCopyrightText: 2009-2016 Marcin Kulik
" SPDX-License-Identifier: MIT
" Vim color file " Vim color file
" Converted from Textmate theme Monokai using Coloration v0.3.2 (http://github.com/sickill/coloration) " Converted from Textmate theme Monokai using Coloration v0.3.2 (http://github.com/sickill/coloration)

View File

@@ -1,3 +1,6 @@
" SPDX-FileCopyrightText: 2019, 2022 Kris Lamoureux <kris@lamoureux.io>
" SPDX-License-Identifier: 0BSD
syntax enable syntax enable
colorscheme monokai colorscheme monokai
set number set number