Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xremap/nix-flake
https://github.com/xremap/nix-flake
Last synced: 2 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/xremap/nix-flake
- Owner: xremap
- License: mit
- Created: 2022-07-07T04:12:11.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-09-16T20:06:21.000Z (about 2 months ago)
- Last Synced: 2024-09-17T01:33:16.115Z (about 2 months ago)
- Language: Nix
- Size: 206 KB
- Stars: 38
- Watchers: 1
- Forks: 10
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# What this is
This is a [Nix flake](https://nixos.wiki/wiki/Flakes) that installs and configures [xremap](https://github.com/k0kubun/xremap).
Flake allows running xremap as a system-wide service and as a user service (controlled by `services.xremap.serviceMode` option).
Flake implements xremap features that allow specifying per-application remapping. Following combinations are tested:
| Scenario | No features | KDE | Gnome | X11 | Wlroots |
| - | - | - | - | - | - |
| System | :heavy_check_mark: | :heavy_multiplication_x: | :heavy_multiplication_x: | :heavy_check_mark: | :heavy_multiplication_x: |
| User | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :question: | :heavy_check_mark: |:heavy_check_mark: – tested, works
:heavy_multiplication_x: – not implemented
:question: – not tested# How to use
TL;DR:
1. Import one of this flake's modules (`xremap-flake.nixosModules.default` or `xremap-flake.homeManagerModules.default`)
2. (optional) configure xremap for your DE (`services.xremap.withWlroots`/`withX11`/etc., see [HOWTO](./docs/HOWTO.md))
3. Configure xremap binds in `services.xremap.config`See [HOWTO](./docs/HOWTO.md) for more information and sample configs.
# Development
The nix flake comes with a few VM presets that can be used to test some of the combinations. To run a specific VM:
```shell
nix run '.#nixosConfigurations.hyprland-user-dev.config.system.build.vm
```where `hyprland-user-dev` is the name of the `nixosConfiguration` you want to launch