Compare commits

..

2 commits

Author SHA1 Message Date
05329e43f9 Configure git pass mapping 2024-11-29 17:01:15 +00:00
19faa32dbf Add home configuration 2024-11-29 16:55:11 +00:00
6 changed files with 130 additions and 0 deletions

2
.bash_profile Normal file
View file

@ -0,0 +1,2 @@
# Honor per-interactive-shell startup file
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi

35
.bashrc Normal file
View file

@ -0,0 +1,35 @@
# Bash initialization for interactive non-login shells and
# for remote shells (info "(bash) Bash Startup Files").
# Export 'SHELL' to child processes. Programs such as 'screen'
# honor it and otherwise use /bin/sh.
export SHELL
if [[ $- != *i* ]]
then
# We are being invoked from a non-interactive shell. If this
# is an SSH session (as in "ssh host command"), source
# /etc/profile so we get PATH and other essential variables.
[[ -n "$SSH_CLIENT" ]] && source /etc/profile
# Don't do anything else.
return
fi
# Source the system-wide file.
source /etc/bashrc
# Adjust the prompt depending on whether we're in 'guix environment'.
if [ -n "$GUIX_ENVIRONMENT" ]
then
PS1='\u@\h \w [env]\$ '
else
PS1='\u@\h \w\$ '
fi
alias ls='ls -p --color=auto'
alias ll='ls -l'
alias grep='grep --color=auto'
# Configure TTY for pinentry
GPG_TTY=$(tty)
export GPG_TTY

View file

@ -0,0 +1,3 @@
[forge.1729.org.uk]
target=dev/forge
username=ray

14
dotfiles/git/.gitconfig Normal file
View file

@ -0,0 +1,14 @@
[user]
name = Ray Miller
email = ray@1729.org.uk
[core]
excludesfile = /home/ray/.gitignore_global
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
[init]
defaultBranch = main
[credential]
helper = !pass-git-helper $@

View file

@ -0,0 +1,2 @@
# Emacs backup files
*~

74
home-configuration.scm Normal file
View file

@ -0,0 +1,74 @@
;; This "home-environment" file can be passed to 'guix home reconfigure'
;; to reproduce the content of your profile. This is "symbolic": it only
;; specifies package names. To reproduce the exact same profile, you also
;; need to capture the channels being used, as returned by "guix describe".
;; See the "Replicating Guix" section in the manual.
(use-modules (gnu home)
(gnu packages)
(gnu services)
(guix gexp)
(gnu home services shells)
(gnu home services dotfiles)
(gnu home services gnupg))
(home-environment
;; Below is the list of packages that will show up in your
;; Home profile, under ~/.guix-home/profile.
(packages (specifications->packages (list "emacs-no-x"
"git"
"git-crypt"
"git-lfs"
"glibc-locales"
"gnupg"
;;"go@1.23.2"
"guile"
"guile-algorithms"
"guile-config"
"guile-dsv"
"guile-fibers"
"guile-file-names"
"guile-filesystem"
"guile-gcrypt"
"guile-gnutls"
"guile-ini"
"guile-irregex"
"guile-json"
"guile-lib"
"guile-libyaml"
"guile-quickcheck"
"guile-readline"
"guile-semver"
"guile-sqlite3"
"guile-srfi-145"
"guile-srfi-158"
"guile-srfi-197"
"guile-srfi-235"
"guile-ssh"
"guile-tap"
"nss-certs"
"pass-git-helper"
"password-store"
"recutils")))
;; Below is the list of Home services. To search for available
;; services, run 'guix home search KEYWORD' in a terminal.
(services
(list (service home-bash-service-type
(home-bash-configuration
(guix-defaults? #t)
(environment-variables '(("XDG_RUNTIME_DIR" . "/home/ray/.local/run")))
(aliases '(("grep" . "grep --color=auto") ("ll" . "ls -l")
("ls" . "ls -p --color=auto")))
(bashrc (list (local-file
"/home/ray/Workspace/guix-config/.bashrc"
"bashrc")))
(bash-profile (list (local-file
"/home/ray/Workspace/guix-config/.bash_profile"
"bash_profile")))))
(service home-dotfiles-service-type
(home-dotfiles-configuration
(directories '("./dotfiles"))
(layout 'stow)))
(service home-gpg-agent-service-type
(home-gpg-agent-configuration)))))