conf: get user's shell

This commit is contained in:
Daniel Eklöf 2019-07-17 09:29:56 +02:00
parent 6bce2bed00
commit 19aaa7b774
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
2 changed files with 18 additions and 0 deletions

View file

@ -15,6 +15,21 @@
#define LOG_ENABLE_DBG 0
#include "log.h"
static char *
get_shell(void)
{
struct passwd *passwd = getpwuid(getuid());
if (passwd == NULL) {
LOG_ERRNO("failed to lookup user");
return NULL;
}
const char *shell = passwd->pw_shell;
LOG_DBG("user's shell: %s", shell);
return strdup(shell);
}
static char *
get_config_path_user_config(void)
{
@ -145,6 +160,7 @@ struct config
config_load(void)
{
struct config conf = {
.shell = get_shell(),
.font = strdup("monospace"),
};
@ -174,5 +190,6 @@ out:
void
config_free(struct config conf)
{
free(conf.shell);
free(conf.font);
}

View file

@ -1,6 +1,7 @@
#pragma once
struct config {
char *shell;
char *font;
};