mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-04 04:06:06 -05:00
config: use $HOME instead of getpwuid() to retrieve users’s home dir
When searching for foot.ini, use $HOME instead of getpwuid() to retrieve the user’s home directory.
This commit is contained in:
parent
7e8b5f9610
commit
bc7214cd88
4 changed files with 13 additions and 13 deletions
|
|
@ -50,6 +50,11 @@
|
|||
|
||||
|
||||
### Changed
|
||||
|
||||
* Use `$HOME` instead of `getpwuid()` to retrieve the user’s home
|
||||
directory when searching for `foot.ini`.
|
||||
|
||||
|
||||
### Deprecated
|
||||
### Removed
|
||||
### Fixed
|
||||
|
|
|
|||
13
config.c
13
config.c
|
|
@ -311,15 +311,6 @@ struct config_file {
|
|||
int fd; /* FD of file, O_RDONLY */
|
||||
};
|
||||
|
||||
static const char *
|
||||
get_user_home_dir(void)
|
||||
{
|
||||
const struct passwd *passwd = getpwuid(getuid());
|
||||
if (passwd == NULL)
|
||||
return NULL;
|
||||
return passwd->pw_dir;
|
||||
}
|
||||
|
||||
static struct config_file
|
||||
open_config(void)
|
||||
{
|
||||
|
|
@ -328,7 +319,7 @@ open_config(void)
|
|||
|
||||
const char *xdg_config_home = getenv("XDG_CONFIG_HOME");
|
||||
const char *xdg_config_dirs = getenv("XDG_CONFIG_DIRS");
|
||||
const char *home_dir = get_user_home_dir();
|
||||
const char *home_dir = getenv("HOME");
|
||||
char *xdg_config_dirs_copy = NULL;
|
||||
|
||||
/* First, check XDG_CONFIG_HOME (or .config, if unset) */
|
||||
|
|
@ -756,7 +747,7 @@ parse_section_main(struct context *ctx)
|
|||
const char *include_path = NULL;
|
||||
|
||||
if (value[0] == '~' && value[1] == '/') {
|
||||
const char *home_dir = get_user_home_dir();
|
||||
const char *home_dir = getenv("HOME");
|
||||
|
||||
if (home_dir == NULL) {
|
||||
LOG_CONTEXTUAL_ERRNO("failed to expand '~'");
|
||||
|
|
|
|||
|
|
@ -361,7 +361,7 @@ foot will search for a configuration file in the following locations,
|
|||
in this order:
|
||||
|
||||
- *XDG_CONFIG_HOME/foot/foot.ini* (defaulting to
|
||||
*~/.config/foot/foot.ini* if unset)
|
||||
*$HOME/.config/foot/foot.ini* if unset)
|
||||
- *XDG_CONFIG_DIRS/foot/foot.ini* (defaulting to
|
||||
*/etc/xdg/foot/foot.ini* if unset)
|
||||
|
||||
|
|
@ -464,6 +464,10 @@ The following environment variables are used by foot:
|
|||
The default child process to run, when no _command_ argument is
|
||||
specified and the *shell* option in *foot.ini*(5) is not set.
|
||||
|
||||
*HOME*
|
||||
Used to determine the location of the configuration file, see
|
||||
*foot.ini*(5) for details.
|
||||
|
||||
*XDG\_CONFIG\_HOME*
|
||||
Used to determine the location of the configuration file, see
|
||||
*foot.ini*(5) for details.
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ foot will search for a configuration file in the following locations,
|
|||
in this order:
|
||||
|
||||
- *XDG_CONFIG_HOME/foot/foot.ini* (defaulting to
|
||||
*~/.config/foot/foot.ini* if unset)
|
||||
*$HOME/.config/foot/foot.ini* if unset)
|
||||
- *XDG_CONFIG_DIRS/foot/foot.ini* (defaulting to
|
||||
*/etc/xdg/foot/foot.ini* if unset)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue