1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
|
[[http://hackage.haskell.org/package/xmobar][https://img.shields.io/hackage/v/xmobar.svg]]
* About
Xmobar is a minimalistic status bar. It was originally designed and
implemented by Andrea Rossato to work with [[http://xmonad.org][xmonad]], but it is
actually usable with any window manager.
Xmobar was inspired by the [[http://tuomov.iki.fi/software/][Ion3]] status bar, and supports similar
features, like dynamic color management, icons, output templates,
and extensibility through plugins.
These are some xmobar [[file:doc/screenshots][screenshots]] using the author's configuration:
[[file:doc/screenshots/xmobar-top.png]]
[[file:doc/screenshots/xmobar-bottom.png]]
[[file:doc/screenshots/xmobar-exwm.png]]
Check the [[./changelog.md][the change log]] for our release history.
* Installation
** From your system's package manager
Xmobar is probably available from your distributions package
manager! Most distributions compile xmobar with the =all_extensions=
flag, so you don't have to.
*** Arch Linux
#+begin_src shell
pacman -S xmobar
#+end_src
*** Debian/Ubuntu based
#+begin_src shell
apt install xmobar
#+end_src
*** OpenSUSE
#+begin_src shell
zypper install xmobar
#+end_src
*** Void Linux
#+begin_src shell
xbps-install xmobar
#+end_src
*** Gentoo
#+begin_src shell
emerge --ask xmobar
#+end_src
** Using cabal-install
Xmobar is available from [[http://hackage.haskell.org/package/xmobar/][Hackage]], and you can install it using
=cabal-install=:
#+begin_src shell
cabal install xmobar
#+end_src
Starting with version 0.35.1, xmobar now requires at least GHC
version 8.4.x. to build. See [[https://github.com/jaor/xmobar/issues/461][this issue]] for more information.
See [[file:doc/compiling.org][compiling]] for a list of optional compilation flags that will
enable some optional plugins. For instance, to install xmobar with
all the bells and whistles (this is probably what you want), use:
#+begin_src shell
cabal install xmobar --flags="all_extensions"
#+end_src
** From source
See [[file:doc/compiling.org][compiling]].
* Running xmobar
You can run xmobar with:
#+begin_src shell
xmobar /path/to/config &
#+end_src
or
#+begin_src shell
xmobar &
#+end_src
if you have the default configuration file saved as
=$XDG_CONFIG_HOME/xmobar/xmobarrc= (defaulting to
=~/.config/xmobar/xmobarrc=), or =~/.xmobarrc=.
* Configuration and further Links
- If you want to jump straight into configuring xmobar, head over to the
[[./doc/quick-start.org][quick start guide]].
- If you want to get a detailed overview of all available plugins and
monitors, visit the [[./doc/plugins.org][plugins index]].
- If you want to know how to contribute to the xmobar project, check out
[[contributing.org][contributing]].
- If you want to write your own plugins, see [[./doc/write-your-own-plugin.org][Write your own plugin]].
- To understand the internal mysteries of xmobar you may try reading
[[https://wiki.haskell.org/X_window_programming_in_Haskell][this tutorial]] on X Window Programming in Haskell.
* Authors and credits
Andrea Rossato originally designed and implemented xmobar up to
version 0.11.1. Since then, it is maintained and developed by [[https://jao.io][jao]],
with the help of the greater xmobar and Haskell communities.
In particular, xmobar incorporates patches by Mohammed Alshiekh,
Alex Ameen, Axel Angel, Dhananjay Balan, Claudio Bley, Dragos Boca,
Ben Boeckel, Ivan Brennan, Duncan Burke, Roman Cheplyaka, Patrick
Chilton, Antoine Eiche, Nathaniel Wesley Filardo, Guy Gastineau,
John Goerzen, Reto Hablützel, Juraj Hercek, Tomáš Janoušek, Ada
Joule, Spencer Janssen, Roman Joost, Jochen Keil, Sam Kirby, Lennart
Kolmodin, Krzysztof Kosciuszkiewicz, Dmitry Kurochkin, Todd Lunter,
Vanessa McHale, Robert J. Macomber, Dmitry Malikov, David McLean,
Joan MIlev, Marcin Mikołajczyk, Dino Morelli, Tony Morris, Eric
Mrak, Thiago Negri, Edward O'Callaghan, Svein Ove, Martin Perner,
Jens Petersen, Alexander Polakov, Sibi Prabakaran, Pavan Rikhi, Petr
Rockai, Andrew Emmanuel Rosa, Sackville-West, Amir Saeid, Markus
Scherer, Daniel Schüssler, Olivier Schneider, Alexander Shabalin,
Valentin Shirokov, Peter Simons, Alexander Solovyov, Will Song, John
Soo, John Soros, Felix Springer, Travis Staton, Artem Tarasov,
Samuli Thomasson, Edward Tjörnhammar, Sergei Trofimovich, Thomas
Tuegel, John Tyree, Jan Vornberger, Anton Vorontsov, Daniel Wagner,
Zev Weiss, Phil Xiaojun Hu, Nikolay Yakimov, Edward Z. Yang, Leo
Zhang, Norbert Zeh, and Michal Zielonka.
** Thanks
*Andrea Rossato*:
Thanks to Robert Manea and Spencer Janssen for their help in
understanding how X works. They gave me suggestions on how to solve many
problems with xmobar.
Thanks to Claus Reinke for make me understand existential types (or at
least for letting me think I grasp existential types...;-).
*jao*:
Thanks to Andrea for creating xmobar in the first place, and for giving
me the chance to contribute.
* License
This software is released under a BSD-style license. See [[https://github.com/jaor/xmobar/raw/master/license][license]] for
more details.
Copyright © 2010-2022 Jose Antonio Ortega Ruiz
Copyright © 2007-2010 Andrea Rossato
|