Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bemenu: init at 0.1.0 #60661

Merged
merged 2 commits into from May 13, 2019
Merged

bemenu: init at 0.1.0 #60661

merged 2 commits into from May 13, 2019

Conversation

thiagokokada
Copy link
Contributor

Motivation for this change

Bemenu is a dynamic menu library and client program inspired by dmenu with support for wayland compositors (and also X11 and ncurses).

Build and tested in NixOS 19.03.172392.6d7ed96429 in X11 (i3wm), wayland (sway) and ncurses (kitty).

There seems to be a package for bemenu already in master, however this is based in a very old commit (~2017) when bemenu used to only run in orbment. Nowadays bemenu also runs in other wayland compositors like sway, so it is a interesting alternative to dmenu, rofi for wayland users.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@alexarice
Copy link
Contributor

Looks really interesting as I have been having problems with dmenu in wayland.
Probably better to use pname instead of name

@alexarice
Copy link
Contributor

It seems there are options upstream to build for different renderers. Is this building all 3?

@thiagokokada
Copy link
Contributor Author

@alexarice Yeah, it is building for all 3 renderers. You can change between them using BEMENU_BACKEND.

@alexarice
Copy link
Contributor

Ah I was confused as the readme has changed since 0.1.0

@thiagokokada
Copy link
Contributor Author

@alexarice Whats the difference between pname and name?

@alexarice
Copy link
Contributor

If you write

pname = "bemenu";
version = "0.1.0";

then it automatically sets name = ${pname}-${version}
It doesn't really change anything, it's just a bit neater

@thiagokokada
Copy link
Contributor Author

@alexarice Cool, done!

maintainers/maintainer-list.nix Outdated Show resolved Hide resolved
@alexarice
Copy link
Contributor

Both executables seem to work to me. It would be nice but not essential if docs worked and there were options to enable/disable backends

@thiagokokada
Copy link
Contributor Author

@etu Made the changes.

@alexarice I added support to build only the backends the user wants. I tried to add documentation support, however the only output I got was either LaTeX or html, so I don't think it is much useful.

@etu
Copy link
Contributor

etu commented May 2, 2019

@thiagokokada The commit message should also be: bemenu: init at 0.1.0

@etu
Copy link
Contributor

etu commented May 2, 2019

Also, something in this PR seems to break eval. But there's no details link.

So here goes @GrahamcOfBorg eval

@thiagokokada
Copy link
Contributor Author

@etu Fixed commit message. However, I have no idea why eval is breaking. Where could I see output from @GrahamcOfBorg?

@thiagokokada thiagokokada changed the title misc: Add bemenu package misc: init bemenu at 0.1.0 May 2, 2019
@etu etu changed the title misc: init bemenu at 0.1.0 bemenu: init at 0.1.0 May 2, 2019
Bemenu is a dynamic menu library and client program inspired by dmenu
with support for wayland compositors (and also X11 and ncurses).

Build and tested in NixOS 19.03.172392.6d7ed96429 in X11 (i3wm), wayland
(sway) and ncurses (kitty).
@thiagokokada
Copy link
Contributor Author

@alexarice @etu This should build now (at least seems to build fine locally).

@etu
Copy link
Contributor

etu commented May 3, 2019

The eval is happy now at least :-)

@GrahamcOfBorg build bemenu

@thiagokokada
Copy link
Contributor Author

thiagokokada commented May 3, 2019 via email

@alexarice
Copy link
Contributor

Fair enough, It doesn't matter anyway I guess

@thiagokokada
Copy link
Contributor Author

@etu @alexarice Can I get this PR merged? Or is there some other issue that needs to be fixed?

@alexarice
Copy link
Contributor

@thiagokokada I am not able to merge things but don't see any problems

@etu
Copy link
Contributor

etu commented May 13, 2019

@thiagokokada I've not been able to try this program locally. It builds fine but when I run it. Nothing happens. I've tried to supply the env-variable to force it to run in ncurses mode. And just no output. So I'm not sure how it's supposed to be used...

@alexarice
Copy link
Contributor

@etu have you tried bemenu-run? both that and j4-dmenu-desktop --dmenu="result/bin/bemenu" work for me on sway

@etu
Copy link
Contributor

etu commented May 13, 2019

@alexarice Thanks, didn't notice that binary. I tabcompleted to bemenu and got confused by it's behaviour. But it all makes sense now :-)

@etu etu merged commit 83a01ab into NixOS:master May 13, 2019
@thiagokokada thiagokokada deleted the add-bemenu-pkg branch May 13, 2019 13:46
@NilsIrl
Copy link
Member

NilsIrl commented Dec 29, 2019

Why does it still not appear on the package search?

https://nixos.org/nixos/packages.html?channel=nixpkgs-unstable&query=bemenu

It's even in nixos 19.09

@NilsIrl
Copy link
Member

NilsIrl commented Dec 29, 2019

Also why is it that when I test it locally from nixpkgs, there is not font (all characters are unknown sign) but when I install it with nix-env -iA it works?

@NilsIrl NilsIrl mentioned this pull request Dec 30, 2019
10 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants