diff mbox

packages/Config.in: more alphabetical sorting

Message ID 1382349586-8197-1-git-send-email-maxime.hadjinlian@gmail.com
State Superseded
Headers show

Commit Message

Maxime Hadjinlian Oct. 21, 2013, 9:59 a.m. UTC
Following the patch 2e53cb9e014df87a29aed17d0b2582232df94e4f, here some
more sorting inside each menus.

Also, menus and categories have been moved for them to appear in
the alphabetical order.

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
---
 package/Config.in | 109 +++++++++++++++++++++++++++---------------------------
 1 file changed, 54 insertions(+), 55 deletions(-)

Comments

Thomas De Schampheleire Oct. 23, 2013, 1:24 p.m. UTC | #1
Hi Maxime,

On Mon, Oct 21, 2013 at 11:59 AM, Maxime Hadjinlian
<maxime.hadjinlian@gmail.com> wrote:
> Following the patch 2e53cb9e014df87a29aed17d0b2582232df94e4f, here some
> more sorting inside each menus.
>
> Also, menus and categories have been moved for them to appear in
> the alphabetical order.

I would have split this in two patches, because now we cannot easily
check whether you changed the order within a moved block.

>
> Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
> ---
>  package/Config.in | 109 +++++++++++++++++++++++++++---------------------------
>  1 file changed, 54 insertions(+), 55 deletions(-)
>
> diff --git a/package/Config.in b/package/Config.in
> index 0e6f86c..3db7089 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -9,8 +9,8 @@ source "package/bellagio/Config.in"
>  source "package/faad2/Config.in"
>  source "package/ffmpeg/Config.in"
>  source "package/flac/Config.in"
> -source "package/gstreamer/Config.in"
>  source "package/gstreamer1/Config.in"
> +source "package/gstreamer/Config.in"

Why should gstreamer1 come before gstreamer?
If you use 'sort' on these two lines, it will indeed put gstreamer1
before gstreamer, but that is not true if you just ask to sort
'gstreamer1' and 'gstreamer'. This is because sort depends on the
locale, and standard locales will ignore -, /, etc. when sorting. So
when asking to sort 'gstreamer/C' and 'gstreamer1/C', what you're
really sorting is 'gstreamerC' and 'gstreamer1C', so that gstreamer1C
is first (1 < C).
To get real ASCII order, you can set LC_ALL=C before sorting.

Anyway, I don't think we should sort on the full line, but rather on
the package name, hence gstreamer < gstreamer1.

>  source "package/lame/Config.in"
>  source "package/libvpx/Config.in"
>  source "package/madplay/Config.in"
> @@ -129,6 +129,32 @@ source "package/vala/Config.in"
>  source "package/yasm/Config.in"
>  endmenu
>
> +menu "Filesystem and flash utilities"
> +source "package/cifs-utils/Config.in"
> +source "package/cramfs/Config.in"
> +source "package/curlftpfs/Config.in"
> +source "package/dosfstools/Config.in"
> +source "package/e2fsprogs/Config.in"
> +source "package/ecryptfs-utils/Config.in"
> +source "package/exfat/Config.in"
> +source "package/exfat-utils/Config.in"
> +source "package/f2fs-tools/Config.in"
> +source "package/flashbench/Config.in"
> +source "package/genext2fs/Config.in"
> +source "package/genromfs/Config.in"
> +source "package/kobs-ng/Config.in"
> +source "package/makedevs/Config.in"
> +source "package/mtd/Config.in"
> +source "package/nfs-utils/Config.in"
> +source "package/ntfs-3g/Config.in"
> +source "package/squashfs3/Config.in"
> +source "package/squashfs/Config.in"
> +source "package/sshfs/Config.in"
> +source "package/sunxi-tools/Config.in"
> +source "package/unionfs/Config.in"
> +source "package/xfsprogs/Config.in"
> +endmenu
> +
>  menu "Games"
>  source "package/doom-wad/Config.in"
>  source "package/gnuchess/Config.in"
> @@ -154,8 +180,8 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
>  source "package/fbset/Config.in"
>  endif
>  source "package/fbterm/Config.in"
> -source "package/fbv/Config.in"
>  source "package/fb-test-app/Config.in"
> +source "package/fbv/Config.in"

This is again caused by locale-dependent behavior of sort. In fact,
strict ASCII ordering would put fb-test-app before any fbX, so before
fbdump. This is probably better.

>  source "package/imagemagick/Config.in"
>  source "package/linux-fusion/Config.in"
>  source "package/lite/Config.in"
> @@ -187,18 +213,6 @@ source "package/qt5/Config.in"
>  source "package/x11r7/Config.in"
>  source "package/weston/Config.in"
>
> -comment "X libraries and helper libraries"
> -source "package/liberation/Config.in"
> -source "package/libsexy/Config.in"
> -source "package/x11r7/xkeyboard-config/Config.in"
> -
> -comment "X Window managers"
> -source "package/blackbox/Config.in"
> -source "package/enlightenment/Config.in"
> -source "package/fluxbox/Config.in"
> -source "package/matchbox/Config.in"
> -source "package/metacity/Config.in"
> -
>  comment "X applications"
>  source "package/alsamixergui/Config.in"
>  source "package/docker/Config.in"
> @@ -220,44 +234,21 @@ source "package/xscreensaver/Config.in"
>  source "package/xstroke/Config.in"
>  source "package/xterm/Config.in"
>  source "package/xvkbd/Config.in"
> -endmenu
>
> -menu "Filesystem and flash utilities"
> -source "package/cifs-utils/Config.in"
> -source "package/cramfs/Config.in"
> -source "package/curlftpfs/Config.in"
> -source "package/dosfstools/Config.in"
> -source "package/e2fsprogs/Config.in"
> -source "package/ecryptfs-utils/Config.in"
> -source "package/exfat/Config.in"
> -source "package/exfat-utils/Config.in"
> -source "package/f2fs-tools/Config.in"
> -source "package/flashbench/Config.in"
> -source "package/genext2fs/Config.in"
> -source "package/genromfs/Config.in"
> -source "package/kobs-ng/Config.in"
> -source "package/makedevs/Config.in"
> -source "package/mtd/Config.in"
> -source "package/nfs-utils/Config.in"
> -source "package/ntfs-3g/Config.in"
> -source "package/squashfs/Config.in"
> -source "package/squashfs3/Config.in"
> -source "package/sshfs/Config.in"
> -source "package/sunxi-tools/Config.in"
> -source "package/unionfs/Config.in"
> -source "package/xfsprogs/Config.in"
> +comment "X libraries and helper libraries"
> +source "package/liberation/Config.in"
> +source "package/libsexy/Config.in"
> +source "package/x11r7/xkeyboard-config/Config.in"
> +
> +comment "X Window managers"
> +source "package/blackbox/Config.in"
> +source "package/enlightenment/Config.in"
> +source "package/fluxbox/Config.in"
> +source "package/matchbox/Config.in"
> +source "package/metacity/Config.in"
>  endmenu
>
>  menu "Hardware handling"
> -menu "Misc devices firmwares"
> -source "package/am33x-cm3/Config.in"
> -source "package/b43-firmware/Config.in"
> -source "package/linux-firmware/Config.in"
> -source "package/rpi-firmware/Config.in"
> -source "package/sunxi-boards/Config.in"
> -source "package/ux500-firmware/Config.in"
> -source "package/zd1211-firmware/Config.in"
> -endmenu
>  source "package/a10disp/Config.in"
>  source "package/acpid/Config.in"
>  source "package/cdrkit/Config.in"
> @@ -304,6 +295,15 @@ source "package/mdadm/Config.in"
>  source "package/media-ctl/Config.in"
>  source "package/memtester/Config.in"
>  source "package/minicom/Config.in"
> +menu "Misc devices firmwares"
> +source "package/am33x-cm3/Config.in"
> +source "package/b43-firmware/Config.in"
> +source "package/linux-firmware/Config.in"
> +source "package/rpi-firmware/Config.in"
> +source "package/sunxi-boards/Config.in"
> +source "package/ux500-firmware/Config.in"
> +source "package/zd1211-firmware/Config.in"
> +endmenu
>  source "package/nanocom/Config.in"
>  source "package/neard/Config.in"
>  source "package/ofono/Config.in"
> @@ -516,8 +516,8 @@ source "package/libpng/Config.in"
>  source "package/libqrencode/Config.in"
>  source "package/libraw/Config.in"
>  source "package/librsvg/Config.in"
> -source "package/libsvg/Config.in"
>  source "package/libsvg-cairo/Config.in"
> +source "package/libsvg/Config.in"

Same here, libsvg should remain before libsvg-cairo.

>  source "package/libsvgtiny/Config.in"
>  source "package/libungif/Config.in"
>  source "package/opencv/Config.in"
> @@ -550,8 +550,8 @@ source "package/libqmi/Config.in"
>  source "package/libraw1394/Config.in"
>  source "package/libserial/Config.in"
>  source "package/libsoc/Config.in"
> -source "package/libusb/Config.in"
>  source "package/libusb-compat/Config.in"
> +source "package/libusb/Config.in"

Same here.

>  source "package/libv4l/Config.in"
>  source "package/libxkbcommon/Config.in"
>  source "package/mtdev/Config.in"
> @@ -694,8 +694,8 @@ source "package/mtdev2tuio/Config.in"
>  source "package/orc/Config.in"
>  source "package/p11-kit/Config.in"
>  source "package/poco/Config.in"
> -source "package/protobuf/Config.in"
>  source "package/protobuf-c/Config.in"
> +source "package/protobuf/Config.in"

Same here.

>  source "package/schifra/Config.in"
>  source "package/startup-notification/Config.in"
>  source "package/tzdata/Config.in"
> @@ -729,8 +729,8 @@ source "package/json-c/Config.in"
>  source "package/json-glib/Config.in"
>  source "package/libjson/Config.in"
>  source "package/libroxml/Config.in"
> -source "package/libxml-parser-perl/Config.in"
>  source "package/libxml2/Config.in"
> +source "package/libxml-parser-perl/Config.in"

Same here.

>  source "package/libxmlpp/Config.in"
>  source "package/libxslt/Config.in"
>  source "package/libyaml/Config.in"
> @@ -856,12 +856,12 @@ source "package/pppd/Config.in"
>  source "package/pptp-linux/Config.in"
>  source "package/proftpd/Config.in"
>  source "package/proxychains-ng/Config.in"
> -source "package/ptpd/Config.in"
>  source "package/ptpd2/Config.in"
> +source "package/ptpd/Config.in"

Same here.

>  source "package/quagga/Config.in"
>  source "package/radvd/Config.in"
> -source "package/rp-pppoe/Config.in"
>  source "package/rpcbind/Config.in"
> +source "package/rp-pppoe/Config.in"

Same here.

>  source "package/rsh-redone/Config.in"
>  source "package/rsync/Config.in"
>  source "package/rtorrent/Config.in"
> @@ -906,7 +906,6 @@ source "package/wpa_supplicant/Config.in"
>  source "package/wvdial/Config.in"
>  source "package/xinetd/Config.in"
>  source "package/xl2tp/Config.in"
> -
>  endmenu
>
>  menu "Package managers"

Best regards,
Thomas
Maxime Hadjinlian Oct. 23, 2013, 2:25 p.m. UTC | #2
On Wed, Oct 23, 2013 at 3:24 PM, Thomas De Schampheleire
<patrickdepinguin@gmail.com> wrote:
> Hi Maxime,
Hi Thomas,
>
> On Mon, Oct 21, 2013 at 11:59 AM, Maxime Hadjinlian
> <maxime.hadjinlian@gmail.com> wrote:
>> Following the patch 2e53cb9e014df87a29aed17d0b2582232df94e4f, here some
>> more sorting inside each menus.
>>
>> Also, menus and categories have been moved for them to appear in
>> the alphabetical order.
>
> I would have split this in two patches, because now we cannot easily
> check whether you changed the order within a moved block.
You're right. I will split this into two patches.
>
>>
>> Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
>> ---
>>  package/Config.in | 109 +++++++++++++++++++++++++++---------------------------
>>  1 file changed, 54 insertions(+), 55 deletions(-)
>>
>> diff --git a/package/Config.in b/package/Config.in
>> index 0e6f86c..3db7089 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -9,8 +9,8 @@ source "package/bellagio/Config.in"
>>  source "package/faad2/Config.in"
>>  source "package/ffmpeg/Config.in"
>>  source "package/flac/Config.in"
>> -source "package/gstreamer/Config.in"
>>  source "package/gstreamer1/Config.in"
>> +source "package/gstreamer/Config.in"
>
> Why should gstreamer1 come before gstreamer?
> If you use 'sort' on these two lines, it will indeed put gstreamer1
> before gstreamer, but that is not true if you just ask to sort
> 'gstreamer1' and 'gstreamer'. This is because sort depends on the
> locale, and standard locales will ignore -, /, etc. when sorting. So
> when asking to sort 'gstreamer/C' and 'gstreamer1/C', what you're
> really sorting is 'gstreamerC' and 'gstreamer1C', so that gstreamer1C
> is first (1 < C).
> To get real ASCII order, you can set LC_ALL=C before sorting.
>
I will do that, thanks for pointing this out, I did not knew that.
> Anyway, I don't think we should sort on the full line, but rather on
> the package name, hence gstreamer < gstreamer1.
Since the full line is the same for every packages, it should not
matter during the sort if the locale used is C, should it ?
>
>>  source "package/lame/Config.in"
>>  source "package/libvpx/Config.in"
>>  source "package/madplay/Config.in"
>> @@ -129,6 +129,32 @@ source "package/vala/Config.in"
>>  source "package/yasm/Config.in"
>>  endmenu
>>
>> +menu "Filesystem and flash utilities"
>> +source "package/cifs-utils/Config.in"
>> +source "package/cramfs/Config.in"
>> +source "package/curlftpfs/Config.in"
>> +source "package/dosfstools/Config.in"
>> +source "package/e2fsprogs/Config.in"
>> +source "package/ecryptfs-utils/Config.in"
>> +source "package/exfat/Config.in"
>> +source "package/exfat-utils/Config.in"
>> +source "package/f2fs-tools/Config.in"
>> +source "package/flashbench/Config.in"
>> +source "package/genext2fs/Config.in"
>> +source "package/genromfs/Config.in"
>> +source "package/kobs-ng/Config.in"
>> +source "package/makedevs/Config.in"
>> +source "package/mtd/Config.in"
>> +source "package/nfs-utils/Config.in"
>> +source "package/ntfs-3g/Config.in"
>> +source "package/squashfs3/Config.in"
>> +source "package/squashfs/Config.in"
>> +source "package/sshfs/Config.in"
>> +source "package/sunxi-tools/Config.in"
>> +source "package/unionfs/Config.in"
>> +source "package/xfsprogs/Config.in"
>> +endmenu
>> +
>>  menu "Games"
>>  source "package/doom-wad/Config.in"
>>  source "package/gnuchess/Config.in"
>> @@ -154,8 +180,8 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
>>  source "package/fbset/Config.in"
>>  endif
>>  source "package/fbterm/Config.in"
>> -source "package/fbv/Config.in"
>>  source "package/fb-test-app/Config.in"
>> +source "package/fbv/Config.in"
>
> This is again caused by locale-dependent behavior of sort. In fact,
> strict ASCII ordering would put fb-test-app before any fbX, so before
> fbdump. This is probably better.
>
>>  source "package/imagemagick/Config.in"
>>  source "package/linux-fusion/Config.in"
>>  source "package/lite/Config.in"
>> @@ -187,18 +213,6 @@ source "package/qt5/Config.in"
>>  source "package/x11r7/Config.in"
>>  source "package/weston/Config.in"
>>
>> -comment "X libraries and helper libraries"
>> -source "package/liberation/Config.in"
>> -source "package/libsexy/Config.in"
>> -source "package/x11r7/xkeyboard-config/Config.in"
>> -
>> -comment "X Window managers"
>> -source "package/blackbox/Config.in"
>> -source "package/enlightenment/Config.in"
>> -source "package/fluxbox/Config.in"
>> -source "package/matchbox/Config.in"
>> -source "package/metacity/Config.in"
>> -
>>  comment "X applications"
>>  source "package/alsamixergui/Config.in"
>>  source "package/docker/Config.in"
>> @@ -220,44 +234,21 @@ source "package/xscreensaver/Config.in"
>>  source "package/xstroke/Config.in"
>>  source "package/xterm/Config.in"
>>  source "package/xvkbd/Config.in"
>> -endmenu
>>
>> -menu "Filesystem and flash utilities"
>> -source "package/cifs-utils/Config.in"
>> -source "package/cramfs/Config.in"
>> -source "package/curlftpfs/Config.in"
>> -source "package/dosfstools/Config.in"
>> -source "package/e2fsprogs/Config.in"
>> -source "package/ecryptfs-utils/Config.in"
>> -source "package/exfat/Config.in"
>> -source "package/exfat-utils/Config.in"
>> -source "package/f2fs-tools/Config.in"
>> -source "package/flashbench/Config.in"
>> -source "package/genext2fs/Config.in"
>> -source "package/genromfs/Config.in"
>> -source "package/kobs-ng/Config.in"
>> -source "package/makedevs/Config.in"
>> -source "package/mtd/Config.in"
>> -source "package/nfs-utils/Config.in"
>> -source "package/ntfs-3g/Config.in"
>> -source "package/squashfs/Config.in"
>> -source "package/squashfs3/Config.in"
>> -source "package/sshfs/Config.in"
>> -source "package/sunxi-tools/Config.in"
>> -source "package/unionfs/Config.in"
>> -source "package/xfsprogs/Config.in"
>> +comment "X libraries and helper libraries"
>> +source "package/liberation/Config.in"
>> +source "package/libsexy/Config.in"
>> +source "package/x11r7/xkeyboard-config/Config.in"
>> +
>> +comment "X Window managers"
>> +source "package/blackbox/Config.in"
>> +source "package/enlightenment/Config.in"
>> +source "package/fluxbox/Config.in"
>> +source "package/matchbox/Config.in"
>> +source "package/metacity/Config.in"
>>  endmenu
>>
>>  menu "Hardware handling"
>> -menu "Misc devices firmwares"
>> -source "package/am33x-cm3/Config.in"
>> -source "package/b43-firmware/Config.in"
>> -source "package/linux-firmware/Config.in"
>> -source "package/rpi-firmware/Config.in"
>> -source "package/sunxi-boards/Config.in"
>> -source "package/ux500-firmware/Config.in"
>> -source "package/zd1211-firmware/Config.in"
>> -endmenu
>>  source "package/a10disp/Config.in"
>>  source "package/acpid/Config.in"
>>  source "package/cdrkit/Config.in"
>> @@ -304,6 +295,15 @@ source "package/mdadm/Config.in"
>>  source "package/media-ctl/Config.in"
>>  source "package/memtester/Config.in"
>>  source "package/minicom/Config.in"
>> +menu "Misc devices firmwares"
>> +source "package/am33x-cm3/Config.in"
>> +source "package/b43-firmware/Config.in"
>> +source "package/linux-firmware/Config.in"
>> +source "package/rpi-firmware/Config.in"
>> +source "package/sunxi-boards/Config.in"
>> +source "package/ux500-firmware/Config.in"
>> +source "package/zd1211-firmware/Config.in"
>> +endmenu
>>  source "package/nanocom/Config.in"
>>  source "package/neard/Config.in"
>>  source "package/ofono/Config.in"
>> @@ -516,8 +516,8 @@ source "package/libpng/Config.in"
>>  source "package/libqrencode/Config.in"
>>  source "package/libraw/Config.in"
>>  source "package/librsvg/Config.in"
>> -source "package/libsvg/Config.in"
>>  source "package/libsvg-cairo/Config.in"
>> +source "package/libsvg/Config.in"
>
> Same here, libsvg should remain before libsvg-cairo.
>
>>  source "package/libsvgtiny/Config.in"
>>  source "package/libungif/Config.in"
>>  source "package/opencv/Config.in"
>> @@ -550,8 +550,8 @@ source "package/libqmi/Config.in"
>>  source "package/libraw1394/Config.in"
>>  source "package/libserial/Config.in"
>>  source "package/libsoc/Config.in"
>> -source "package/libusb/Config.in"
>>  source "package/libusb-compat/Config.in"
>> +source "package/libusb/Config.in"
>
> Same here.
>
>>  source "package/libv4l/Config.in"
>>  source "package/libxkbcommon/Config.in"
>>  source "package/mtdev/Config.in"
>> @@ -694,8 +694,8 @@ source "package/mtdev2tuio/Config.in"
>>  source "package/orc/Config.in"
>>  source "package/p11-kit/Config.in"
>>  source "package/poco/Config.in"
>> -source "package/protobuf/Config.in"
>>  source "package/protobuf-c/Config.in"
>> +source "package/protobuf/Config.in"
>
> Same here.
>
>>  source "package/schifra/Config.in"
>>  source "package/startup-notification/Config.in"
>>  source "package/tzdata/Config.in"
>> @@ -729,8 +729,8 @@ source "package/json-c/Config.in"
>>  source "package/json-glib/Config.in"
>>  source "package/libjson/Config.in"
>>  source "package/libroxml/Config.in"
>> -source "package/libxml-parser-perl/Config.in"
>>  source "package/libxml2/Config.in"
>> +source "package/libxml-parser-perl/Config.in"
>
> Same here.
>
>>  source "package/libxmlpp/Config.in"
>>  source "package/libxslt/Config.in"
>>  source "package/libyaml/Config.in"
>> @@ -856,12 +856,12 @@ source "package/pppd/Config.in"
>>  source "package/pptp-linux/Config.in"
>>  source "package/proftpd/Config.in"
>>  source "package/proxychains-ng/Config.in"
>> -source "package/ptpd/Config.in"
>>  source "package/ptpd2/Config.in"
>> +source "package/ptpd/Config.in"
>
> Same here.
>
>>  source "package/quagga/Config.in"
>>  source "package/radvd/Config.in"
>> -source "package/rp-pppoe/Config.in"
>>  source "package/rpcbind/Config.in"
>> +source "package/rp-pppoe/Config.in"
>
> Same here.
>
>>  source "package/rsh-redone/Config.in"
>>  source "package/rsync/Config.in"
>>  source "package/rtorrent/Config.in"
>> @@ -906,7 +906,6 @@ source "package/wpa_supplicant/Config.in"
>>  source "package/wvdial/Config.in"
>>  source "package/xinetd/Config.in"
>>  source "package/xl2tp/Config.in"
>> -
>>  endmenu
>>
>>  menu "Package managers"
>
> Best regards,
> Thomas
Thanks for your comments.
Thomas De Schampheleire Oct. 23, 2013, 2:52 p.m. UTC | #3
Hi Maxime,

On Wed, Oct 23, 2013 at 4:25 PM, Maxime Hadjinlian
<maxime.hadjinlian@gmail.com> wrote:
> On Wed, Oct 23, 2013 at 3:24 PM, Thomas De Schampheleire
> <patrickdepinguin@gmail.com> wrote:
>> Anyway, I don't think we should sort on the full line, but rather on
>> the package name, hence gstreamer < gstreamer1.
> Since the full line is the same for every packages, it should not
> matter during the sort if the locale used is C, should it ?

It does. Consider this:

$ echo -e 'gstreamer/Config\ngstreamer1/Config' | sort
gstreamer1/Config
gstreamer/Config
$ echo -e 'gstreamer/Config\ngstreamer1/Config' | LC_ALL=C sort
gstreamer/Config
gstreamer1/Config

If you don't use C locale, sort ignores the slash, while with C locale
the slash is taken into account.
So in the first case, you compare 1 with C, while in the second case,
you compare 1 with /.

Best regards,
Thomas
diff mbox

Patch

diff --git a/package/Config.in b/package/Config.in
index 0e6f86c..3db7089 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -9,8 +9,8 @@  source "package/bellagio/Config.in"
 source "package/faad2/Config.in"
 source "package/ffmpeg/Config.in"
 source "package/flac/Config.in"
-source "package/gstreamer/Config.in"
 source "package/gstreamer1/Config.in"
+source "package/gstreamer/Config.in"
 source "package/lame/Config.in"
 source "package/libvpx/Config.in"
 source "package/madplay/Config.in"
@@ -129,6 +129,32 @@  source "package/vala/Config.in"
 source "package/yasm/Config.in"
 endmenu
 
+menu "Filesystem and flash utilities"
+source "package/cifs-utils/Config.in"
+source "package/cramfs/Config.in"
+source "package/curlftpfs/Config.in"
+source "package/dosfstools/Config.in"
+source "package/e2fsprogs/Config.in"
+source "package/ecryptfs-utils/Config.in"
+source "package/exfat/Config.in"
+source "package/exfat-utils/Config.in"
+source "package/f2fs-tools/Config.in"
+source "package/flashbench/Config.in"
+source "package/genext2fs/Config.in"
+source "package/genromfs/Config.in"
+source "package/kobs-ng/Config.in"
+source "package/makedevs/Config.in"
+source "package/mtd/Config.in"
+source "package/nfs-utils/Config.in"
+source "package/ntfs-3g/Config.in"
+source "package/squashfs3/Config.in"
+source "package/squashfs/Config.in"
+source "package/sshfs/Config.in"
+source "package/sunxi-tools/Config.in"
+source "package/unionfs/Config.in"
+source "package/xfsprogs/Config.in"
+endmenu
+
 menu "Games"
 source "package/doom-wad/Config.in"
 source "package/gnuchess/Config.in"
@@ -154,8 +180,8 @@  if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/fbset/Config.in"
 endif
 source "package/fbterm/Config.in"
-source "package/fbv/Config.in"
 source "package/fb-test-app/Config.in"
+source "package/fbv/Config.in"
 source "package/imagemagick/Config.in"
 source "package/linux-fusion/Config.in"
 source "package/lite/Config.in"
@@ -187,18 +213,6 @@  source "package/qt5/Config.in"
 source "package/x11r7/Config.in"
 source "package/weston/Config.in"
 
-comment "X libraries and helper libraries"
-source "package/liberation/Config.in"
-source "package/libsexy/Config.in"
-source "package/x11r7/xkeyboard-config/Config.in"
-
-comment "X Window managers"
-source "package/blackbox/Config.in"
-source "package/enlightenment/Config.in"
-source "package/fluxbox/Config.in"
-source "package/matchbox/Config.in"
-source "package/metacity/Config.in"
-
 comment "X applications"
 source "package/alsamixergui/Config.in"
 source "package/docker/Config.in"
@@ -220,44 +234,21 @@  source "package/xscreensaver/Config.in"
 source "package/xstroke/Config.in"
 source "package/xterm/Config.in"
 source "package/xvkbd/Config.in"
-endmenu
 
-menu "Filesystem and flash utilities"
-source "package/cifs-utils/Config.in"
-source "package/cramfs/Config.in"
-source "package/curlftpfs/Config.in"
-source "package/dosfstools/Config.in"
-source "package/e2fsprogs/Config.in"
-source "package/ecryptfs-utils/Config.in"
-source "package/exfat/Config.in"
-source "package/exfat-utils/Config.in"
-source "package/f2fs-tools/Config.in"
-source "package/flashbench/Config.in"
-source "package/genext2fs/Config.in"
-source "package/genromfs/Config.in"
-source "package/kobs-ng/Config.in"
-source "package/makedevs/Config.in"
-source "package/mtd/Config.in"
-source "package/nfs-utils/Config.in"
-source "package/ntfs-3g/Config.in"
-source "package/squashfs/Config.in"
-source "package/squashfs3/Config.in"
-source "package/sshfs/Config.in"
-source "package/sunxi-tools/Config.in"
-source "package/unionfs/Config.in"
-source "package/xfsprogs/Config.in"
+comment "X libraries and helper libraries"
+source "package/liberation/Config.in"
+source "package/libsexy/Config.in"
+source "package/x11r7/xkeyboard-config/Config.in"
+
+comment "X Window managers"
+source "package/blackbox/Config.in"
+source "package/enlightenment/Config.in"
+source "package/fluxbox/Config.in"
+source "package/matchbox/Config.in"
+source "package/metacity/Config.in"
 endmenu
 
 menu "Hardware handling"
-menu "Misc devices firmwares"
-source "package/am33x-cm3/Config.in"
-source "package/b43-firmware/Config.in"
-source "package/linux-firmware/Config.in"
-source "package/rpi-firmware/Config.in"
-source "package/sunxi-boards/Config.in"
-source "package/ux500-firmware/Config.in"
-source "package/zd1211-firmware/Config.in"
-endmenu
 source "package/a10disp/Config.in"
 source "package/acpid/Config.in"
 source "package/cdrkit/Config.in"
@@ -304,6 +295,15 @@  source "package/mdadm/Config.in"
 source "package/media-ctl/Config.in"
 source "package/memtester/Config.in"
 source "package/minicom/Config.in"
+menu "Misc devices firmwares"
+source "package/am33x-cm3/Config.in"
+source "package/b43-firmware/Config.in"
+source "package/linux-firmware/Config.in"
+source "package/rpi-firmware/Config.in"
+source "package/sunxi-boards/Config.in"
+source "package/ux500-firmware/Config.in"
+source "package/zd1211-firmware/Config.in"
+endmenu
 source "package/nanocom/Config.in"
 source "package/neard/Config.in"
 source "package/ofono/Config.in"
@@ -516,8 +516,8 @@  source "package/libpng/Config.in"
 source "package/libqrencode/Config.in"
 source "package/libraw/Config.in"
 source "package/librsvg/Config.in"
-source "package/libsvg/Config.in"
 source "package/libsvg-cairo/Config.in"
+source "package/libsvg/Config.in"
 source "package/libsvgtiny/Config.in"
 source "package/libungif/Config.in"
 source "package/opencv/Config.in"
@@ -550,8 +550,8 @@  source "package/libqmi/Config.in"
 source "package/libraw1394/Config.in"
 source "package/libserial/Config.in"
 source "package/libsoc/Config.in"
-source "package/libusb/Config.in"
 source "package/libusb-compat/Config.in"
+source "package/libusb/Config.in"
 source "package/libv4l/Config.in"
 source "package/libxkbcommon/Config.in"
 source "package/mtdev/Config.in"
@@ -694,8 +694,8 @@  source "package/mtdev2tuio/Config.in"
 source "package/orc/Config.in"
 source "package/p11-kit/Config.in"
 source "package/poco/Config.in"
-source "package/protobuf/Config.in"
 source "package/protobuf-c/Config.in"
+source "package/protobuf/Config.in"
 source "package/schifra/Config.in"
 source "package/startup-notification/Config.in"
 source "package/tzdata/Config.in"
@@ -729,8 +729,8 @@  source "package/json-c/Config.in"
 source "package/json-glib/Config.in"
 source "package/libjson/Config.in"
 source "package/libroxml/Config.in"
-source "package/libxml-parser-perl/Config.in"
 source "package/libxml2/Config.in"
+source "package/libxml-parser-perl/Config.in"
 source "package/libxmlpp/Config.in"
 source "package/libxslt/Config.in"
 source "package/libyaml/Config.in"
@@ -856,12 +856,12 @@  source "package/pppd/Config.in"
 source "package/pptp-linux/Config.in"
 source "package/proftpd/Config.in"
 source "package/proxychains-ng/Config.in"
-source "package/ptpd/Config.in"
 source "package/ptpd2/Config.in"
+source "package/ptpd/Config.in"
 source "package/quagga/Config.in"
 source "package/radvd/Config.in"
-source "package/rp-pppoe/Config.in"
 source "package/rpcbind/Config.in"
+source "package/rp-pppoe/Config.in"
 source "package/rsh-redone/Config.in"
 source "package/rsync/Config.in"
 source "package/rtorrent/Config.in"
@@ -906,7 +906,6 @@  source "package/wpa_supplicant/Config.in"
 source "package/wvdial/Config.in"
 source "package/xinetd/Config.in"
 source "package/xl2tp/Config.in"
-
 endmenu
 
 menu "Package managers"