Skip to content

Commit

Permalink
Major update to Nix Flakes
Browse files Browse the repository at this point in the history
  • Loading branch information
Sukant Hajra committed Dec 18, 2023
1 parent ee7b143 commit c1440f5
Show file tree
Hide file tree
Showing 44 changed files with 572,681 additions and 96,662 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: cachix/install-nix-action@v14
- uses: cachix/install-nix-action@v17
- uses: cachix/cachix-action@v10
with:
name: shajra
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ The “shajra” keymaps for these keyboards are extremely similar, which works

## Model 01 “shajra” keymap<a id="sec-2-1"></a>

![img](doc/model-01-shajra-layout.png)
![img](doc/model-100-shajra-layout.png)

## Ergodox EZ “shajra” keymap (Moonlander similar)<a id="sec-2-2"></a>

Expand Down
61 changes: 35 additions & 26 deletions README.org
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@

* About the project

This project has the “shajra” keyboard mappings for three ergonomic split
This project has the “shajra” keyboard mappings for four ergonomic split
keyboards:

- [[keyboardio][Keyboardio's Model 01]], programmed with [[kaleidoscope][Kaleidoscope]] firmware.
- [[keyboardio][Keyboardio's Model 100]], programmed with [[kaleidoscope][Kaleidoscope]] firmware.
- [[keyboardio][Keyboardio's Model 01 (discontinued)]], programmed with [[kaleidoscope][Kaleidoscope]] firmware.
- [[ergodox-ez][ZSA Technology Labs' Ergodox EZ]], programmed with [[qmk][QMK]] firmware
- [[moonlander][ZSA Technology Labs' Moonlander]], programmed with [[qmk][QMK]] firmware

Expand All @@ -30,14 +31,14 @@ well because the physical layouts of these keyboards are also similar. We can
more easily switch from one keyboard to another, and retain the design benefits
of the mapping.

** Model 01 “shajra” keymap
** Model 100 “shajra” keymap

[[file:doc/model-01-shajra-layout.png]]
[[file:doc/model-100-shajra-layout.png]]

** Ergodox EZ “shajra” keymap (Moonlander similar)

Note the Moonlander keyboard is almost an identical layout to the EZ, and not
illustrated here. There are just two two less keys on the thumb cluster. The
illustrated here. There are just two less keys on the thumb cluster. This
leads to not having either Home or End on the base layer for the Moonlander. And
the "application menu" keycodes are moved to the bottom-outer corners.

Expand Down Expand Up @@ -78,27 +79,35 @@ configuration with new udev rules.
The following are recommended rules for each keyboard:

#+begin_example
# For Ergodox EZ
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", \
ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", \
ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", \
ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", \
ATTRS{idProduct}=="04[789B]?", MODE:="0666"

# For Moonlander
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", \
MODE:="0666", SYMLINK+="stm32_dfu"

# For Model 01
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2300", \
SYMLINK+="model01", ENV{ID_MM_DEVICE_IGNORE}:="1", \
ENV{ID_MM_CANDIDATE}:="0", TAG+="uaccess", TAG+="seat"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2301", \
SYMLINK+="model01", ENV{ID_MM_DEVICE_IGNORE}:="1", \
ENV{ID_MM_CANDIDATE}:="0", TAG+="uaccess", TAG+="seat"
# For Ergodox EZ
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", \
ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", \
ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", \
ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", \
ATTRS{idProduct}=="04[789B]?", MODE:="0666"

# For Moonlander
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", \
MODE:="0666", SYMLINK+="stm32_dfu"

# For Model 100
SUBSYSTEMS=="usb", ATTRS{idVendor}=="3496", ATTRS{idProduct}=="0005", \
MODE="0666", SYMLINK+="model100", ENV{ID_MM_DEVICE_IGNORE}:="1", \
ENV{ID_MM_CANDIDATE}:="0", TAG+="uaccess", TAG+="seat"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="3496", ATTRS{idProduct}=="0006", \
MODE="0666", SYMLINK+="model100", ENV{ID_MM_DEVICE_IGNORE}:="1", \
ENV{ID_MM_CANDIDATE}:="0", TAG+="uaccess", TAG+="seat"

# For Model 01
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2300", \
MODE="0666", SYMLINK+="model01", ENV{ID_MM_DEVICE_IGNORE}:="1", \
ENV{ID_MM_CANDIDATE}:="0", TAG+="uaccess", TAG+="seat"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="2301", \
MODE="0666", SYMLINK+="model01", ENV{ID_MM_DEVICE_IGNORE}:="1", \
ENV{ID_MM_CANDIDATE}:="0", TAG+="uaccess", TAG+="seat"
#+end_example

These settings should correspond to the official documentation of tools and
Expand Down
2 changes: 2 additions & 0 deletions config.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
default.ergodoxez.keymaps = keymaps/ergodox_ez;
default.model01.keymap = "shajra";
default.model01.keymaps = keymaps/model_01;
default.model100.keymap = "shajra";
default.model100.keymaps = keymaps/model_100;
default.moonlander.keymap = "shajra";
default.moonlander.keymaps = keymaps/moonlander;
}
2 changes: 1 addition & 1 deletion default.nix
Original file line number Diff line number Diff line change
@@ -1 +1 @@
(import ./nix {}).distribution
(import nix/compat.nix).defaultNix
2 changes: 1 addition & 1 deletion doc/design.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ For reference, below are diagrams of the keymaps for the Model 01 and Ergodox EZ

## Model 01 "shajra" keymap<a id="sec-3-1"></a>

![img](./model-01-shajra-layout.png)
![img](./model-100-shajra-layout.png)

## Ergodox EZ "shajra" keymap<a id="sec-3-2"></a>

Expand Down
2 changes: 1 addition & 1 deletion doc/design.org
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ EZ.

** Model 01 "shajra" keymap

[[file:./model-01-shajra-layout.png]]
[[file:./model-100-shajra-layout.png]]

** Ergodox EZ "shajra" keymap

Expand Down
File renamed without changes
Loading

0 comments on commit c1440f5

Please sign in to comment.