Compare commits
4 Commits
2a676ad2cb
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| cee8498648 | |||
| c4d37b9e29 | |||
| c0d7bebfd0 | |||
| 9d49dae087 |
@@ -3,6 +3,7 @@ stores:
|
|||||||
target: ~/
|
target: ~/
|
||||||
files:
|
files:
|
||||||
- .omp
|
- .omp
|
||||||
|
- .emacs.d/init.el
|
||||||
bash:
|
bash:
|
||||||
target: ~/
|
target: ~/
|
||||||
files:
|
files:
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
stores:
|
|
||||||
apps:
|
|
||||||
target: ~/
|
|
||||||
files:
|
|
||||||
- .omp
|
|
||||||
bash:
|
|
||||||
target: ~/
|
|
||||||
files:
|
|
||||||
- .aliases
|
|
||||||
- .bash_profile
|
|
||||||
- .bashrc
|
|
||||||
- .env
|
|
||||||
- .functions
|
|
||||||
- .prompt
|
|
||||||
fun:
|
|
||||||
target: /home/pasquale
|
|
||||||
files:
|
|
||||||
- .fun
|
|
||||||
git:
|
|
||||||
target: ~/
|
|
||||||
files:
|
|
||||||
- .gitconfig
|
|
||||||
78
apps/.emacs.d/init.el
Normal file
78
apps/.emacs.d/init.el
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
(require 'package)
|
||||||
|
(custom-set-variables
|
||||||
|
;; custom-set-variables was added by Custom.
|
||||||
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
|
;; Your init file should contain only one such instance.
|
||||||
|
;; If there is more than one, they won't work right.
|
||||||
|
'(custom-enabled-themes '(wombat))
|
||||||
|
'(inhibit-startup-screen t)
|
||||||
|
'(package-archives
|
||||||
|
'(("gnu" . "https://elpa.gnu.org/packages/")
|
||||||
|
("melpa" . "https://melpa.org/packages/")))
|
||||||
|
'(package-selected-packages '(haskell-mode geiser)))
|
||||||
|
(package-initialize)
|
||||||
|
|
||||||
|
(setq package-list '(haskell-mode))
|
||||||
|
|
||||||
|
(unless package-archive-contents
|
||||||
|
(package-refresh-contents))
|
||||||
|
|
||||||
|
(dolist (package package-list)
|
||||||
|
(unless (package-installed-p package)
|
||||||
|
(package-install package)))
|
||||||
|
|
||||||
|
;; Basic UI setup
|
||||||
|
(require 'font-lock)
|
||||||
|
(global-font-lock-mode t)
|
||||||
|
(show-paren-mode 1)
|
||||||
|
(put 'upcase-region 'disabled nil)
|
||||||
|
(put 'eval-expression 'disabled nil)
|
||||||
|
|
||||||
|
(setq line-number-mode t)
|
||||||
|
(setq column-number-mode t)
|
||||||
|
(setq confirm-save-buffers nil)
|
||||||
|
|
||||||
|
;; y or n is sufficient for yes or no questions
|
||||||
|
(fset 'yes-or-no-p 'y-or-n-p)
|
||||||
|
;; show me the time
|
||||||
|
(display-time)
|
||||||
|
|
||||||
|
;; Basic Racket setup
|
||||||
|
(setq scheme-program-name "/usr/bin/racket")
|
||||||
|
(setq auto-mode-alist
|
||||||
|
(cons '("\\.rkt\\'" . scheme-mode)
|
||||||
|
auto-mode-alist))
|
||||||
|
|
||||||
|
(defun run-scheme2 ()
|
||||||
|
"Run scheme-program-name and disable geiser-mode."
|
||||||
|
(interactive)
|
||||||
|
(split-window-right)
|
||||||
|
(geiser-mode -1)
|
||||||
|
(windmove-right)
|
||||||
|
(run-scheme scheme-program-name))
|
||||||
|
|
||||||
|
;; Basic Haskell setup
|
||||||
|
(require 'haskell-mode)
|
||||||
|
(setq haskell-program-name "/usr/bin/ghci")
|
||||||
|
(setq auto-mode-alist
|
||||||
|
(cons '("\\.hs\\'" . haskell-mode)
|
||||||
|
auto-mode-alist))
|
||||||
|
(add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
|
||||||
|
;; Choose indentation mode (the latter requires haskell-mode >= 2.5):
|
||||||
|
(add-hook 'haskell-mode-hook 'turn-on-haskell-indent)
|
||||||
|
;;(add-hook 'haskell-mode-hook 'turn-on-haskell-indentation)
|
||||||
|
|
||||||
|
(custom-set-faces
|
||||||
|
;; custom-set-faces was added by Custom.
|
||||||
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
|
;; Your init file should contain only one such instance.
|
||||||
|
;; If there is more than one, they won't work right.
|
||||||
|
)
|
||||||
|
|
||||||
|
;; autosave files (e.g. #file#)
|
||||||
|
(setq auto-save-file-name-transforms
|
||||||
|
`((".*" "~/.emacs.d/auto-saves/" t)))
|
||||||
|
|
||||||
|
;; backup files (e.g. file~)
|
||||||
|
(setq backup-directory-alist
|
||||||
|
`((".*" . "~/.emacs.d/backups/")))
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
# .bash_profile
|
# .bash_profile
|
||||||
# Adrian Abeyta <adrian@adrianabeyta.com>
|
# Adrian Abeyta <adrian@adrianabeyta.com>
|
||||||
# 2026.04.05
|
|
||||||
|
|
||||||
# don't do anything if not running interactively
|
# don't do anything if not running interactively
|
||||||
case $- in
|
case $- in
|
||||||
@@ -28,10 +27,10 @@ if is_true "${HAVE_FUN:-}"; then
|
|||||||
source ~/.fun
|
source ~/.fun
|
||||||
fi
|
fi
|
||||||
|
|
||||||
shopt -s nocaseglob; # case-insensitive globbing
|
shopt -s nocaseglob; # case-insensitive globbing
|
||||||
shopt -s histappend; # append to bash history file
|
shopt -s histappend; # append to bash history file
|
||||||
shopt -s cdspell; # autocorrect typos in path names when cd'ing
|
shopt -s cdspell; # autocorrect typos in path names when cd'ing
|
||||||
shopt -s checkwinsize # update col/line values on each command
|
shopt -s checkwinsize # update col/line values on each command
|
||||||
|
|
||||||
# enable tab completion for 'g' by marking as alias for 'git'
|
# enable tab completion for 'g' by marking as alias for 'git'
|
||||||
if type _git &> /dev/null; then
|
if type _git &> /dev/null; then
|
||||||
|
|||||||
@@ -1,43 +0,0 @@
|
|||||||
# .bash_profile
|
|
||||||
# Adrian Abeyta <adrian@adrianabeyta.com>
|
|
||||||
# 2026.04.05
|
|
||||||
|
|
||||||
# don't do anything if not running interactively
|
|
||||||
case $- in
|
|
||||||
*i*) ;;
|
|
||||||
*) return;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# include user home bins if they exist
|
|
||||||
if [ -d "$HOME/bin" ] ; then
|
|
||||||
PATH="$HOME/bin:$PATH"
|
|
||||||
fi;
|
|
||||||
if [ -d "$HOME/.local/bin" ] ; then
|
|
||||||
PATH="$HOME/.local/bin:$PATH"
|
|
||||||
fi;
|
|
||||||
|
|
||||||
# load the dotfiles
|
|
||||||
for file in ~/.{env,path,bash_prompt,aliases,functions}; do
|
|
||||||
[ -r "$file" ] && [ -f "$file" ] && \
|
|
||||||
source "$file";
|
|
||||||
done;
|
|
||||||
unset file;
|
|
||||||
|
|
||||||
# fun scripts
|
|
||||||
if is_true "${HAVE_FUN:-}"; then
|
|
||||||
source ~/.fun
|
|
||||||
fi
|
|
||||||
|
|
||||||
shopt -s nocaseglob; # case-insensitive globbing
|
|
||||||
shopt -s histappend; # append to bash history file
|
|
||||||
shopt -s cdspell; # autocorrect typos in path names when cd'ing
|
|
||||||
shopt -s checkwinsize # update col/line values on each command
|
|
||||||
|
|
||||||
# enable tab completion for 'g' by marking as alias for 'git'
|
|
||||||
if type _git &> /dev/null; then
|
|
||||||
complete -o default -o nospace -F _git g;
|
|
||||||
fi;
|
|
||||||
|
|
||||||
# startup oh-my-posh
|
|
||||||
OMP_THEME="~/.omp/themes/custom.json"
|
|
||||||
eval "$(oh-my-posh init bash --config $OMP_THEME)"
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
# Bash Functions
|
|
||||||
|
|
||||||
mkcd()
|
|
||||||
{
|
|
||||||
mkdir -p -- "$1" && cd -P -- "$1"
|
|
||||||
}
|
|
||||||
|
|
||||||
# determine size of a file or total size of a directory
|
|
||||||
function fs() {
|
|
||||||
if du -b /dev/null > /dev/null 2>&1; then
|
|
||||||
local arg=-sbh;
|
|
||||||
else
|
|
||||||
local arg=-sh;
|
|
||||||
fi
|
|
||||||
if [[ -n "$@" ]]; then
|
|
||||||
du $arg -- "$@";
|
|
||||||
else
|
|
||||||
du $arg .[^.]* ./*;
|
|
||||||
fi;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# use Git’s colored diff when available
|
|
||||||
hash git &>/dev/null;
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
function diff() {
|
|
||||||
git diff --no-index --color-words "$@";
|
|
||||||
}
|
|
||||||
fi;
|
|
||||||
|
|
||||||
## system administration
|
|
||||||
|
|
||||||
### service files
|
|
||||||
sysedit() {
|
|
||||||
local svc="$1"
|
|
||||||
sudo systemctl edit --full "$svc"
|
|
||||||
|
|
||||||
read -p "Reload + restart $svc? [y/N]: " ans
|
|
||||||
if [[ "$ans" == "y" ]]; then
|
|
||||||
sudo systemctl daemon-reload
|
|
||||||
sudo systemctl restart "$svc"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
sysadd() {
|
|
||||||
local svc="$1"
|
|
||||||
sudo systemctl edit "$svc"
|
|
||||||
|
|
||||||
read -p "Reload + restart $svc? [y/N]: " ans
|
|
||||||
if [[ "$ans" == "y" ]]; then
|
|
||||||
sudo systemctl daemon-reload
|
|
||||||
sudo systemctl restart "$svc"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
@@ -1,79 +0,0 @@
|
|||||||
# Git User Config
|
|
||||||
|
|
||||||
[alias]
|
|
||||||
|
|
||||||
# View abbreviated SHA, description, and history graph of the latest 20 commits.
|
|
||||||
l = log --pretty=oneline -n 20 --graph --abbrev-commit
|
|
||||||
|
|
||||||
# View the current working tree status using the short format.
|
|
||||||
s = status -s
|
|
||||||
|
|
||||||
# Show the diff between the latest commit and the current state.
|
|
||||||
d = !"git diff-index --quiet HEAD -- || clear; git --no-pager diff --patch-with-stat"
|
|
||||||
|
|
||||||
# `git di $number` shows the diff between the state `$number` revisions ago and the current state.
|
|
||||||
di = !"d() { git diff --patch-with-stat HEAD~$1; }; git diff-index --quiet HEAD -- || clear; d"
|
|
||||||
|
|
||||||
f = fetch --all
|
|
||||||
|
|
||||||
# Pull in remote changes for the current repository and all its submodules.
|
|
||||||
p = pull --recurse-submodules
|
|
||||||
|
|
||||||
# Clone a repository including all submodules.
|
|
||||||
c = commit -m
|
|
||||||
|
|
||||||
# Commit all changes.
|
|
||||||
ca = !git add ':(exclude,attr:builtin_objectmode=160000)' && git commit -av
|
|
||||||
|
|
||||||
# Switch to a branch, creating it if necessary.
|
|
||||||
go = "!f() { git checkout -b \"$1\" 2> /dev/null || git checkout \"$1\"; }; f"
|
|
||||||
|
|
||||||
# Show verbose output about tags, branches or remotes
|
|
||||||
tags = tag -l
|
|
||||||
branches = branch --all
|
|
||||||
remotes = remote --verbose
|
|
||||||
|
|
||||||
# List aliases.
|
|
||||||
aliases = config --get-regexp alias
|
|
||||||
|
|
||||||
# Amend the currently staged files to the latest commit.
|
|
||||||
amend = commit --amend --reuse-message=HEAD
|
|
||||||
|
|
||||||
# Credit an author on the latest commit.
|
|
||||||
credit = "!f() { git commit --amend --author \"$1 <$2>\" -C HEAD; }; f"
|
|
||||||
|
|
||||||
# Interactive rebase with the given number of latest commits.
|
|
||||||
reb = "!r() { git rebase -i HEAD~$1; }; r"
|
|
||||||
|
|
||||||
# Remove the old tag with this name and tag the latest commit with it.
|
|
||||||
retag = "!r() { git tag -d $1 && git push origin :refs/tags/$1 && git tag $1; }; r"
|
|
||||||
|
|
||||||
# Find branches containing commit
|
|
||||||
ft = "!f() { git describe --always --contains $1; }; f"
|
|
||||||
|
|
||||||
# Find commits by source code
|
|
||||||
fc = "!f() { git log --pretty=format:'%C(yellow)%h %Cblue%ad %Creset%s%Cgreen [%cn] %Cred%d' --decorate --date=short -S\
|
|
||||||
$1; }; f"
|
|
||||||
|
|
||||||
# Find commits by commit message
|
|
||||||
fm = "!f() { git log --pretty=format:'%C(yellow)%h %Cblue%ad %Creset%s%Cgreen [%cn] %Cred%d' --decorate --date=short --\
|
|
||||||
grep=$1; }; f"
|
|
||||||
|
|
||||||
# Remove branches that have already been merged with main.
|
|
||||||
# a.k.a. ‘delete merged’
|
|
||||||
dm = "!git branch --merged | grep -v '\\*' | xargs -n 1 git branch -d"
|
|
||||||
|
|
||||||
# List contributors with number of commits.
|
|
||||||
contributors = shortlog --summary --numbered
|
|
||||||
|
|
||||||
# Show the user email for the current repository.
|
|
||||||
whoami = config user.email
|
|
||||||
|
|
||||||
[branch]
|
|
||||||
|
|
||||||
# show most recently changed branches first
|
|
||||||
sort = -committerdate
|
|
||||||
|
|
||||||
[init]
|
|
||||||
|
|
||||||
defaultBranch = main
|
|
||||||
5
git/.gitignore
vendored
Normal file
5
git/.gitignore
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# Universal Git Ignore File
|
||||||
|
|
||||||
|
# emacs autosave files
|
||||||
|
*~
|
||||||
|
\#*\#
|
||||||
Reference in New Issue
Block a user