Laslo Hunhold
0f7e022381
Fix a little logic error
2017-08-14 11:35:52 +02:00
Laslo Hunhold
e1e1b1d79a
Add pscanf()
...
This reduces a lot of equivalent code to one function call.
2017-08-14 08:24:54 +02:00
Laslo Hunhold
796b661284
Refactor main()
...
We remove the hack with the sleep and global "delay"-variable and use a
monotonic clock to derive the desired monotonic properties of the tool.
Inside each function that demands a personal delay we can then just do a
nanosleep() and be done with it.
It's a shame that timespec is so ugly to work with, but there's really
no way to make it more beautiful. However, at this cost though we
finally can set the interval times in milliseconds and not only just
seconds.
We remove setlocale(), because nothing good ever came out of this
function.
Besides that we have some more code refactoring, especially in the
argument loop which saves us a bit of complexity.
2017-08-13 23:45:16 +02:00
Laslo Hunhold
3468a6e368
Simplify signal handling a bit
2017-08-13 23:32:14 +02:00
Laslo Hunhold
450e8e6e6b
Remove unnecessary prototypes
2017-08-13 23:32:06 +02:00
Laslo Hunhold
ecf2779904
Remove unnecessary blank lines after license-notice
2017-08-13 23:31:56 +02:00
Aaron Marcher
6a33d6c875
Fix man page .Os field
2017-08-13 23:25:44 +02:00
Aaron Marcher
aa17443013
Added Makefile target for distribution tarballs.
2017-08-13 23:05:22 +02:00
Aaron Marcher
96334e2079
Fixed man page path
...
According to the FHS, /usr/local/share/man is the correct man page path
in this projects's case. Set this to default in config.mk.
2017-08-13 22:56:14 +02:00
Aaron Marcher
779f611208
slstatus != dmenu lol
2017-08-12 13:37:12 +02:00
Aaron Marcher
c4779c9b15
Removed #define for unknown_str
...
Debugging #define is very difficult. The performance overhead of static const
char is negligible.
2017-08-12 13:27:30 +02:00
Aaron Marcher
be12b6b350
Removed #define for update interval
...
Debugging #define, especially in mathematical constructs is very
difficult. The performance overhead of static const int is negligible.
2017-08-12 13:16:12 +02:00
Aaron Marcher
0c2ee7df91
Updated LICENSE
...
Extended Ali H. Fardan contribution dates
2017-08-12 12:55:53 +02:00
Ali H. Fardan
2c114ec2b5
keyboard_indicators: fix segfault when -s is specified
2017-08-12 12:50:11 +02:00
Aaron Marcher
6f01174392
Fixed possible NULL-deref and removed unnecessary XOpenDisplay()
...
- Added a check for the return value of XOpenDisplay() in main().
This fixes a possible NULL-deref.
- Removed unnsecessary XOpenDisplay and XCloseDisplay from
keyboard_indicators(). The ones in main() are sufficent.
2017-08-11 14:33:02 +02:00
Laslo Hunhold
1814061396
Add and use LEN() macro
2017-08-11 13:43:11 +02:00
Laslo Hunhold
178c23e3d2
Refactor battery_state()
2017-08-11 00:20:47 +02:00
Aaron Marcher
6b8384ef2f
Reformatted LICENSE to fit 75 character width
2017-08-10 22:43:56 +02:00
Laslo Hunhold
00ce7a746a
Print usage() when we are left with arguments
2017-08-10 22:33:05 +02:00
Laslo Hunhold
c9d47405f4
Reduce -o | -n to -s
...
What we really want is to either output to WM_NAME or stdout. If we want
just one single line, we do slstatus | head -n 1.
2017-08-10 22:32:57 +02:00
Laslo Hunhold
4d33c36014
Remove d- and v-flags
...
d-flag: There's no need for that, use the &-operator or fork+exec in a
non-shell-context. In the latter case you get the PID for free.
v-flag: If you want to find out which version of a package is installed,
consult your package manager. That's his job.
2017-08-10 22:32:48 +02:00
Laslo Hunhold
958c34052a
Convert slstatus.1 to mandoc, simplify it and remove -h
...
We also change the semantics of -v to only return the version
information.
There is now no need for usage() to exit with anything other than 1.
2017-08-10 22:32:28 +02:00
Laslo Hunhold
8dad4910bf
Refactor build system
2017-08-10 22:32:14 +02:00
Aaron Marcher
d35e518e39
New README in plain text
2017-08-10 21:49:37 +02:00
Aaron Marcher
b6fb77c7ac
Removed TODO.md
2017-08-10 21:10:17 +02:00
Aaron Marcher
5134a480b5
Removed CONTRIBUTING.md
2017-08-10 21:08:53 +02:00
Aaron Marcher
b3eed601e5
Moved contributors to LICENSE
2017-08-10 21:06:48 +02:00
Aaron Marcher
dad6dc6300
Copyright sign (C) is not required in LICENSE
...
According to https://opensource.org/licenses/ISC
2017-08-10 20:32:14 +02:00
Aaron Marcher
be4cffef39
Removed .gitignore from repository
...
A file outside the repository (.git/info/exclude) can replace this and
suits better for this usecase.
2017-08-10 20:30:52 +02:00
Aaron Marcher
999cf00490
new arg.h version by frign
2017-08-10 11:31:57 +02:00
aaron marcher
4b4b2ac079
add num_files() function for maildirs ;)
2017-08-06 15:02:16 +02:00
Aaron Marcher
ad39aa012c
updated readme
2017-06-13 00:11:35 +02:00
Aaron Marcher
1c8aa5318f
check for fgets/fscanf return values
2017-06-13 00:06:56 +02:00
Aaron Marcher
597cdc6b5c
use a static buffer instead of dynamic memory
2017-06-13 00:06:04 +02:00
Aaron Marcher
abbaa7af44
remove format characters from stat functions
2017-06-12 23:59:21 +02:00
Aaron Marcher
832b21ca4b
add cpu_freq function
2017-06-12 23:56:21 +02:00
Aaron Marcher
259e967cbf
add battery_power function
2017-06-12 23:55:27 +02:00
Aaron Marcher
870d68d44e
added option to output only once and exit afterwards
2017-05-11 19:06:45 +02:00
Aaron Marcher
ac1a57ec30
enable stack protector and compile to position independent executable
2017-04-20 22:33:10 +02:00
Aaron Marcher
d144c8de3d
simplified and improved vol_perc()
2017-04-20 22:30:04 +02:00
Aaron Marcher
c288663ebd
fix overflow in run_command()
2017-04-20 22:20:19 +02:00
Aaron Marcher
b2714032e5
username(): get rid of unneeded uid variable
2017-04-20 22:18:24 +02:00
Aaron Marcher
95ceafcae7
Merge pull request #39 from stoeckmann/fgets
...
On success, fgets always terminates the result.
2017-04-20 22:14:56 +02:00
Tobias Stoeckmann
35295f1902
On success, fgets always terminates the result.
...
If fgets succeeds, then the resulting char array is always
terminated by a '\0'. No need to keep extra space, therefore
sizeof(buf) is the correct argument.
Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2017-04-04 21:27:31 +02:00
Aaron Marcher
1289bdb742
Merge pull request #38 from stoeckmann/terminating-nul
...
Fixed out of boundary write on long lines.
2017-04-02 15:27:09 +02:00
Tobias Stoeckmann
b1e7c40b21
Fixed out of boundary write on long lines.
...
The terminating nul character ('\0') could be written outside the boundary of
the buffer which is used to read characters. If "sizeof(buffer)" characters
are read, the resulting value must not be used as index, because that's an off
by one.
Read sizeof(buffer)-1 bytes instead.
Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2017-04-02 13:12:03 +02:00
Aaron Marcher
cceeec0efa
loading thresholds state
2017-03-30 17:32:20 +02:00
Aaron Marcher
b11dd2db0e
Fixed XCloseDisplay() which is not reached in keyboard_indicators()
2017-01-23 21:01:41 +01:00
Aaron Marcher
823f2d047f
Added keyboard_indicators ( Fixes #31 )
2017-01-16 12:10:56 +01:00
Aaron Marcher
3f976aabc0
Makefile fix and vol_perc fix for mute
2017-01-09 12:05:29 +01:00