[Magisk] ipdev:
You might want to make a small edit. ;)

Besides manually installing modules by creating directories, placing the files, fixing permissions, ... 🙃

You can install module zip file from the command line.

magisk --install-module

Example.

OnePlus6T:/sdcard/Download # magisk --install-module Nano_for_Android_NDK-5.8\(5800\).zip
- Current boot slot: _a
- Device is system-as-root
*****************************
Nano for Android NDK
by osm0sis @ xda-developers
*****************************
*******************
Powered by Magisk
*******************
Archive: /storage/emulated/0/Download/Nano_for_Android_NDK-5.8(5800).zip
inflating: diffusion_config.sh
inflating: module.prop
progress 1.34 0

Mounting...
set_progress 0.2

Extracting files...
Archive: /storage/emulated/0/Download/Nano_for_Android_NDK-5.8(5800).zip
creating: META-INF/
creating: META-INF/com/
creating: META-INF/com/google/
creating: META-INF/com/google/android/
inflating: META-INF/com/google/android/update-binary
inflating: META-INF/com/google/android/updater-script
inflating: README.md
creating: bin/
inflating: bin/nano
inflating: bin/nano.bin
inflating: customize.sh
inflating: diffusion_config.sh
creating: etc/
creating: etc/terminfo/
creating: etc/terminfo/E/
inflating: etc/terminfo/E/Eterm
inflating: etc/terminfo/E/Eterm-color
creating: etc/terminfo/a/
inflating: etc/terminfo/a/ansi
creating: etc/terminfo/c/
inflating: etc/terminfo/c/cons25
inflating: etc/terminfo/c/cygwin
creating: etc/terminfo/d/
inflating: etc/terminfo/d/dumb
creating: etc/terminfo/h/
inflating: etc/terminfo/h/hurd
creating: etc/terminfo/l/
inflating: etc/terminfo/l/linux
creating: etc/terminfo/m/
inflating: etc/terminfo/m/mach
inflating: etc/terminfo/m/mach-bold
inflating: etc/terminfo/m/mach-color
creating: etc/terminfo/p/
inflating: etc/terminfo/p/pcansi
creating: etc/terminfo/r/
inflating: etc/terminfo/r/rxvt
inflating: etc/terminfo/r/rxvt-basic
creating: etc/terminfo/s/
inflating: etc/terminfo/s/screen
inflating: etc/terminfo/s/screen-256color
inflating: etc/terminfo/s/screen-256color-bce
inflating: etc/terminfo/s/screen-bce
inflating: etc/terminfo/s/screen-s
inflating: etc/terminfo/s/screen-w
inflating: etc/terminfo/s/sun
creating: etc/terminfo/v/
inflating: etc/terminfo/v/vt100
inflating: etc/terminfo/v/vt102
inflating: etc/terminfo/v/vt220
inflating: etc/terminfo/v/vt52
creating: etc/terminfo/w/
inflating: etc/terminfo/w/wsvt25
inflating: etc/terminfo/w/wsvt25m
creating: etc/terminfo/x/
inflating: etc/terminfo/x/xterm
inflating: etc/terminfo/x/xterm-256color
inflating: etc/terminfo/x/xterm-color
inflating: etc/terminfo/x/xterm-r5
inflating: etc/terminfo/x/xterm-r6
inflating: etc/terminfo/x/xterm-vt220
inflating: etc/terminfo/x/xterm-xfree86
inflating: module.prop
creating: sbin/
inflating: sbin/nano
set_progress 0.3

Installing...

Installing nano to /data/adb/modules_update/nano-ndk/system/bin ...
Installing terminfo to /data/adb/modules_update/nano-ndk/system/etc ...
set_progress 0.8
set_progress 1.0

Unmounting...
set_progress 1.2

Done!
set_progress 1.34
OnePlus6T:/sdcard/Download #

You can also remove all the installed modules.

magisk --remove-modules

Note: This will remove all the modules and reboot the device.

Cheers. :cowboy: