We have upgraded the community system as part of the upgrade a password reset is required for all users before login in.

diff is missing

  • diff
    -ash: diff: not found

    find / -name diff
    +++ returns nothing +++

    Does not seem to be in BusyBox v1.25.1 nor as a opkg module

    any suggestions would be appreciated.

  • @Dennis-German One on OpenWrt 18.06 based Omega FWs (eg. v0.3.2 b232) uncomment the fifth (5th) line of the '/etc/opkg/distfeeds.conf' file and run
    opkg update
    opkg install diffutils

    diff --help
    Usage: diff [OPTION]... FILES
    Compare FILES line by line.
    Mandatory arguments to long options are mandatory for short options too.
          --normal                  output a normal diff (the default)
      -q, --brief                   report only when files differ
      -s, --report-identical-files  report when two files are the same
      -c, -C NUM, --context[=NUM]   output NUM (default 3) lines of copied context
      -u, -U NUM, --unified[=NUM]   output NUM (default 3) lines of unified context
      -e, --ed                      output an ed script
      -n, --rcs                     output an RCS format diff
      -y, --side-by-side            output in two columns
      -W, --width=NUM               output at most NUM (default 130) print columns
          --left-column             output only the left column of common lines
          --suppress-common-lines   do not output common lines
      -p, --show-c-function         show which C function each change is in
      -F, --show-function-line=RE   show the most recent line matching RE
          --label LABEL             use LABEL instead of file name and timestamp
                                      (can be repeated)
      -t, --expand-tabs             expand tabs to spaces in output
      -T, --initial-tab             make tabs line up by prepending a tab
          --tabsize=NUM             tab stops every NUM (default 8) print columns
          --suppress-blank-empty    suppress space or tab before empty output lines
      -l, --paginate                pass output through 'pr' to paginate it
      -r, --recursive                 recursively compare any subdirectories found
          --no-dereference            don't follow symbolic links
      -N, --new-file                  treat absent files as empty
          --unidirectional-new-file   treat absent first files as empty
          --ignore-file-name-case     ignore case when comparing file names
          --no-ignore-file-name-case  consider case when comparing file names
      -x, --exclude=PAT               exclude files that match PAT
      -X, --exclude-from=FILE         exclude files that match any pattern in FILE
      -S, --starting-file=FILE        start with FILE when comparing directories
          --from-file=FILE1           compare FILE1 to all operands;
                                        FILE1 can be a directory
          --to-file=FILE2             compare all operands to FILE2;
                                        FILE2 can be a directory
      -i, --ignore-case               ignore case differences in file contents
      -E, --ignore-tab-expansion      ignore changes due to tab expansion
      -Z, --ignore-trailing-space     ignore white space at line end
      -b, --ignore-space-change       ignore changes in the amount of white space
      -w, --ignore-all-space          ignore all white space
      -B, --ignore-blank-lines        ignore changes where lines are all blank
      -I, --ignore-matching-lines=RE  ignore changes where all lines match RE
      -a, --text                      treat all files as text
          --strip-trailing-cr         strip trailing carriage return on input
      -D, --ifdef=NAME                output merged file with '#ifdef NAME' diffs
          --GTYPE-group-format=GFMT   format GTYPE input groups with GFMT
          --line-format=LFMT          format all input lines with LFMT
          --LTYPE-line-format=LFMT    format LTYPE input lines with LFMT
        These format options provide fine-grained control over the output
          of diff, generalizing -D/--ifdef.
        LTYPE is 'old', 'new', or 'unchanged'.  GTYPE is LTYPE or 'changed'.
        GFMT (only) may contain:
          %<  lines from FILE1
          %>  lines from FILE2
          %=  lines common to FILE1 and FILE2
          %[-][WIDTH][.[PREC]]{doxX}LETTER  printf-style spec for LETTER
            LETTERs are as follows for new group, lower case for old group:
              F  first line number
              L  last line number
              N  number of lines = L-F+1
              E  F-1
              M  L+1
          %(A=B?T:E)  if A equals B then T else E
        LFMT (only) may contain:
          %L  contents of line
          %l  contents of line, excluding any trailing newline
          %[-][WIDTH][.[PREC]]{doxX}n  printf-style spec for input line number
        Both GFMT and LFMT may contain:
          %%  %
          %c'C'  the single character C
          %c'\OOO'  the character with octal code OOO
          C    the character C (other characters represent themselves)
      -d, --minimal            try hard to find a smaller set of changes
          --horizon-lines=NUM  keep NUM lines of the common prefix and suffix
          --speed-large-files  assume large files and many scattered small changes
          --color[=WHEN]       colorize the output; WHEN can be 'never', 'always',
                                 or 'auto' (the default)
          --palette=PALETTE    the colors to use when --color is active; PALETTE is
                                 a colon-separated list of terminfo capabilities
          --help               display this help and exit
      -v, --version            output version information and exit
    FILES are 'FILE1 FILE2' or 'DIR1 DIR2' or 'DIR FILE' or 'FILE DIR'.
    If --from-file or --to-file is given, there are no restrictions on FILE(s).
    If a FILE is '-', read standard input.
    Exit status is 0 if inputs are the same, 1 if different, 2 if trouble.
    Report bugs to: bug-diffutils@gnu.org
    GNU diffutils home page: <http://www.gnu.org/software/diffutils/>
    General help using GNU software: <http://www.gnu.org/gethelp/>

    For example the BusyBox v1.31.0 also contains a diff applet.
    Compile a custom BusyBox or a custom Omega FW for yourself.

    Or download the precompiled busybox-mipsel file.
    cd ~
    wget https://www.busybox.net/downloads/binaries/1.31.0-defcon
    chmod +x busybox-mipsel
    ./busybox-mipsel diff

    ./busybox-mipsel diff --help
    BusyBox v1.31.0 (2019-06-10 15:54:51 CEST) multi-call binary.
    Usage: diff [-abBdiNqrTstw] [-L LABEL] [-S FILE] [-U LINES] FILE1 FILE2
    Compare files line by line and output the differences between them.
    This implementation supports unified diffs only.
    	-a	Treat all files as text
    	-b	Ignore changes in the amount of whitespace
    	-B	Ignore changes whose lines are all blank
    	-d	Try hard to find a smaller set of changes
    	-i	Ignore case differences
    	-L	Use LABEL instead of the filename in the unified header
    	-N	Treat absent files as empty
    	-q	Output only whether files differ
    	-r	Recurse
    	-S	Start with FILE when comparing directories
    	-T	Make tabs line up by prefixing a tab when necessary
    	-s	Report when two files are the same
    	-t	Expand tabs to spaces in output
    	-U	Output LINES lines of context
    	-w	Ignore all whitespace

    Good luck.

  • SOLVED! @György-Farkas Thank you VERY much.
    The fifth(5th) line being:
    ##src/gz reboot_packages http://downloads.lede-project.org/releases/17.01-SNAPSHOT/packages/mipsel_24kc/packages

    Why is that line in distfeeds commented out?
    What about the next lines?
    I have BusyBox v1.25.1 () even though I tried to get most recent packages. Should I replace 1.25.1 with 1.31.9?
    What did I do wrong?

  • @Dennis-German What Omega2 firmware version are you using please?

  • Just upgrade to
    Ω-ware: 0.2.2 b200
    uname -a
    Linux Omega-98F5 4.4.74 #0 Tue Jul 31 16:32:08 2018 mips GNU/Linux

Log in to reply

Looks like your connection to Community was lost, please wait while we try to reconnect.