#:export (home-bash-configuration
home-bash-service-type))
-;; Local file is already a gexp, so just return in.
-(define (serialize-local-file field-name value)
+(define (serialize-string field-name value)
value)
(define-configuration home-bash-configuration
(package bash)
"Packages to be installed by the service.")
(bash-profile
- (local-file)
+ (string)
"Dotfile for login shells.")
(bashrc
- (local-file)
+ (string)
"Dotfile for interactive non-login shells."))
(define (install-bash-packages config)
(define (symlink-bash-dotfiles config)
(list `(".bash_profile"
- ,(home-bash-configuration-bash-profile config))
+ ,(local-file (home-bash-configuration-bash-profile config)
+ "bash_profile"))
`(".bashrc"
- ,(home-bash-configuration-bashrc config))))
+ ,(local-file (home-bash-configuration-bashrc config)
+ "bashrc"))))
(define home-bash-service-type
(service-type
(services
(list (service home-bash-service-type
(home-bash-configuration
- ;; `local-file` for a name with a dot causes an error. A
- ;; workaround it put a different NAME argument.
- (bash-profile (local-file "bash/.bash_profile" "bash_profile"))
- (bashrc (local-file "bash/.bashrc" "bashrc")))))))
+ (bash-profile "bash/.bash_profile")
+ (bashrc "bash/.bashrc"))))))