Introduction
Introduction Statistics Contact Development Disclaimer Help
st-option-20250404-98610fc.diff - sites - public wiki contents of suckless.org
git clone git://git.suckless.org/sites
Log
Files
Refs
---
st-option-20250404-98610fc.diff (1452B)
---
1 From de46184d9175c67e3fc45aed997118dad0d6bb3d Mon Sep 17 00:00:00 2001
2 From: Mertoalex Ashley <[email protected]>
3 Date: Fri, 4 Apr 2025 21:27:03 +0300
4 Subject: [PATCH] adding variable `option` to config.def.h so you can call
5 shell with argument.
6
7 ---
8 config.def.h | 6 ++++++
9 st.c | 3 +++
10 st.h | 1 +
11 3 files changed, 10 insertions(+)
12
13 diff --git a/config.def.h b/config.def.h
14 index 2cd740a..c314e98 100644
15 --- a/config.def.h
16 +++ b/config.def.h
17 @@ -17,6 +17,12 @@ static int borderpx = 2;
18 * 5: value of shell in config.h
19 */
20 static char *shell = "/bin/sh";
21 +/*
22 + * argument that should be used to call shell with,
23 + * like "-l" to make st open shell as login shell.
24 + * (needed on shells like busybox-ash.)
25 + */
26 +char *option = NULL;
27 char *utmp = NULL;
28 /* scroll program: to enable use a string like "scroll" */
29 char *scroll = NULL;
30 diff --git a/st.c b/st.c
31 index 03b9bc8..03d3100 100644
32 --- a/st.c
33 +++ b/st.c
34 @@ -677,6 +677,9 @@ execsh(char *cmd, char **args)
35 if (args) {
36 prog = args[0];
37 arg = NULL;
38 + } else if (option) {
39 + prog = sh;
40 + arg = option;
41 } else if (scroll) {
42 prog = scroll;
43 arg = utmp ? utmp : sh;
44 diff --git a/st.h b/st.h
45 index fd3b0d8..b7a0237 100644
46 --- a/st.h
47 +++ b/st.h
48 @@ -112,6 +112,7 @@ void *xrealloc(void *, size_t);
49 char *xstrdup(const char *);
50
51 /* config.h globals */
52 +extern char *option;
53 extern char *utmp;
54 extern char *scroll;
55 extern char *stty_args;
56 --
57 2.48.1
58
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.