Commit Graph

187 Commits

Author SHA1 Message Date
Patrick Ziegler
282b0f4e73
Create default config (#2511)
* Create default config and install to /etc/polybar

Closes #2405

* Search for config in /etc

We search in XDG_CONFIG_DIRS, /etc/xdg, and /etc but only for config.ini

Closes #2016

* Remove config installation from build.sh

* Remove userconfig cmake file

* Cleanup

* Cleanup default config

* Update CHANGELOG.md

Co-authored-by: dvermd <315743+dvermd@users.noreply.github.com>

* Update src/main.cpp

Co-authored-by: dvermd <315743+dvermd@users.noreply.github.com>

* Add tests for string functions

* Support loading bars from fallbacks in /etc

* Combine duplicate string_util::contains test

Co-authored-by: dvermd <315743+dvermd@users.noreply.github.com>
2021-10-05 13:07:19 +02:00
patrick96
069036fa5a Add libuv to polybar-git PKGBUILD 2021-09-21 20:36:23 +02:00
patrick96
0bf45f3bd6 Update PKGBUILD for 3.5.7 2021-09-21 18:37:22 +02:00
patrick96
e66a678c12 Update PKGBUILD for 3.5.6
We can now remove the temporary fix for the i3 crash
2021-05-24 01:23:57 +02:00
patrick96
10bbec4451 Fix abort in i3 module with new ArchLinux flags
Fixes #2416
Ref: https://github.com/polybar/i3ipcpp/pull/11
2021-04-25 13:37:00 +02:00
patrick96
c197cff511 PKGBUILD: Add python-packaging as build dependency 2021-03-02 00:34:28 +01:00
patrick96
ac01d8b5c0 Update PKGBUILD for 3.5.5 2021-03-01 21:54:27 +01:00
patrick96
68ce23cbd3 Remove polybar spec file
Polybar is now available as a native package in the major rpm-based
distros.

Ref: #1633
2021-01-15 16:17:28 +01:00
Patrick Ziegler
0cfdd88ad0
Update PKGBUILD for 3.5.4 (#2347) 2021-01-07 14:52:01 +01:00
Patrick Ziegler
7d1b265ef4
Update PKGBUILD for 3.5.3 (#2327) 2020-12-23 17:56:48 +01:00
patrick96
6afe6581e1 aur: Update PKGBUILD for 3.5.2 release 2020-12-14 11:10:27 +01:00
patrick96
7493639889 aur: Update PKGBUILD for 3.5.1 release 2020-12-12 13:42:37 +01:00
Patrick Ziegler
d6ce8c9a46
aur: Update PKGBUILD for 3.5.0 release (#2261) 2020-12-02 22:00:15 +01:00
patrick96
14a948d75d aur: Use Release mode in cmake
This is already the default but our packaging guidelines recommend this,
so we should also follow them.
2020-10-31 10:53:32 +01:00
Patrick Ziegler
2b6abb9b8f
xpp: Update submodule (#2125)
* xpp: Update submodule

* aur: Force system python in polybar-git

This should resolve problems on systems with conda or pyenv enabled that
would otherwise not pick up xcbgen properly
2020-06-10 21:00:18 +02:00
patrick96
f7dd5041fb aur: Update PKGBUILD for 3.4.3 2020-05-15 14:52:37 +02:00
patrick96
cae3848030 logger: Add default logging level 'notice'
Between info and warning. Should be for things the user should be aware
of but not imply anything has to be done about it.
2020-04-22 00:38:31 +02:00
patrick96
fbbb5922da doc: Reword -m and -M description 2020-04-21 23:59:01 +02:00
patrick96
9f7363c9ee bash: Remove tabs 2020-04-21 23:59:01 +02:00
patrick96
2edd8275ff Add -M CLI argument to display cloned monitors
Works the same as -m but doesn't purge cloned monitors
2020-04-21 23:59:01 +02:00
patrick96
d3d868a08c aur: Update PKGBUILD for 3.4.2 2019-12-28 10:22:34 +01:00
Patrick Ziegler
fdf4d0c1a5 Revert "fix(aur): Add xorgproto package as make dependency"
This reverts commit a902b5a449.
2019-12-25 00:53:21 +01:00
patrick96
a902b5a449 fix(aur): Add xorgproto package as make dependency
xorgproto always was a make dependency (I think) but it was
automatically included indirectly by another dependency.
Arch recently cleaned up some xorg related packages which made xorgproto
no longer an indirect dependency of polybar which spams cmake with
messages like:

```
Package 'xproto', required by 'xau', not found
Package 'xproto', required by 'xdmcp', not found
Package 'xproto', required by 'xau', not found
Package 'xproto', required by 'xdmcp', not found
Package 'xproto', required by 'xau', not found
Package 'xproto', required by 'xdmcp', not found
Package 'xproto', required by 'xau', not found
Package 'xproto', required by 'xdmcp', not found
```

And during `make` finally completely fails the build because some
library's include directories are not honored because the xproto.pc file
cannot be found:

```
In file included from /home/patrick96/Projects/github.com/patrick96/polybar/include/cairo/utils.hpp:3,
                 from /home/patrick96/Projects/github.com/patrick96/polybar/src/cairo/utils.cpp:3:
/usr/include/cairo/cairo-ft.h:46:10: fatal error: ft2build.h: No such file or directory
   46 | #include <ft2build.h>
      |          ^~~~~~~~~~~~
```

Ref: https://bugs.archlinux.org/task/64892
2019-12-22 17:12:49 +01:00
patrick96
7ee6093a6e aur: Update maintainer 2019-11-01 14:06:02 +01:00
patrick96
54381fd554 Update PKGBUILD for 3.4.1 2019-11-01 14:06:02 +01:00
Michael Vetter
c6194c06eb Update spec file
Adjust version number.
Add new dependencies.
Explicitly ask for Python 3.
2019-10-31 16:07:00 +01:00
patrick96
a77923ea96 build: drop python2
Ref: https://github.com/polybar/xpp/pull/17
Fixes #1892
2019-10-26 22:29:04 +02:00
patrick96
5a309f0e33 fix(aur): Add sphinx as a build dependency 2019-09-18 16:22:23 +02:00
patrick96
c6bc8a6ee6 build: Remove pulseaudio binary dependency check
The binary is not needed to compile and run polybar with pulseaudio
support. Though of course there is no use in having a pulse module when
you don't have pulseaudio installed.
2019-07-31 00:37:05 +02:00
patrick96
2b691af41e aur: Make feature deps hard deps
In the AUR optdepends means that the package can run without optdepends
installed. In polybar most features, if enabled at compile time, cannot
run without their dependencies and will crash polybar. Now the
optdepends only contains truly optional dependencies.

Polybar can run without the i3-wm package because it only relies on the
`i3` executable and is not dynamically linked against any library in i3.
2019-07-31 00:37:05 +02:00
patrick96
fe7dc28b07 Update PKGBUILDs for 3.4.0 2019-07-24 20:57:39 +02:00
Rune Morling
43556b5d92 cmake: Use GNUInstallDirs (#1818)
* Use GNUInstallDirs instead of hardcoded paths

This change should be a no-op in the normal case and at the same time make it
easier to customise polybar builds on systems with special needs.

* Avoid creating /usr/share/doc/polybar/polybar/*

* Include GNUInstallDirs for the doc target itself

* cmake: Don't try to set CMAKE_INSTALL_* variables

Since we include GNUInstallDirs all these variables are already set

* cmake: Print install directories in summary

* fix(cmake): Make doc-only work like normal build

This is kind of a dirty hack to force CMAKE_INSTALL_DOCDIR to use
`polybar` as the project name when only polybar-doc is built.

Maybe it is wiser at some point to be able to do a doc only build (and
install) that can be done from the top level project. Then we would also
not need to include GNUInstallDirs here
2019-06-24 18:08:59 +02:00
patrick96
4cc836fa66 migration: Update URLs
jaagr/polybar -> polybar/polybar

Travis changed their url for new projects to travis-ci.com
2019-05-08 12:20:33 +02:00
patrick96
01b326c10f move shell completion to contrib folder
Now the doc folder is exclusively for documentation
2019-04-24 08:11:27 +02:00
patrick96
aec34c11f1 aur: Add python-sphinx to polybar-git makedepends
Not yet to 'polybar' package that will be done in the next release
2019-04-05 23:43:37 +02:00
Patrick Ziegler
cff13214ff
fix(aur): Patch release in polybar-git package (#1724)
The polybar-git PKGBUILD should not be updated for patch releases
2019-04-03 08:07:47 +02:00
Patrick Ziegler
253f44caaa
aur: Update to 3.3.1 (#1723) 2019-04-03 07:53:34 +02:00
Michael Vetter
0ec4e54c6c contrib: Add rpm spec file (#1633) 2019-01-29 20:10:31 +01:00
patrick96
21188bca24 aur: fix tar url 2019-01-08 17:08:32 +01:00
patrick96
8bca79f561 aur: Use tar file for polybar package
We provide the polybar.tar as part of our release process so it is more
efficient to let users build directly from the uploaded archive
2019-01-08 17:00:53 +01:00
Patrick Ziegler
c3ef99b719
Release 3.3.0 (#1543)
### Breaking Changes:
None

### Changelog

**New Config Options**
The following config options were added

In the `[settings]` section:
* `pseudo-transparency`

In `internal/cpu`:
* `ramp-coreload-spacing`, spacing between elements in `<ramp-coreload>` elements
* `%percentage-sum%` in `label`. Shows sum of all percentages

In `custom/script`:
* `double-click-left`
* `double-click-middle`
* `double-click-right`

In `internal/pulseaudio`:
* `interval`, volume increase and decrease steps in percentage points

In `internal/memory`:
* `bar-swap-used`
* `bar-swap-free`
* `ramp-swap-used`
* `ramp-swap-free`

**Deprecations**
* `tray-transparent` in the bar section is no longer used. The tray now always uses pseudo-transparency

**Features**
* volume: adjustable volume steps (#1364), see #1361
* memory: Add progress bars and ramps for swap (#1325)
* render: pseudo-transparency (always used in the tray)  (#595)
* cpu: 
    * Configurable spacing in between coreloads (#1472), see #1389
    * Non-normalized cpu load (#1517), see #1516
* script: Double click actions (#1442)
* net: Support for bridge interfaces (#1528), see #1522
* token: zero pad tokens when min-width value starts with a `0` (#1341), see #1332

**Fixes**
* config: Use font patterns detected on system in sample config (#1350)
* net: Disconnected module when SSID is only an emoji (#1371), see #1367
* tray: Tray overlapping with bar (#1392), see #591
* build: Several build errors (#1395, #1454, #1470, jaagr/xpp#12, #1493), see #1447, #1469, #750, #1492
* mpd: format-online-prefix not working (#1402), see #1399
* font: Crash for some font-patterns (#1451), see #1435
* script: 
    * Only `%counter%` or `%pid%` token usable, never both (#1456)
    * click actions with colons in them (#1457), see #984
* renderer: Bar locks up when xorg composite extension is disabled (#1430), see #1425
2018-12-23 21:36:30 +01:00
Patrick Ziegler
6d0cfbdfde Revert "feat(cpu): Add ramp-coreload-spacing (#1472)"
This reverts commit 06adef1055.
2018-10-16 01:01:11 +02:00
Ryan Geary
06adef1055 feat(cpu): Add ramp-coreload-spacing (#1472)
Resolves #1389
2018-10-16 00:59:45 +02:00
Andre Schröder
b632e7da38 fix(cmake): Use name of found font (#1350)
Before queryfont would never change the name of the font, this ensure that it is propery updated in the caller's scope
2018-08-07 17:04:42 +02:00
Patrick Ziegler
934e277ccd
Release 3.2.0 (#1338)
Breaking Changes:

* `0 < label-NAME-maxlen < 3` will now throw an exception and disable the containing module, if ellipsis is enabled for that label. (#1198)

Changelog:

Deprecations:
* `internal/volume` is now called `internal/alsa` (#967)
* temperature: The `%temperature%` is deprecated in favor of `%temperature-c%`(#897)
* mpd: `icon-repeatone` is deprecated in favor of `icon-single` (#1295), see #1279

Features:
* feat(mpd): Add support for icon-consume (#861)
* feat(bspwm): Add workspace separator (#942) 
* feat(i3): Add workspace separator (#938), see #929
* feat(build): Make polybar build on FreeBSD (#931, jaagr/xpp#8), see #239
* feat(volume): Add pulseaudio backend (#779)
* feat(script): Add %pid% token for tail commands (#934)
* feat(temp): Add temperature tokens without unit (#897)
* feat(memory): Add memory used/free ramp (#1038), see #1037
* feat(memory): Add swap tokens (#1018) 
* feat(net): Add unknown-as-up option (#1077), see #457
* feat(config): Support fractional size and offset (#972), see #953
* feat(xwindow): Add label-empty (#1136)
* feat(battery): Add animation-discharging (analog to animation-charging) (#1190)
* feat(config): Support pixel offset for bar size and offset values (#1224)
* feat(mpd): Add `%album-artist%` token (#1263)
* feat(net): Add local_ip6 token (#1239), see #1234
* feat(net): Add nl80211 support (#1009), see #277

Fixes:
* fix(mpd): Wrong elapsed time when after standby (#921), see #915
* fix(config): Wrong min, maxlen when using the same token multiple times (#974), see #971
* fix(battery): use power_now correctly (#958), see #928
* fix(mpd): Crash when mpd isn't running (#983), see #979
* fix(xworkspaces): Respect 'enable-scroll' (#1002)
* fix(xbacklight): Respect 'enable-scroll' (#1014)
* fix(build): support xcb-proto >=1.13 (jaagr/xpp#11), see #973
* fix(mpd): Respect MPD_HOST env variable (#1025), see #1007
* fix(i3): Reconnect i3 IPC socket on restart/error (#1099), see #762
* fix(cursor): Occasional crash on mouseover (#1124), see #1117
* fix(net): Mark 'not connected' on querying failure (#1171), see #1163
* fix(gcc): Fix -Wstringop-truncation warning (#1216, jaagr/i3ipcpp#7), see #1215
* fix(builder): Don't truncate colors with same channels (#1217), see #1183
* fix(bspwm): Consistent behavior when scrolling through multiple desktops (#986), see #981
* fix(builder): Respect label-ellipsis option (#1198), see #1194
2018-07-23 15:17:29 +02:00
patrick96
820279279e aur: Add libnl as optional dependency 2018-06-19 09:42:45 -07:00
patrick96
0dddb0be4a fix(aur): Backport gcc fix 2018-05-07 19:39:05 -07:00
patrick96
eb9c8e66f2 aur: Add i3-wm dependency
The actual i3 package is also needed to build polybar with i3 support.
2018-03-20 17:59:54 -07:00
patrick96
258f55a5ff fix(aur): Use newest xpp commit to build with xcb-proto
xcb-proto 1.13 finally introduces the eventstruct key that made polybar
not compile. The fix isn't in any release yet, this checks out the
newest xpp commit with the fix during compilation until we release 3.2.0

Fixes #1090
2018-03-11 13:49:11 -07:00
patrick96
1ebb49da0a refactor(aur): Remove unused i3ipc-glib dependency
Polybar includes no header files from this library and doesn't use any
i3ipc_* functions
2018-03-03 23:47:35 +01:00