From 2a6281a7c572d0785ab6c5ce48a5723f707b776a Mon Sep 17 00:00:00 2001 From: hashirama Date: Sat, 17 Feb 2024 22:56:06 -0400 Subject: [PATCH] start working on the home config --- .../.bash_profile | 0 home-configuration/.bashrc | 46 ++++++ home-configuration/home-configuration.scm | 132 ++++++++++++++++++ 3 files changed, 178 insertions(+) rename .bash_profile => home-configuration/.bash_profile (100%) create mode 100644 home-configuration/.bashrc create mode 100644 home-configuration/home-configuration.scm diff --git a/.bash_profile b/home-configuration/.bash_profile similarity index 100% rename from .bash_profile rename to home-configuration/.bash_profile diff --git a/home-configuration/.bashrc b/home-configuration/.bashrc new file mode 100644 index 0000000..13ed4eb --- /dev/null +++ b/home-configuration/.bashrc @@ -0,0 +1,46 @@ +# 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. +[ -f /etc/bashrc ] && source /etc/bashrc + +alias ls='ls -p --color=auto' +alias ll='ls -l' +alias grep='grep --color=auto' +alias revive="xmodmap -e 'clear mod4' && xmodmap -e 'keycode 133 = F20'" +alias lf='~/.local/bin/lf/lfrun' +alias ct='~/.local/bin/compatibility.sh' +alias analyze_video='~/.local/bin/analyze_video.sh' + + +GUIX_PROFILE="/home/hashirama/.guix-profile" + . "$GUIX_PROFILE/etc/profile" + + +export GTK_IM_MODULE=fcitx +export QT_IM_MODULE=fcitx +export XMODIFIERS=@im=fcitx + +check_and_open_tmux(){ + if [ "$TERM" == "alacritty" ]; then + tmux + fi +} + +check_and_open_tmux +GUILE_LOAD_PATH=$HOME/dev/guix_channel/ajatt-tools-guix/ajatt/:$GUILE_LOAD_PATH diff --git a/home-configuration/home-configuration.scm b/home-configuration/home-configuration.scm new file mode 100644 index 0000000..94fd53c --- /dev/null +++ b/home-configuration/home-configuration.scm @@ -0,0 +1,132 @@ +;; 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)) + +(home-environment + ;; Below is the list of packages that will show up in your + ;; Home profile, under ~/.guix-home/profile. + (packages (specifications->packages (list "flameshot" + "ncmpcpp" + "font-meslo-lg-dz" + "font-meslo-lg" + "gd-tools" + "emacs-org-roam-ui" + "wmctrl" + "telegram-desktop" + "lf" + "ranger" + "ueberzug++" + "fzf" + "emacs-org-roam" + "libime" + "fcitx5-gtk4" + "fcitx5-qt" + "fcitx5-gtk" + "sselp" + "nano" + "thunar" + "mcomix" + "pinentry" + "goldendict-ng" + "xdg-utils" + "font-google-material-design-icons" + "gst-plugins-good-qt" + "qtmultimedia" + "xpad-module" + "unzip" + "zip" + "emacs-esxml" + "html-xml-utils" + "emacs-rainbow-delimiters" + "aria2" + "xdg-desktop-portal" + "xdg-desktop-portal-gtk" + "xprop" + "nicotine+" + "yt-dlp" + "higan" + "nyxt" + "emacs-nyxt" + "tmux" + "alacritty" + "lm-sensors" + "anki" + "emacs-olivetti" + "foliate" + "emacs-slime" + "python" + "xrdb" + "dbus" + "steam" + "make" + "p7zip" + "cmake" + "element-desktop" + "emacs-dirvish" + "readline" + "curl" + "nix" + "qpdfview" + "xclip" + "font-apple-color-emoji" + "emacs-nerd-icons" + "emacs-telega" + "htop" + "cl-clx" + "neofetch" + "kitty" + "sbcl-stumpwm-ttf-fonts" + "cl-clx-truetype" + "picom" + "feh" + "xmodmap" + "rofi" + "emacs-stumpwm-mode" + "sbcl-stumpwm-net" + "sbcl-stumpwm-cpu" + "sbcl-stumpwm-mem" + "sbcl-stumpwm-disk" + "sbcl-stumpwm-screenshot" + "sbcl-stumpwm-pamixer" + "sbcl-stumpwm-swm-gaps" + "cmus" + "zstd" + "scrot" + "cl-css" + "git" + "gst-plugins-good" + "gst-plugins-bad" + "gstreamer" + "ungoogled-chromium" + "guile" + "icecat" + "pavucontrol-qt" + "mpv" + "emacs"))) + + ;; 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 + (aliases '(("analyze_video" . "~/.local/bin/analyze_video.sh") + ("ct" . "~/.local/bin/compatibility.sh") + ("grep" . "grep --color=auto") + ("lf" . "~/.local/bin/lf/lfrun") + ("ll" . "ls -l") + ("ls" . "ls -p --color=auto") + ("revive" . "xmodmap -e '\\''clear mod4'\\'' && xmodmap -e '\\''keycode 133 = F20'\\''"))) + (bashrc (list (local-file + "/home/hashirama/src/guix-config/.bashrc" + "bashrc"))) + (bash-profile (list (local-file + "/home/hashirama/src/guix-config/.bash_profile" + "bash_profile"))))))))