Add some details to README.md
This commit is contained in:
parent
e8f36057f4
commit
1a13229343
3 changed files with 23 additions and 5 deletions
23
README.md
23
README.md
|
@ -9,7 +9,14 @@ Planned features and fixes include closing windows from within swaymux without s
|
|||
|
||||
|
||||
# Installing
|
||||
Swaymux is packaged as a nix flake. To install it, add the flake input, e.g. using the following snippet:
|
||||
## Requirements
|
||||
This system expects the `$SWAY_SOCK` environment variable to be set and the associated socket to be bindable. If that isn't the case, this program will fail to launch.
|
||||
Further, on Nix and NixOS the runtime dependencies should already be packaged. For any other system i currently do not have a good way to test, but a valid QT QPA platform plugin should be all that is needed runtime.
|
||||
|
||||
## Nix and NixOS
|
||||
Swaymux is packaged as a nix flake. It can be tested using `nix run git+https://git.grimmauld.de/Grimmauld/swaymux`, this will build and launch swaymux in a temporary environment that will be removed at next garbage collect in store.
|
||||
|
||||
To install swaymux permanently, add the flake input, e.g. using the following snippet:
|
||||
```nix
|
||||
swaymux = {
|
||||
url = "git+https://git.grimmauld.de/Grimmauld/swaymux";
|
||||
|
@ -23,11 +30,21 @@ environment.systemPackages = [
|
|||
inputs.swaymux.packages."${system}".default
|
||||
];
|
||||
```
|
||||
Keep in mind you'll need to make the system constant available, e.g. by setting `specialArgs = { inherit inputs system; };` as part of your nixosSystem definition in your systems flake.
|
||||
If you want to directly copy this, keep in mind you'll need to make the system and inputs constants available, e.g. by setting `specialArgs = { inherit inputs system; };` as part of your nixosSystem definition in your systems flake.
|
||||
|
||||
## Other systems
|
||||
This project uses cmake and requires the [nlohman json library](https://github.com/nlohmann/json) as well as QT6.
|
||||
Last time I tested, both GCC and clang compilers worked. Therefore, the classic installation process with cmake, make and make install should just work, though I currently do not have a good way to test.
|
||||
|
||||
|
||||
## Integrating with sway
|
||||
Once the package is available, it can be made available in sway by keybinding. Setting swaymux to be floating is recommended.
|
||||
```sway
|
||||
for_window [app_id="swaymux"] floating enable
|
||||
bindsym $mod+c exec swaymux
|
||||
```
|
||||
Available key bindings can be viewed in-App.
|
||||
Available key bindings can be viewed in-App.
|
||||
|
||||
# Developing
|
||||
On Nix, the flake makes `nix develop` available, which provides a development environment with all the required dependencies. It does however not provide an IDE by itself.
|
||||
On any other system, or if you don't like `nix develop`, the standard way of developing cmake based c++ projects should work. Just make sure both compile and runtime dependencies are available.
|
|
@ -22,6 +22,7 @@
|
|||
packages = with pkgs; [
|
||||
# base toolchain
|
||||
gcc12
|
||||
clang
|
||||
libgcc
|
||||
qt6.full
|
||||
qtcreator
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<layout class="QGridLayout" name="gridLayoutTree">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTreeView" name="treeView">
|
||||
<property name="font">
|
||||
|
@ -58,7 +58,7 @@
|
|||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<layout class="QGridLayout" name="gridLayoutKeys">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTableView" name="tableView">
|
||||
<property name="font">
|
||||
|
|
Loading…
Reference in a new issue