Skip to main content

mdev mtp fix

 https://github.com/slashbeast/mdev-like-a-boss/blob/master/helpers/dev-bus-usb

 https://raw.githubusercontent.com/slashbeast/mdev-like-a-boss/master/mdev.conf

 

nano /etc/mdev.conf

# Populate /dev/bus/usb.

 
SUBSYSTEM=usb;DEVTYPE=usb_device;.* root:root 660 */opt/mdev/dev-bus-usb

 

# Don't create old usbdev* devices.

 usbdev[0-9].[0-9]* root:root 660 !

# comment these lines

# load drivers for usb devices
#usb[0-9]+    root:root 0660 */lib/mdev/usbdev



 cat /opt/mdev/dev-bus-usb

---------------------------------------------------------------------------------------------------------

#!/bin/sh

# Takes care of /dev/bus/usb devices.
#
# The mdev.conf gives us limited options on how to handle ownership, so a fix has come as script.
#
# Features:
# - Support smartcard devices. Adjust device group to one that let pcscd open them.
# - If Android device is plugged in, make it possible for users in plugdev group to open them (mtp, fastboot, adb etc)
# - Old mdev+kernel used to keep USB devices in root of /dev, relocate them into a place where they are expected..

umask 022

sys_path="/sys/${DEVPATH}"
plugdev_group="kai"
smartcard_group="pcscd"

case "${ACTION}" in
    'add')
        [ "${BUSNUM}" ] || return 1
        [ "${DEVNUM}" ] || return 1
        [ "${MAJOR}" ] || return 1
        [ "${MINOR}" ] || return 1
        mkdir -p "/dev/bus/usb/${BUSNUM}"

        # $MDEV will be exported when running `mdev -s`
        # $DEVNAME and $DEVPATH will be when we poke uevent files with add in init script.

        if [ "/dev/${MDEV}" != "/dev/bus/usb/${BUSNUM}/${DEVNUM}" ]; then
            mv "/dev/${MDEV}" "/dev/bus/usb/${BUSNUM}/${DEVNUM}"
        fi

        if ! [ "${DEVPATH}" ]; then
            return 1
        fi

        if [ -f "${sys_path}/product" ]; then
            idVendor="$(cat ${sys_path}/idVendor)"
            case "${idVendor}" in
                # Smartcards (yubikey etc).
                '1050')
                    # The tricky part here is that we may run into race conditon with pcscd not picking usb devices if the ownership is wrong.
                    # the `pcscd --hotplug` does not poke USB devices sadly. We better be fast!
                    chgrp "${smartcard_group}" "/dev/bus/usb/${BUSNUM}/${DEVNUM}" 2>/dev/null && chmod 660 "/dev/bus/usb/${BUSNUM}/${DEVNUM}"
                ;;
                # Android devices.
                '0bb4'|'18d1'|'22d9'|'22b8'|'0fce'|'19d2'|'04e8'|'2717'|'05c6')
                chgrp "${plugdev_group}" "/dev/bus/usb/${BUSNUM}/${DEVNUM}" 2>/dev/null && chmod 660 "/dev/bus/usb/${BUSNUM}/${DEVNUM}"
            ;;
            esac
        fi
    ;;
    'remove')
        [ "${BUSNUM}" ] || return 1
        [ "${DEVNUM}" ] || return 1
        [ "${MAJOR}" ] || return 1
        [ "${MINOR}" ] || return 1
        rm "/dev/bus/usb/${BUSNUM}/${DEVNUM}"
        rmdir "/dev/bus/usb/${BUSNUM}" 2>/dev/null
        rmdir "/dev/bus/usb" 2>/dev/null
    ;;
esac

--------------------------------------------------------------------------------------------------------------------------

doas apk add simple-mtpfs

simple-mtpfs    --device   1 /home/kai/mnt/android/

simple-mtpfs  -o allow_other    --device   1 /home/kai/mnt/android/


 

Comments

Popular posts from this blog

sxhkd volume andbrightness config for dwm on void

xbps-install  sxhkd ------------ mkdir .config/sxhkd cd .config/sxhkd nano/vim sxhkdrc -------------------------------- XF86AudioRaiseVolume         amixer -c 1 -- sset Master 2db+ XF86AudioLowerVolume         amixer -c 1 -- sset Master 2db- XF86AudioMute         amixer -c 1 -- sset Master toggle alt + shift + Escape         pkill -USR1 -x sxhkd XF86MonBrightnessUp          xbacklight -inc 20 XF86MonBrightnessDown          xbacklight -dec 20 ------------------------------------------------------------- amixer -c card_no -- sset Interface volume run alsamixer to find card no and interface names xbps-install -S git git clone https://git.suckless.org/dwm xbps-install -S base-devel libX11-devel libXft-devel libXinerama-devel  vim config.mk # FREETYPEINC = ${X11INC}/freetype2 #comment for non-bsd make clean install   cp config.def.h config.h vim config.h xbps-install -S font-symbola #for emoji on statusbar support     void audio config xbps-i

Hidden Wiki

Welcome to The Hidden Wiki New hidden wiki url 2015 http://zqktlwi4fecvo6ri.onion Add it to bookmarks and spread it!!! Editor's picks Bored? Pick a random page from the article index and replace one of these slots with it. The Matrix - Very nice to read. How to Exit the Matrix - Learn how to Protect yourself and your rights, online and off. Verifying PGP signatures - A short and simple how-to guide. In Praise Of Hawala - Anonymous informal value transfer system. Volunteer Here are five different things that you can help us out with. Plunder other hidden service lists for links and place them here! File the SnapBBSIndex links wherever they go. Set external links to HTTPS where available, good certificate, and same content. Care to start recording onionland's history? Check out Onionland's Museum Perform Dead Services Duties. Introduction Points Ahmia.fi - Clearnet search engine for Tor Hidden Services (allows you

fix idm integration on chrome

Chrome Browser Integration I do not see IDM extension in Chrome extensions list. How can I install it?  How to configure IDM extension for Chrome? Please note that all IDM extensions that can be found in Google Store are fake and should not be used. You need to install IDM extension manually from IDM installation folder. Read in step 2 how to do it . 1. Please update IDM to the latest version by using  "IDM Help->Check for updates..."  menu item 2.  I don't see  "IDM Integration module"  extension in the list of extensions in  Chrome . How can I install it? Press on  Chrome  menu ( arrow 1  on the image), select  "Settings"  menu item ( arrow 2  on the image) and then select  "Extensions"  tab ( arrow 3  on the image). After this open IDM installation folder ( "C:\Program Files (x86)\Internet Download Manager"  by default,  arrow 4  on the image) and drag and drop  "IDMGCExt.crx"  ( arrow 5  on the image) file int