config: add 'login-shell' option

This commit is contained in:
Daniel Eklöf 2020-02-20 18:35:10 +01:00
parent 8dee9bf942
commit 6af4b87ec5
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
3 changed files with 11 additions and 0 deletions

View file

@ -159,6 +159,14 @@ parse_section_main(const char *key, const char *value, struct config *conf,
conf->shell = strdup(value);
}
else if (strcmp(key, "login-shell") == 0) {
conf->login_shell = (
strcasecmp(value, "on") == 0 ||
strcasecmp(value, "true") == 0 ||
strcasecmp(value, "yes") == 0) ||
strtoul(value, NULL, 0) > 0;
}
else if (strcmp(key, "geometry") == 0) {
unsigned width, height;
if (sscanf(value, "%ux%u", &width, &height) != 2 || width == 0 || height == 0) {

View file

@ -10,6 +10,7 @@
struct config {
char *term;
char *shell;
bool login_shell;
unsigned width;
unsigned height;
unsigned pad_x;

2
main.c
View file

@ -286,6 +286,8 @@ main(int argc, char *const *argv)
free(conf.term);
conf.term = strdup(conf_term);
}
if (login_shell)
conf.login_shell = true;
if (tll_length(conf_fonts) > 0) {
tll_free_and_free(conf.fonts, free);
tll_foreach(conf_fonts, it)