Jump to content
XPEnology Community

Tinycore-RedPill delete driver


Recommended Posts

3 hours ago, bzfzis said:

How to avoid building network card drivers, some drivers are included in DSM 7.1, repeated builds will cause the system to fail to boot or fail to recognize the hardware

 

you can try to read in https://github.com/pocopico/tinycore-redpill/blob/main/rploader.sh

to see whats there beside "add" for ext (-tensions)

->

https://github.com/pocopico/redpill-load/blob/develop/ext-manager.sh

 

__action_help ()
{
  echo "  RedPill Extensions Manager  "
  echo "=============================="
  echo "Usage: ${MRP_SRC_NAME} <action> [arguments/options]"
  echo "------------------------------"
  echo "Actions intended for users:"
  echo "    info"
  echo "      Purpose: Gets information about an extension (or all of them)"
  echo "      Arguments:"
  echo "        [EXT_ID]: id of the extension; optional (if not specified it will list all)"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} info                        # gets info about all installed"
  echo "        ${MRP_SRC_NAME} info thethorgroup.virtio    # gets info about thethorgroup.virtio"
  echo ""
  echo "    add"
  echo "      Purpose: Adds new extension. If exists this action will fail."
  echo "      Arguments:"
  echo "        URL: the url to an index file; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} add https://example.tld/sample-ext/rpext-index.json"
  echo ""
  echo "    force_add"
  echo "      Purpose: Adds new extension. If it exists url is verified to be the same, if not extension is removed"
  echo "               and reinstalled from the URL provided. If extension exists with the same URL nothing happens."
  echo "      Arguments:"
  echo "        EXT_ID: ID of the extension; argument is mandatory"
  echo "        URL: the url to an index file; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} force_add example-dev.sample-ext https://example.tld/sample-ext/rpext-index.json"
  echo ""
  echo "    cleanup"
  echo "      Purpose: Remove all platform (cache) files for an extension. If it does not exists this action will fail."
  echo "      Arguments:"
  echo "        [EXT_IDS]: comma-separated ordered list of extensions to cleanup; optional"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} cleanup thethorgroup.virtio,thethorgroup.boot-wait  # cleanup only 2 extensions listed"
  echo "        ${MRP_SRC_NAME} cleanup                                             # cleanup all extensions"
  echo ""
  echo "    remove"
  echo "      Purpose: Remove an extension and all its platform files. If it does not exists this action will fail."
  echo "      Arguments:"
  echo "        EXT_ID: if of the extension to remove; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} remove badcoder.unstable-ext"
  echo ""
  echo "    update"
  echo "      Purpose: Updates information about extensions; this will NOT download platform extensions itself"
  echo "      Arguments:"
  echo "        [EXT_IDS]: comma-separated ordered list of extensions to update; optional"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} update thethorgroup.virtio,thethorgroup.boot-wait  # update only 2 extensions listed"
  echo "        ${MRP_SRC_NAME} update                                             # update all extensions installed"
  echo ""
  echo "    help"
  echo "      Purpose: Helping you! (you're reading it right now)"
  echo "      Arguments: takes no arguments"
  echo ""

 

so there is a "remove" beside "add"

 

also this one gives a hint when wanting to remove a extension

 

}

function removebundledexts() {

    echo "Entering redpill-load directory"
    cd /home/tc/redpill-load/

    echo "Removing bundled exts directories"
    for bundledext in $(grep ":" bundled-exts.json | awk '{print $2}' | sed -e 's/"//g' | sed -e 's/,/\n/g'); do
        bundledextdir=$(curl --location -s "$bundledext" | jq -r -e '.id')
        if [ -d /home/tc/redpill-load/custom/extensions/${bundledextdir} ]; then
            echo "Removing : ${bundledextdir}"
            sudo rm -rf /home/tc/redpill-load/custom/extensions/${bundledextdir}
        fi

    done

}

 

looks like extensions are in /home/tc/redpill-load/custom/extensions/ and if you remove one or more and start building the loader they should not be part of the resulting config

 

Link to comment
Share on other sites

14 hours ago, IG-88 said:

 

you can try to read in https://github.com/pocopico/tinycore-redpill/blob/main/rploader.sh

to see whats there beside "add" for ext (-tensions)

->

https://github.com/pocopico/redpill-load/blob/develop/ext-manager.sh

 

__action_help ()
{
  echo "  RedPill Extensions Manager  "
  echo "=============================="
  echo "Usage: ${MRP_SRC_NAME} <action> [arguments/options]"
  echo "------------------------------"
  echo "Actions intended for users:"
  echo "    info"
  echo "      Purpose: Gets information about an extension (or all of them)"
  echo "      Arguments:"
  echo "        [EXT_ID]: id of the extension; optional (if not specified it will list all)"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} info                        # gets info about all installed"
  echo "        ${MRP_SRC_NAME} info thethorgroup.virtio    # gets info about thethorgroup.virtio"
  echo ""
  echo "    add"
  echo "      Purpose: Adds new extension. If exists this action will fail."
  echo "      Arguments:"
  echo "        URL: the url to an index file; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} add https://example.tld/sample-ext/rpext-index.json"
  echo ""
  echo "    force_add"
  echo "      Purpose: Adds new extension. If it exists url is verified to be the same, if not extension is removed"
  echo "               and reinstalled from the URL provided. If extension exists with the same URL nothing happens."
  echo "      Arguments:"
  echo "        EXT_ID: ID of the extension; argument is mandatory"
  echo "        URL: the url to an index file; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} force_add example-dev.sample-ext https://example.tld/sample-ext/rpext-index.json"
  echo ""
  echo "    cleanup"
  echo "      Purpose: Remove all platform (cache) files for an extension. If it does not exists this action will fail."
  echo "      Arguments:"
  echo "        [EXT_IDS]: comma-separated ordered list of extensions to cleanup; optional"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} cleanup thethorgroup.virtio,thethorgroup.boot-wait  # cleanup only 2 extensions listed"
  echo "        ${MRP_SRC_NAME} cleanup                                             # cleanup all extensions"
  echo ""
  echo "    remove"
  echo "      Purpose: Remove an extension and all its platform files. If it does not exists this action will fail."
  echo "      Arguments:"
  echo "        EXT_ID: if of the extension to remove; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} remove badcoder.unstable-ext"
  echo ""
  echo "    update"
  echo "      Purpose: Updates information about extensions; this will NOT download platform extensions itself"
  echo "      Arguments:"
  echo "        [EXT_IDS]: comma-separated ordered list of extensions to update; optional"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} update thethorgroup.virtio,thethorgroup.boot-wait  # update only 2 extensions listed"
  echo "        ${MRP_SRC_NAME} update                                             # update all extensions installed"
  echo ""
  echo "    help"
  echo "      Purpose: Helping you! (you're reading it right now)"
  echo "      Arguments: takes no arguments"
  echo ""

 

so there is a "remove" beside "add"

 

also this one gives a hint when wanting to remove a extension

 

}

function removebundledexts() {

    echo "Entering redpill-load directory"
    cd /home/tc/redpill-load/

    echo "Removing bundled exts directories"
    for bundledext in $(grep ":" bundled-exts.json | awk '{print $2}' | sed -e 's/"//g' | sed -e 's/,/\n/g'); do
        bundledextdir=$(curl --location -s "$bundledext" | jq -r -e '.id')
        if [ -d /home/tc/redpill-load/custom/extensions/${bundledextdir} ]; then
            echo "Removing : ${bundledextdir}"
            sudo rm -rf /home/tc/redpill-load/custom/extensions/${bundledextdir}
        fi

    done

}

 

looks like extensions are in /home/tc/redpill-load/custom/extensions/ and if you remove one or more and start building the loader they should not be part of the resulting config

 

 

Thanks for the answer, I will try to build it later

Link to comment
Share on other sites

19 hours ago, IG-88 said:

 

you can try to read in https://github.com/pocopico/tinycore-redpill/blob/main/rploader.sh

to see whats there beside "add" for ext (-tensions)

->

https://github.com/pocopico/redpill-load/blob/develop/ext-manager.sh

 

__action_help ()
{
  echo "  RedPill Extensions Manager  "
  echo "=============================="
  echo "Usage: ${MRP_SRC_NAME} <action> [arguments/options]"
  echo "------------------------------"
  echo "Actions intended for users:"
  echo "    info"
  echo "      Purpose: Gets information about an extension (or all of them)"
  echo "      Arguments:"
  echo "        [EXT_ID]: id of the extension; optional (if not specified it will list all)"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} info                        # gets info about all installed"
  echo "        ${MRP_SRC_NAME} info thethorgroup.virtio    # gets info about thethorgroup.virtio"
  echo ""
  echo "    add"
  echo "      Purpose: Adds new extension. If exists this action will fail."
  echo "      Arguments:"
  echo "        URL: the url to an index file; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} add https://example.tld/sample-ext/rpext-index.json"
  echo ""
  echo "    force_add"
  echo "      Purpose: Adds new extension. If it exists url is verified to be the same, if not extension is removed"
  echo "               and reinstalled from the URL provided. If extension exists with the same URL nothing happens."
  echo "      Arguments:"
  echo "        EXT_ID: ID of the extension; argument is mandatory"
  echo "        URL: the url to an index file; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} force_add example-dev.sample-ext https://example.tld/sample-ext/rpext-index.json"
  echo ""
  echo "    cleanup"
  echo "      Purpose: Remove all platform (cache) files for an extension. If it does not exists this action will fail."
  echo "      Arguments:"
  echo "        [EXT_IDS]: comma-separated ordered list of extensions to cleanup; optional"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} cleanup thethorgroup.virtio,thethorgroup.boot-wait  # cleanup only 2 extensions listed"
  echo "        ${MRP_SRC_NAME} cleanup                                             # cleanup all extensions"
  echo ""
  echo "    remove"
  echo "      Purpose: Remove an extension and all its platform files. If it does not exists this action will fail."
  echo "      Arguments:"
  echo "        EXT_ID: if of the extension to remove; argument is mandatory"
  echo "      Example: ${MRP_SRC_NAME} remove badcoder.unstable-ext"
  echo ""
  echo "    update"
  echo "      Purpose: Updates information about extensions; this will NOT download platform extensions itself"
  echo "      Arguments:"
  echo "        [EXT_IDS]: comma-separated ordered list of extensions to update; optional"
  echo "      Examples:"
  echo "        ${MRP_SRC_NAME} update thethorgroup.virtio,thethorgroup.boot-wait  # update only 2 extensions listed"
  echo "        ${MRP_SRC_NAME} update                                             # update all extensions installed"
  echo ""
  echo "    help"
  echo "      Purpose: Helping you! (you're reading it right now)"
  echo "      Arguments: takes no arguments"
  echo ""

 

so there is a "remove" beside "add"

 

also this one gives a hint when wanting to remove a extension

 

}

function removebundledexts() {

    echo "Entering redpill-load directory"
    cd /home/tc/redpill-load/

    echo "Removing bundled exts directories"
    for bundledext in $(grep ":" bundled-exts.json | awk '{print $2}' | sed -e 's/"//g' | sed -e 's/,/\n/g'); do
        bundledextdir=$(curl --location -s "$bundledext" | jq -r -e '.id')
        if [ -d /home/tc/redpill-load/custom/extensions/${bundledextdir} ]; then
            echo "Removing : ${bundledextdir}"
            sudo rm -rf /home/tc/redpill-load/custom/extensions/${bundledextdir}
        fi

    done

}

 

looks like extensions are in /home/tc/redpill-load/custom/extensions/ and if you remove one or more and start building the loader they should not be part of the resulting config

 

I removed "pocopico.vmxnet3" using "remove" command

sudo ./rploader.sh ext broadwellnk-7.1.0-42661 remove pocopico.vmxnet3

In the /home/tc/redpill-load/custom/extensions/ folder "pocopico.vmxnet3" is indeed removed.

tc@box:~$ sudo ./rploader.sh ext broadwellnk-7.1.0-42661 remove pocopico.vmxnet3
Rploader Version : 0.8.0.3
Loader source : https://github.com/pocopico/redpill-load.git Loader Branch : develop
Redpill module source : https://github.com/pocopico/redpill-lkm.git : Redpill module branch : master
Extensions :   redpill-misc
Extensions URL : "https://github.com/pocopico/redpill-load/raw/master/redpill-misc/rpext-index.json"
TOOLKIT_URL : https://sourceforge.net/projects/dsgpl/files/toolkit/DSM7.0/ds.broadwellnk-7.0.dev.txz/download
TOOLKIT_SHA : 0d9edca67d9e7e14c2529bbb58341b623936124d5264f71f1e4acbacf3ea202d
SYNOKERNEL_URL : https://sourceforge.net/projects/dsgpl/files/Synology%20NAS%20GPL%20Source/25426branch/broadwellnk-surce/linux-4.4.x.txz/download
SYNOKERNEL_SHA : d3e85eb80f16a83244fcae6016ab6783cd8ac55e3af2b4240455261396e1e1be
COMPILE_METHOD : toolkit_dev
TARGET_PLATFORM       : broadwellnk
TARGET_VERSION    : 7.1.0
TARGET_REVISION : 42661
REDPILL_LKM_MAKE_TARGET : dev-v7
KERNEL_MAJOR : 4
MODULE_ALIAS_FILE :  modules.alias.4.json
SYNOMODEL : ds3622xsp_42661
MODEL : DS3622xs+
Local Cache Folder : /mnt/sda3/auxfiles
DATE Internet : 01072022 Local : 01072022
Checking Internet Access -> OK
Redpill sources already downloaded, pulling latest
Already up to date.
Loader sources already downloaded, pulling latest
Already up to date.
[#] Checking runtime for required tools... [OK]
[#] Extension pocopico.vmxnet3 has been removed

But when I build it, "pocopico.vmxnet3" appears again in /home/tc/redpill-load/custom/extensions/ folder.

sudo ./rploader.sh build broadwellnk-7.1.0-42661 now
Found IDE Controller : pciid 8086d00007111  Required Extension :
No matching extension
Found VGA Controller : pciid 15add00000405  Required Extension : vmwgfx
Searching for matching extension for vmwgfx
Found SATA Controller : pciid 15add000007e0  Required Extension :
No matching extension
[#] Checking runtime for required tools... [OK]
[#] Adding new extension from https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json...
[#] Downloading remote file https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json to /hom/tc/redpill-load/custom/extensions/_new_ext_index.tmp_json
######################################################################## 100.0%
[OK]
[#] ========================================== pocopico.vmxnet3 ==========================================
[#] Extension name: vmxnet3
[#] Description: Adds VMware vmxnet3 virtual NIC driver Support
[#] To get help visit: <todo>
[#] Extension preparer/packer: https://github.com/pocopico/rp-ext/tree/main/vmxnet3
[#] Software author: https://github.com/pocopico
[#] Update URL: https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json
[#] Platforms supported: ds1621p_42218 ds918p_41890 dva3221_42661 ds3617xs_42621 ds3617xs_42218 ds920p_42661 ds918p_4661 dva1622_42218 dva1622_42621 ds1621p_42661 ds918p_25556 dva3221_42218 ds3615xs_42661 ds3622xsp_42661 ds3622xsp_4228 ds2422p_42218 dva3221_42621 ds3615xs_41222 ds918p_42621 ds3617xs_42661 ds3615xs_25556 ds920p_42218 ds920p_42621 dva622_42661 ds918p_42218 ds2422p_42621 ds1621p_42621 ds3615xs_42621 ds3615xs_42218 ds3622xsp_42621
[#] =======================================================================================

Found Ethernet Interface : pciid 15add000007b0 Required Extension : vmxnet3
Searching for matching extension for vmxnet3
Found matching extension :
"https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json"

How can I use these commands?

Edited by bzfzis
Link to comment
Share on other sites

1 hour ago, bzfzis said:

I removed "pocopico.vmxnet3" using "remove" command

sudo ./rploader.sh ext broadwellnk-7.1.0-42661 remove pocopico.vmxnet3

In the /home/tc/redpill-load/custom/extensions/ folder "pocopico.vmxnet3" is indeed removed.

tc@box:~$ sudo ./rploader.sh ext broadwellnk-7.1.0-42661 remove pocopico.vmxnet3
Rploader Version : 0.8.0.3
Loader source : https://github.com/pocopico/redpill-load.git Loader Branch : develop
Redpill module source : https://github.com/pocopico/redpill-lkm.git : Redpill module branch : master
Extensions :   redpill-misc
Extensions URL : "https://github.com/pocopico/redpill-load/raw/master/redpill-misc/rpext-index.json"
TOOLKIT_URL : https://sourceforge.net/projects/dsgpl/files/toolkit/DSM7.0/ds.broadwellnk-7.0.dev.txz/download
TOOLKIT_SHA : 0d9edca67d9e7e14c2529bbb58341b623936124d5264f71f1e4acbacf3ea202d
SYNOKERNEL_URL : https://sourceforge.net/projects/dsgpl/files/Synology%20NAS%20GPL%20Source/25426branch/broadwellnk-surce/linux-4.4.x.txz/download
SYNOKERNEL_SHA : d3e85eb80f16a83244fcae6016ab6783cd8ac55e3af2b4240455261396e1e1be
COMPILE_METHOD : toolkit_dev
TARGET_PLATFORM       : broadwellnk
TARGET_VERSION    : 7.1.0
TARGET_REVISION : 42661
REDPILL_LKM_MAKE_TARGET : dev-v7
KERNEL_MAJOR : 4
MODULE_ALIAS_FILE :  modules.alias.4.json
SYNOMODEL : ds3622xsp_42661
MODEL : DS3622xs+
Local Cache Folder : /mnt/sda3/auxfiles
DATE Internet : 01072022 Local : 01072022
Checking Internet Access -> OK
Redpill sources already downloaded, pulling latest
Already up to date.
Loader sources already downloaded, pulling latest
Already up to date.
[#] Checking runtime for required tools... [OK]
[#] Extension pocopico.vmxnet3 has been removed

But when I build it, "pocopico.vmxnet3" appears again in /home/tc/redpill-load/custom/extensions/ folder.

sudo ./rploader.sh build broadwellnk-7.1.0-42661 now
Found IDE Controller : pciid 8086d00007111  Required Extension :
No matching extension
Found VGA Controller : pciid 15add00000405  Required Extension : vmwgfx
Searching for matching extension for vmwgfx
Found SATA Controller : pciid 15add000007e0  Required Extension :
No matching extension
[#] Checking runtime for required tools... [OK]
[#] Adding new extension from https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json...
[#] Downloading remote file https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json to /hom/tc/redpill-load/custom/extensions/_new_ext_index.tmp_json
######################################################################## 100.0%
[OK]
[#] ========================================== pocopico.vmxnet3 ==========================================
[#] Extension name: vmxnet3
[#] Description: Adds VMware vmxnet3 virtual NIC driver Support
[#] To get help visit: <todo>
[#] Extension preparer/packer: https://github.com/pocopico/rp-ext/tree/main/vmxnet3
[#] Software author: https://github.com/pocopico
[#] Update URL: https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json
[#] Platforms supported: ds1621p_42218 ds918p_41890 dva3221_42661 ds3617xs_42621 ds3617xs_42218 ds920p_42661 ds918p_4661 dva1622_42218 dva1622_42621 ds1621p_42661 ds918p_25556 dva3221_42218 ds3615xs_42661 ds3622xsp_42661 ds3622xsp_4228 ds2422p_42218 dva3221_42621 ds3615xs_41222 ds918p_42621 ds3617xs_42661 ds3615xs_25556 ds920p_42218 ds920p_42621 dva622_42661 ds918p_42218 ds2422p_42621 ds1621p_42621 ds3615xs_42621 ds3615xs_42218 ds3622xsp_42621
[#] =======================================================================================

Found Ethernet Interface : pciid 15add000007b0 Required Extension : vmxnet3
Searching for matching extension for vmxnet3
Found matching extension :
"https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json"

How can I use these commands?

 

rploader.sh default build option is auto, which will try to identify the required extensions and will add them.

 

Once you remove the extension holding the driver that you dont want you can then execute the build command using the manual option

 

sudo ./rploader.sh build broadwellnk-7.1.0-42661 manual 

 

 

 

Edited by pocopico
Link to comment
Share on other sites

23 minutes ago, pocopico said:

 

Once you remove the extension holding the driver that you dont want you can then execute the build command using the manual option

thanks, i was about to point out about it in the source

https://github.com/pocopico/tinycore-redpill/blob/main/rploader.sh

2479 ff for the compile

 

 
manual)

echo "Using static compiled redpill extension"
getstaticmodule
echo "Got $REDPILL_MOD_NAME "
echo "Manual extension handling,skipping extension auto detection "
echo "Starting loader creation "

buildloader

 

  • Like 1
Link to comment
Share on other sites

1 hour ago, pocopico said:

 

rploader.sh default build option is auto, which will try to identify the required extensions and will add them.

 

Once you remove the extension holding the driver that you dont want you can then execute the build command using the manual option

 

sudo ./rploader.sh build broadwellnk-7.1.0-42661 manual 

 

 

 

Thank you very much!

Link to comment
Share on other sites

42 minutes ago, IG-88 said:

thanks, i was about to point out about it in the source

https://github.com/pocopico/tinycore-redpill/blob/main/rploader.sh

2479 ff for the compile

 

 
manual)

echo "Using static compiled redpill extension"
getstaticmodule
echo "Got $REDPILL_MOD_NAME "
echo "Manual extension handling,skipping extension auto detection "
echo "Starting loader creation "

buildloader

 

Thank you very much!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...