diff --git a/dmenu/PKGBUILD b/dmenu/PKGBUILD index c6f825b..5eea39c 100644 --- a/dmenu/PKGBUILD +++ b/dmenu/PKGBUILD @@ -9,10 +9,17 @@ arch=('x86_64') license=('MIT') options=(zipman) depends=('sh' 'glibc' 'coreutils' 'libx11' 'libxinerama' 'libxft' 'freetype2' 'fontconfig' 'libfontconfig.so') -source=(https://dl.suckless.org/tools/dmenu-${pkgver}.tar.gz +_patchname=("center" "gruvbox" "border") +source=(https://dl.suckless.org/tools/$pkgname-${pkgver}.tar.gz + center.diff::https://tools.suckless.org/$pkgname/patches/center/$pkgname-center-$pkgver.diff + gruvbox.diff::https://tools.suckless.org/$pkgname/patches/gruvbox/$pkgname-gruvbox-20210329-9ae8ea5.diff + border.diff::https://tools.suckless.org/$pkgname/patches/border/$pkgname-border-$pkgver.diff config.h) sha512sums=('7be9bb76b11225ec86a30e643e9b884f6d13af581526085212cb7401383d448a72fe4dffc3ce84ffb8319dbf36ca8384597a89070cd27d39d5618f239a2da6e3' - 'SKIP') + 'b98695c14063b9555c6964e675512bcdc3a4dc97ece8a882fabe9261b9081bd31dbd884885d9ad0b2c1305bdcc50170bb0641659e076333c7a1e29aed516a476' + '8a860d57a550bef787de1d7be28ce9531340c01af296f0c6da6485ec0bb6e16293dd2ba13806280dd26d4a07c3d0f067fd84ed2abb9a8c66546d90c04489e234' + 'b241c668bb18a2bdcc4bc76492ff34ab24cc35d7af49a0f84069ab9fa3d4ce81bcc30bf8b14c02f1403e52370c050e6b210330752245301ba479073aa0e40d61' + 'a9f3f35ed258ff430584d7b21493cbb1f76bae40d2c58b0bcf30fdeb14fc1616f92d4e0c5696f9f30117e659f1c231e037b5a1517d71052848a069e17e013911') prepare() { cd ${pkgname}-${pkgver} @@ -22,6 +29,10 @@ prepare() { if [[ -f "${srcdir}/config.h" ]]; then cp -fv "${srcdir}/config.h" config.h fi + for p in ${_patchname[@]}; do + printf "\npatching %s\n\n" "$p" + patch --forward --strip=1 --input="${srcdir}/$p.diff" + done } build() { diff --git a/dmenu/config.h b/dmenu/config.h index 1edb647..0e5c9b9 100644 --- a/dmenu/config.h +++ b/dmenu/config.h @@ -2,6 +2,8 @@ /* Default settings; can be overriden by command line. */ static int topbar = 1; /* -b option; if 0, dmenu appears at bottom */ +static int centered = 0; /* -c option; centers dmenu on screen */ +static int min_width = 500; /* minimum width when centered */ /* -fn option overrides fonts[0]; default X11 font or font set */ static const char *fonts[] = { "monospace:size=10" @@ -15,6 +17,7 @@ static const char *colors[SchemeLast][2] = { }; /* -l option; if nonzero, dmenu uses vertical list with given number of lines */ static unsigned int lines = 0; +static unsigned int border_width = 0; /* * Characters not considered part of a word while deleting words