{ util, pkgs, ... } @args: let modules = util.catText (util.ls ./module) args; modulesFile = pkgs.writeText "BashModules" modules; in { inherit modules modulesFile; bashrc = modules + util.trimTabs '' # Find all functions. function find_function() { /usr/bin/env cat ${modulesFile} | /usr/bin/env grep "^function.*()" | /usr/bin/env sed -e "s/^function //" -e "s/().*//" } # Export all functions. export -f $(find_function | tr '\n' ' ') export -f find_function # Autostart Sway. if [[ -z $DISPLAY ]] && [[ "$(tty)" = "/dev/tty1" ]]; then exec sway fi ''; # bash_profile = util.trimTabs '' # # Home manager. # [ -e ~/.nix-profile/etc/profile.d/nix.sh ] && source ~/.nix-profile/etc/profile.d/nix.sh # # Bashrc. # [ -f ~/.bashrc ] && source ~/.bashrc # # Profile. # [ -f ~/.profile ] && source ~/.profile # ''; # profile = util.trimTabs '' # # Load HM vars. # [ -e ~/.nix-profile/etc/profile.d/hm-session-vars.sh ] && source ~/.nix-profile/etc/profile.d/hm-session-vars.sh # ''; }