aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/eco/info.json10
-rw-r--r--keyboards/eco/rev1/keyboard.json (renamed from keyboards/eco/rev1/info.json)10
-rw-r--r--keyboards/eco/rev1/rules.mk1
-rw-r--r--keyboards/eco/rev2/keyboard.json (renamed from keyboards/eco/rev2/info.json)10
-rw-r--r--keyboards/eco/rev2/rules.mk1
-rw-r--r--keyboards/edi/hardlight/mk2/info.json11
-rw-r--r--keyboards/edi/hardlight/mk2/rules.mk16
-rw-r--r--keyboards/edinburgh41/info.json8
-rw-r--r--keyboards/edinburgh41/rules.mk14
-rw-r--r--keyboards/efreet/info.json7
-rw-r--r--keyboards/efreet/rules.mk13
-rw-r--r--keyboards/elephant42/keyboard.json (renamed from keyboards/elephant42/info.json)10
-rw-r--r--keyboards/elephant42/rules.mk15
-rw-r--r--keyboards/emery65/info.json6
-rw-r--r--keyboards/emery65/rules.mk13
-rw-r--r--keyboards/era/linx3/n86/keyboard.json (renamed from keyboards/era/linx3/n86/info.json)0
-rw-r--r--keyboards/era/linx3/n86/rules.mk1
-rw-r--r--keyboards/era/linx3/n8x/keyboard.json (renamed from keyboards/era/linx3/n8x/info.json)0
-rw-r--r--keyboards/era/linx3/n8x/rules.mk1
-rw-r--r--keyboards/ergodox_ez/glow/info.json6
-rw-r--r--keyboards/ergodox_ez/glow/keyboard.json13
-rw-r--r--keyboards/ergodox_ez/glow/rules.mk1
-rw-r--r--keyboards/ergodox_ez/rules.mk13
-rw-r--r--keyboards/ergodox_ez/shine/info.json7
-rw-r--r--keyboards/ergodox_ez/shine/rules.mk1
-rw-r--r--keyboards/ergodox_stm32/info.json7
-rw-r--r--keyboards/ergodox_stm32/rules.mk9
-rw-r--r--keyboards/ergoslab/rev1/keyboard.json7
-rw-r--r--keyboards/ergoslab/rules.mk13
-rw-r--r--keyboards/ergotravel/rev1/keyboard.json (renamed from keyboards/ergotravel/rev1/info.json)7
-rw-r--r--keyboards/ergotravel/rev1/rules.mk1
-rw-r--r--keyboards/ergotravel/rules.mk13
-rw-r--r--keyboards/ericrlau/numdiscipline/rev1/info.json5
-rw-r--r--keyboards/ericrlau/numdiscipline/rev1/rules.mk13
-rw-r--r--keyboards/evyd13/atom47/rev2/keyboard.json (renamed from keyboards/evyd13/atom47/rev2/info.json)6
-rw-r--r--keyboards/evyd13/atom47/rev2/rules.mk3
-rw-r--r--keyboards/evyd13/atom47/rev3/keyboard.json (renamed from keyboards/evyd13/atom47/rev3/info.json)6
-rw-r--r--keyboards/evyd13/atom47/rev3/rules.mk1
-rw-r--r--keyboards/evyd13/atom47/rev4/keyboard.json (renamed from keyboards/evyd13/atom47/rev4/info.json)6
-rw-r--r--keyboards/evyd13/atom47/rev4/rules.mk4
-rw-r--r--keyboards/evyd13/atom47/rev5/keyboard.json (renamed from keyboards/evyd13/atom47/rev5/info.json)6
-rw-r--r--keyboards/evyd13/atom47/rev5/rules.mk1
-rw-r--r--keyboards/evyd13/atom47/rules.mk13
-rw-r--r--keyboards/evyd13/eon40/info.json8
-rw-r--r--keyboards/evyd13/eon40/rules.mk14
-rw-r--r--keyboards/evyd13/nt660/info.json5
-rw-r--r--keyboards/evyd13/nt660/rules.mk13
-rw-r--r--keyboards/evyd13/pockettype/info.json5
-rw-r--r--keyboards/evyd13/pockettype/rules.mk13
-rw-r--r--keyboards/evyd13/wasdat_code/info.json7
-rw-r--r--keyboards/evyd13/wasdat_code/rules.mk13
-rw-r--r--keyboards/exclusive/e85/hotswap/keyboard.json11
-rw-r--r--keyboards/exclusive/e85/rules.mk14
-rw-r--r--keyboards/exclusive/e85/soldered/keyboard.json11
54 files changed, 180 insertions, 243 deletions
diff --git a/keyboards/eco/info.json b/keyboards/eco/info.json
index 74c66fdcb9..6a1b2adda1 100644
--- a/keyboards/eco/info.json
+++ b/keyboards/eco/info.json
@@ -3,16 +3,6 @@
"manufacturer": "Bishop Keyboards",
"url": "",
"maintainer": "qmk",
- "features": {
- "backlight": true,
- "bootmagic": false,
- "command": true,
- "console": false,
- "extrakey": true,
- "midi": true,
- "mousekey": false,
- "nkro": false
- },
"usb": {
"vid": "0x1337",
"pid": "0x6006"
diff --git a/keyboards/eco/rev1/info.json b/keyboards/eco/rev1/keyboard.json
index f2a7842ce4..1b3cb5f8df 100644
--- a/keyboards/eco/rev1/info.json
+++ b/keyboards/eco/rev1/keyboard.json
@@ -7,6 +7,16 @@
"rows": ["B1", "B6", "B2", "B3"]
},
"diode_direction": "COL2ROW",
+ "features": {
+ "backlight": false,
+ "bootmagic": false,
+ "command": true,
+ "console": false,
+ "extrakey": true,
+ "midi": true,
+ "mousekey": false,
+ "nkro": false
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/eco/rev1/rules.mk b/keyboards/eco/rev1/rules.mk
deleted file mode 100644
index f845616741..0000000000
--- a/keyboards/eco/rev1/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BACKLIGHT_ENABLE = no \ No newline at end of file
diff --git a/keyboards/eco/rev2/info.json b/keyboards/eco/rev2/keyboard.json
index 8148e78f85..8effdd85e5 100644
--- a/keyboards/eco/rev2/info.json
+++ b/keyboards/eco/rev2/keyboard.json
@@ -7,6 +7,16 @@
"rows": ["D7", "B5", "B4", "E6"]
},
"diode_direction": "COL2ROW",
+ "features": {
+ "backlight": false,
+ "bootmagic": false,
+ "command": true,
+ "console": false,
+ "extrakey": true,
+ "midi": true,
+ "mousekey": false,
+ "nkro": false
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/eco/rev2/rules.mk b/keyboards/eco/rev2/rules.mk
deleted file mode 100644
index f845616741..0000000000
--- a/keyboards/eco/rev2/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BACKLIGHT_ENABLE = no \ No newline at end of file
diff --git a/keyboards/edi/hardlight/mk2/info.json b/keyboards/edi/hardlight/mk2/info.json
index 2be212702a..cb337b71c8 100644
--- a/keyboards/edi/hardlight/mk2/info.json
+++ b/keyboards/edi/hardlight/mk2/info.json
@@ -32,6 +32,17 @@
"diode_direction": "COL2ROW",
"processor": "STM32F072",
"bootloader": "stm32-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": false,
+ "extrakey": true,
+ "console": true,
+ "command": true,
+ "nkro": true,
+ "rgblight": true,
+ "velocikey": true,
+ "key_lock": true
+ },
"community_layouts": ["ortho_4x16"],
"layouts": {
"LAYOUT_ortho_4x16": {
diff --git a/keyboards/edi/hardlight/mk2/rules.mk b/keyboards/edi/hardlight/mk2/rules.mk
index b7b67ba5b2..0ab54aaaf7 100644
--- a/keyboards/edi/hardlight/mk2/rules.mk
+++ b/keyboards/edi/hardlight/mk2/rules.mk
@@ -1,18 +1,2 @@
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-VELOCIKEY_ENABLE = yes
-KEY_LOCK_ENABLE = yes
-
diff --git a/keyboards/edinburgh41/info.json b/keyboards/edinburgh41/info.json
index 745710f92f..374f10b2b7 100644
--- a/keyboards/edinburgh41/info.json
+++ b/keyboards/edinburgh41/info.json
@@ -4,6 +4,14 @@
"maintainer": "schwarzer-geiger",
"bootloader": "atmel-dfu",
"processor": "atmega32u4",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "nkro": true,
+ "rgblight": true,
+ "pointing_device": true
+ },
"url": "https://github.com/schwarzer-geiger/Edinburgh41",
"usb": {
"device_version": "1.0.0",
diff --git a/keyboards/edinburgh41/rules.mk b/keyboards/edinburgh41/rules.mk
index bf33c793b6..c76a8bf8a1 100644
--- a/keyboards/edinburgh41/rules.mk
+++ b/keyboards/edinburgh41/rules.mk
@@ -1,15 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-POINTING_DEVICE_ENABLE = yes
POINTING_DEVICE_DRIVER = analog_joystick
diff --git a/keyboards/efreet/info.json b/keyboards/efreet/info.json
index b7749ed341..4a53df1294 100644
--- a/keyboards/efreet/info.json
+++ b/keyboards/efreet/info.json
@@ -20,6 +20,13 @@
},
"processor": "atmega32u2",
"bootloader": "atmel-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "nkro": true,
+ "backlight": true
+ },
"community_layouts": ["ortho_4x12", "planck_mit"],
"layouts": {
"LAYOUT_planck_mit": {
diff --git a/keyboards/efreet/rules.mk b/keyboards/efreet/rules.mk
index f82a86f3e3..09057bea54 100644
--- a/keyboards/efreet/rules.mk
+++ b/keyboards/efreet/rules.mk
@@ -1,16 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
# Disable unsupported hardware
RGBLIGHT_SUPPORTED = no
AUDIO_SUPPORTED = no
diff --git a/keyboards/elephant42/info.json b/keyboards/elephant42/keyboard.json
index eb53fda96d..e71f143813 100644
--- a/keyboards/elephant42/info.json
+++ b/keyboards/elephant42/keyboard.json
@@ -54,6 +54,16 @@
},
"processor": "atmega32u4",
"bootloader": "caterina",
+ "features": {
+ "bootmagic": true,
+ "mousekey": false,
+ "extrakey": true,
+ "rgb_matrix": true,
+ "oled": true
+ },
+ "build": {
+ "lto": true
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/elephant42/rules.mk b/keyboards/elephant42/rules.mk
deleted file mode 100644
index 9091c74171..0000000000
--- a/keyboards/elephant42/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-RGB_MATRIX_ENABLE = yes
-AUDIO_ENABLE = no # Audio output
-OLED_ENABLE = yes
-LTO_ENABLE = yes
diff --git a/keyboards/emery65/info.json b/keyboards/emery65/info.json
index 74d06b52ad..c80bcf8042 100644
--- a/keyboards/emery65/info.json
+++ b/keyboards/emery65/info.json
@@ -19,6 +19,12 @@
},
"processor": "STM32F072",
"bootloader": "stm32-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "nkro": true
+ },
"layout_aliases": {
"LAYOUT_all": "LAYOUT_65_ansi_blocker_split_bs"
},
diff --git a/keyboards/emery65/rules.mk b/keyboards/emery65/rules.mk
index 7c0709f41e..0ab54aaaf7 100644
--- a/keyboards/emery65/rules.mk
+++ b/keyboards/emery65/rules.mk
@@ -1,15 +1,2 @@
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/era/linx3/n86/info.json b/keyboards/era/linx3/n86/keyboard.json
index 40e1f78baa..40e1f78baa 100644
--- a/keyboards/era/linx3/n86/info.json
+++ b/keyboards/era/linx3/n86/keyboard.json
diff --git a/keyboards/era/linx3/n86/rules.mk b/keyboards/era/linx3/n86/rules.mk
deleted file mode 100644
index 7ff128fa69..0000000000
--- a/keyboards/era/linx3/n86/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/era/linx3/n8x/info.json b/keyboards/era/linx3/n8x/keyboard.json
index ae0d608ffa..ae0d608ffa 100644
--- a/keyboards/era/linx3/n8x/info.json
+++ b/keyboards/era/linx3/n8x/keyboard.json
diff --git a/keyboards/era/linx3/n8x/rules.mk b/keyboards/era/linx3/n8x/rules.mk
deleted file mode 100644
index 7ff128fa69..0000000000
--- a/keyboards/era/linx3/n8x/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-# This file intentionally left blank \ No newline at end of file
diff --git a/keyboards/ergodox_ez/glow/info.json b/keyboards/ergodox_ez/glow/info.json
deleted file mode 100644
index dcbb1999ca..0000000000
--- a/keyboards/ergodox_ez/glow/info.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "keyboard_name": "ErgoDox EZ Glow",
- "usb": {
- "pid": "0x4976"
- }
-}
diff --git a/keyboards/ergodox_ez/glow/keyboard.json b/keyboards/ergodox_ez/glow/keyboard.json
new file mode 100644
index 0000000000..43f0ee0b49
--- /dev/null
+++ b/keyboards/ergodox_ez/glow/keyboard.json
@@ -0,0 +1,13 @@
+{
+ "keyboard_name": "ErgoDox EZ Glow",
+ "usb": {
+ "pid": "0x4976"
+ },
+ "features": {
+ "bootmagic": false,
+ "mousekey": true,
+ "extrakey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ }
+}
diff --git a/keyboards/ergodox_ez/glow/rules.mk b/keyboards/ergodox_ez/glow/rules.mk
deleted file mode 100644
index aad92997d0..0000000000
--- a/keyboards/ergodox_ez/glow/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/ergodox_ez/rules.mk b/keyboards/ergodox_ez/rules.mk
index 68f785f3cc..187d9dd8e2 100644
--- a/keyboards/ergodox_ez/rules.mk
+++ b/keyboards/ergodox_ez/rules.mk
@@ -3,20 +3,7 @@
# details), include the following define:
# OPT_DEFS += -DLEFT_LEDS
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
CUSTOM_MATRIX = lite # Custom matrix file for the ErgoDox EZ
-NKRO_ENABLE = yes # Enable N-Key Rollover
-UNICODE_ENABLE = no # Unicode
-SWAP_HANDS_ENABLE= no # Allow swapping hands of keyboard
-
-RGB_MATRIX_ENABLE = no # enable later
# project specific files
SRC += matrix.c
diff --git a/keyboards/ergodox_ez/shine/info.json b/keyboards/ergodox_ez/shine/info.json
index 181ac52e6c..bc0f218d7e 100644
--- a/keyboards/ergodox_ez/shine/info.json
+++ b/keyboards/ergodox_ez/shine/info.json
@@ -5,5 +5,12 @@
},
"rgblight": {
"driver": "custom"
+ },
+ "features": {
+ "bootmagic": false,
+ "mousekey": true,
+ "extrakey": true,
+ "nkro": true,
+ "rgblight": true
}
}
diff --git a/keyboards/ergodox_ez/shine/rules.mk b/keyboards/ergodox_ez/shine/rules.mk
index 4ab494d1aa..827f58bd6a 100644
--- a/keyboards/ergodox_ez/shine/rules.mk
+++ b/keyboards/ergodox_ez/shine/rules.mk
@@ -1,3 +1,2 @@
-RGBLIGHT_ENABLE = yes
WS2812_DRIVER_REQUIRED = yes
SRC += rgblight_custom.c
diff --git a/keyboards/ergodox_stm32/info.json b/keyboards/ergodox_stm32/info.json
index 305adc9e12..24e90ad7d7 100644
--- a/keyboards/ergodox_stm32/info.json
+++ b/keyboards/ergodox_stm32/info.json
@@ -8,6 +8,13 @@
"pid": "0x1308",
"device_version": "1.0.1"
},
+ "features": {
+ "bootmagic": false,
+ "mousekey": false,
+ "extrakey": true,
+ "nkro": true,
+ "unicode": true
+ },
"layouts": {
"LAYOUT_ergodox": {
"layout": [
diff --git a/keyboards/ergodox_stm32/rules.mk b/keyboards/ergodox_stm32/rules.mk
index 5481eef1a2..21b474509d 100644
--- a/keyboards/ergodox_stm32/rules.mk
+++ b/keyboards/ergodox_stm32/rules.mk
@@ -6,14 +6,7 @@ BOARD = ST_NUCLEO64_F103RB
# Bootloader selection
BOOTLOADER = custom
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-CUSTOM_MATRIX = yes # Custom matrix file
-UNICODE_ENABLE = yes # Unicode
+CUSTOM_MATRIX = yes
SRC += matrix.c
I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/ergoslab/rev1/keyboard.json b/keyboards/ergoslab/rev1/keyboard.json
index 82e4b41b6d..ef40c1d960 100644
--- a/keyboards/ergoslab/rev1/keyboard.json
+++ b/keyboards/ergoslab/rev1/keyboard.json
@@ -25,6 +25,13 @@
},
"processor": "atmega32u4",
"bootloader": "caterina",
+ "features": {
+ "bootmagic": false,
+ "mousekey": true,
+ "extrakey": true,
+ "command": true,
+ "rgblight": true
+ },
"layout_aliases": {
"LAYOUT_ergoslab": "LAYOUT"
},
diff --git a/keyboards/ergoslab/rules.mk b/keyboards/ergoslab/rules.mk
index 5255b41b06..8eb40c77d5 100644
--- a/keyboards/ergoslab/rules.mk
+++ b/keyboards/ergoslab/rules.mk
@@ -1,14 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-
DEFAULT_FOLDER = ergoslab/rev1
diff --git a/keyboards/ergotravel/rev1/info.json b/keyboards/ergotravel/rev1/keyboard.json
index 43d3d01a92..14c645d2f0 100644
--- a/keyboards/ergotravel/rev1/info.json
+++ b/keyboards/ergotravel/rev1/keyboard.json
@@ -25,6 +25,13 @@
},
"bootloader": "caterina",
"processor": "atmega32u4",
+ "features": {
+ "bootmagic": false,
+ "mousekey": true,
+ "extrakey": true,
+ "command": true,
+ "rgblight": true
+ },
"layouts": {
"LAYOUT": {
"layout": [
diff --git a/keyboards/ergotravel/rev1/rules.mk b/keyboards/ergotravel/rev1/rules.mk
deleted file mode 100644
index 7b30c0beff..0000000000
--- a/keyboards/ergotravel/rev1/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BACKLIGHT_ENABLE = no
diff --git a/keyboards/ergotravel/rules.mk b/keyboards/ergotravel/rules.mk
index f52203f705..3f30277bb5 100644
--- a/keyboards/ergotravel/rules.mk
+++ b/keyboards/ergotravel/rules.mk
@@ -1,14 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
-
DEFAULT_FOLDER = ergotravel/rev1
diff --git a/keyboards/ericrlau/numdiscipline/rev1/info.json b/keyboards/ericrlau/numdiscipline/rev1/info.json
index 36a39c1abe..6fd9c377f6 100644
--- a/keyboards/ericrlau/numdiscipline/rev1/info.json
+++ b/keyboards/ericrlau/numdiscipline/rev1/info.json
@@ -16,6 +16,11 @@
"diode_direction": "COL2ROW",
"processor": "atmega32a",
"bootloader": "usbasploader",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true
+ },
"layouts": {
"LAYOUT_all": {
"layout": [
diff --git a/keyboards/ericrlau/numdiscipline/rev1/rules.mk b/keyboards/ericrlau/numdiscipline/rev1/rules.mk
index 18550f0a64..c2ee0bc86f 100644
--- a/keyboards/ericrlau/numdiscipline/rev1/rules.mk
+++ b/keyboards/ericrlau/numdiscipline/rev1/rules.mk
@@ -1,15 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/evyd13/atom47/rev2/info.json b/keyboards/evyd13/atom47/rev2/keyboard.json
index 8c5720d0c4..62927b70a3 100644
--- a/keyboards/evyd13/atom47/rev2/info.json
+++ b/keyboards/evyd13/atom47/rev2/keyboard.json
@@ -34,6 +34,12 @@
},
"processor": "atmega32u4",
"bootloader": "qmk-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "backlight": true
+ },
"layout_aliases": {
"LAYOUT_all": "LAYOUT_split_space"
},
diff --git a/keyboards/evyd13/atom47/rev2/rules.mk b/keyboards/evyd13/atom47/rev2/rules.mk
deleted file mode 100644
index 104711e420..0000000000
--- a/keyboards/evyd13/atom47/rev2/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-# Build Options
-RGBLIGHT_ENABLE = no
-BACKLIGHT_ENABLE = yes
diff --git a/keyboards/evyd13/atom47/rev3/info.json b/keyboards/evyd13/atom47/rev3/keyboard.json
index fc4046d3fc..009c3ef534 100644
--- a/keyboards/evyd13/atom47/rev3/info.json
+++ b/keyboards/evyd13/atom47/rev3/keyboard.json
@@ -47,6 +47,12 @@
},
"processor": "atmega32u4",
"bootloader": "qmk-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "backlight": true
+ },
"layout_aliases": {
"LAYOUT_all": "LAYOUT_split_space"
},
diff --git a/keyboards/evyd13/atom47/rev3/rules.mk b/keyboards/evyd13/atom47/rev3/rules.mk
deleted file mode 100644
index 54a2685bf6..0000000000
--- a/keyboards/evyd13/atom47/rev3/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-BACKLIGHT_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/evyd13/atom47/rev4/info.json b/keyboards/evyd13/atom47/rev4/keyboard.json
index b2b4bf9ef2..cea416e1a6 100644
--- a/keyboards/evyd13/atom47/rev4/info.json
+++ b/keyboards/evyd13/atom47/rev4/keyboard.json
@@ -29,6 +29,12 @@
},
"processor": "atmega32u2",
"bootloader": "qmk-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "encoder": true
+ },
"layout_aliases": {
"LAYOUT_all": "LAYOUT_split_space"
},
diff --git a/keyboards/evyd13/atom47/rev4/rules.mk b/keyboards/evyd13/atom47/rev4/rules.mk
deleted file mode 100644
index 1eb7c8bd08..0000000000
--- a/keyboards/evyd13/atom47/rev4/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-# Build Options
-ENCODER_ENABLE = yes
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = no \ No newline at end of file
diff --git a/keyboards/evyd13/atom47/rev5/info.json b/keyboards/evyd13/atom47/rev5/keyboard.json
index e82a7797de..c002dcb18c 100644
--- a/keyboards/evyd13/atom47/rev5/info.json
+++ b/keyboards/evyd13/atom47/rev5/keyboard.json
@@ -49,6 +49,12 @@
"diode_direction": "COL2ROW",
"processor": "atmega32u4",
"bootloader": "qmk-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "rgb_matrix": true
+ },
"layout_aliases": {
"LAYOUT_all": "LAYOUT_split_space"
},
diff --git a/keyboards/evyd13/atom47/rev5/rules.mk b/keyboards/evyd13/atom47/rev5/rules.mk
deleted file mode 100644
index aad92997d0..0000000000
--- a/keyboards/evyd13/atom47/rev5/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/evyd13/atom47/rules.mk b/keyboards/evyd13/atom47/rules.mk
index ab8264de7c..9d5b753077 100644
--- a/keyboards/evyd13/atom47/rules.mk
+++ b/keyboards/evyd13/atom47/rules.mk
@@ -1,14 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
DEFAULT_FOLDER = evyd13/atom47/rev4
diff --git a/keyboards/evyd13/eon40/info.json b/keyboards/evyd13/eon40/info.json
index ce989e1d2a..59511f117c 100644
--- a/keyboards/evyd13/eon40/info.json
+++ b/keyboards/evyd13/eon40/info.json
@@ -26,6 +26,14 @@
},
"processor": "atmega32u4",
"bootloader": "qmk-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": false,
+ "extrakey": true,
+ "console": true,
+ "command": true,
+ "encoder": true
+ },
"community_layouts": ["ortho_4x12", "planck_mit"],
"layouts": {
"LAYOUT_ortho_4x12": {
diff --git a/keyboards/evyd13/eon40/rules.mk b/keyboards/evyd13/eon40/rules.mk
index ece680a57a..1605120646 100644
--- a/keyboards/evyd13/eon40/rules.mk
+++ b/keyboards/evyd13/eon40/rules.mk
@@ -1,17 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes
-
# Disable unsupported hardware
RGBLIGHT_SUPPORTED = no
AUDIO_SUPPORTED = no
diff --git a/keyboards/evyd13/nt660/info.json b/keyboards/evyd13/nt660/info.json
index c222aba700..ea51efaa30 100644
--- a/keyboards/evyd13/nt660/info.json
+++ b/keyboards/evyd13/nt660/info.json
@@ -23,6 +23,11 @@
},
"processor": "atmega32u4",
"bootloader": "qmk-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": false,
+ "extrakey": true
+ },
"community_layouts": ["66_ansi", "66_iso"],
"layouts": {
"LAYOUT_all": {
diff --git a/keyboards/evyd13/nt660/rules.mk b/keyboards/evyd13/nt660/rules.mk
index f8c29ddc98..1605120646 100644
--- a/keyboards/evyd13/nt660/rules.mk
+++ b/keyboards/evyd13/nt660/rules.mk
@@ -1,16 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
# Disable unsupported hardware
RGBLIGHT_SUPPORTED = no
AUDIO_SUPPORTED = no
diff --git a/keyboards/evyd13/pockettype/info.json b/keyboards/evyd13/pockettype/info.json
index eda670af11..bcca3dc936 100644
--- a/keyboards/evyd13/pockettype/info.json
+++ b/keyboards/evyd13/pockettype/info.json
@@ -15,6 +15,11 @@
"diode_direction": "COL2ROW",
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": false,
+ "extrakey": true
+ },
"community_layouts": ["ortho_4x12"],
"layouts": {
"LAYOUT_ortho_4x12": {
diff --git a/keyboards/evyd13/pockettype/rules.mk b/keyboards/evyd13/pockettype/rules.mk
index f8c29ddc98..1605120646 100644
--- a/keyboards/evyd13/pockettype/rules.mk
+++ b/keyboards/evyd13/pockettype/rules.mk
@@ -1,16 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
# Disable unsupported hardware
RGBLIGHT_SUPPORTED = no
AUDIO_SUPPORTED = no
diff --git a/keyboards/evyd13/wasdat_code/info.json b/keyboards/evyd13/wasdat_code/info.json
index 9fb14283ae..8c1bb52b6b 100644
--- a/keyboards/evyd13/wasdat_code/info.json
+++ b/keyboards/evyd13/wasdat_code/info.json
@@ -32,6 +32,13 @@
},
"processor": "atmega32u4",
"bootloader": "qmk-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": false,
+ "extrakey": true,
+ "nkro": true,
+ "backlight": true
+ },
"community_layouts": ["fullsize_ansi", "fullsize_iso", "tkl_ansi", "tkl_iso"],
"layout_aliases": {
"LAYOUT_all": "LAYOUT_fullsize_iso"
diff --git a/keyboards/evyd13/wasdat_code/rules.mk b/keyboards/evyd13/wasdat_code/rules.mk
index 00967d1847..6beea3e392 100644
--- a/keyboards/evyd13/wasdat_code/rules.mk
+++ b/keyboards/evyd13/wasdat_code/rules.mk
@@ -1,16 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
CUSTOM_MATRIX = lite
VPATH += drivers/gpio
SRC += matrix.c sn74x138.c
diff --git a/keyboards/exclusive/e85/hotswap/keyboard.json b/keyboards/exclusive/e85/hotswap/keyboard.json
index 779a717ec5..c64509496a 100644
--- a/keyboards/exclusive/e85/hotswap/keyboard.json
+++ b/keyboards/exclusive/e85/hotswap/keyboard.json
@@ -41,6 +41,17 @@
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "console": true,
+ "command": true,
+ "rgblight": true
+ },
+ "build": {
+ "lto": true
+ },
"layouts": {
"LAYOUT_ansi_standard": {
"layout": [
diff --git a/keyboards/exclusive/e85/rules.mk b/keyboards/exclusive/e85/rules.mk
index 4251159d94..8eef46d0ab 100644
--- a/keyboards/exclusive/e85/rules.mk
+++ b/keyboards/exclusive/e85/rules.mk
@@ -1,15 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-LTO_ENABLE = yes
-
DEFAULT_FOLDER = exclusive/e85/hotswap
diff --git a/keyboards/exclusive/e85/soldered/keyboard.json b/keyboards/exclusive/e85/soldered/keyboard.json
index d34440389a..5f7458e851 100644
--- a/keyboards/exclusive/e85/soldered/keyboard.json
+++ b/keyboards/exclusive/e85/soldered/keyboard.json
@@ -41,6 +41,17 @@
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
+ "features": {
+ "bootmagic": true,
+ "mousekey": true,
+ "extrakey": true,
+ "console": true,
+ "command": true,
+ "rgblight": true
+ },
+ "build": {
+ "lto": true
+ },
"layouts": {
"LAYOUT_all": {
"layout": [