Skip to content

Instantly share code, notes, and snippets.

@alfredkrohmer
Created February 11, 2017 13:39
Show Gist options
  • Select an option

  • Save alfredkrohmer/8d4c2a5ab62e690772f3d9de5ad2d978 to your computer and use it in GitHub Desktop.

Select an option

Save alfredkrohmer/8d4c2a5ab62e690772f3d9de5ad2d978 to your computer and use it in GitHub Desktop.
List all user-installed packages on OpenWrt / LEDE
#!/bin/sh
FLASH_TIME=$(opkg info busybox | grep '^Installed-Time: ')
for i in $(opkg list-installed | cut -d' ' -f1)
do
if [ "$(opkg info $i | grep '^Installed-Time: ')" != "$FLASH_TIME" ]
then
echo $i
fi
done
@5p0ng3b0b
Copy link
Copy Markdown

@crzsotona
The title and filename of the OPs original script says "list user installed packages". That is what the script does. It does NOT list packages in the OG or custom firmware that has already been flashed to the device. Happy for you that you managed to discover that it is useless for anything else.

@tojestzart
Copy link
Copy Markdown

now for apk equivalent?

@fish-finger-flinger
Copy link
Copy Markdown

@tojestzart
These are the droids commands you are looking for:

# Install the owut package if it is not installed already (needs openwrt v24.10 or greater)
[ ! -f "$(which owut)" ] && [ -f "$(which apk)" ] && apk update&&apk add owut
[ ! -f "$(which owut)" ] && [ -f "$(which opkg)" ] && opkg update&&opkg install owut

# show packages that are installed on the device but are not in the default sysupgrade firmware
# (ie user installed or added in custom fw)
owut list

# show all installed packages (without listing dependencies)
owut blob | grep '   '|cut -d'"' -f2

# This also shows all apps without dependencies (obviously openwrt >=25)
# The file was generated by running apk update
cat /etc/apk/world

@tinxx
Copy link
Copy Markdown

tinxx commented Mar 19, 2026

@tojestzart

Using grep:

grep -v -F -x -f /rom/etc/apk/world /etc/apk/world

Or with diffutils installed:

diff /rom/etc/apk/world /etc/apk/world | grep '^>' | awk '{print $2}'

@tojestzart
Copy link
Copy Markdown

owut list thats the solution in case you added packages to firmware selector, but first you need to install owut

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment