Changeset 4609


Ignore:
Timestamp:
May 5, 2017, 2:26:02 PM (2 years ago)
Author:
Juanma
Message:

Add category "GTK" to the desktop when it only has one non-freedesktop category

File:
1 edited

Legend:

Unmodified
Added
Removed
  • devtools/desktop_to_xml/desktop_to_xml.sh

    r4589 r4609  
    1313msg_selected_file="\nSelected file: %s\n\n"
    1414msg_select_dir="\nSelect the dir containing the desktop file:\n"
    15 msg_gen_metainfo="Generating metainfo data path\n"
     15msg_gen_metainfo="Generating metainfo data path %s\n"
    1616msg_parsing_desktop="Parsing %s\n"
    1717msg_metainfo_generated="\nMetainfo file generated.\n"
     
    2727msg_rules_old_format="\n********** WARNING!!!! **********\nrules file has an old format.\nIt's HIGHLY recommended to update it to the new rules format.\n *************************** \n"
    2828msg_select_pkg="\nSelect the name of the package to process\n"
     29msg_desktop_not_found="\nDesktop file not found at %s. Process aborted.\n"
    2930
    3031function usage_help
     
    178179        #Find the desktop file of the application
    179180        desktopFiles=$(find . -name "*.desktop")
    180         printf "$msg_gen_metainfo"
     181        if [[ ! $desktopFiles ]]
     182        then
     183                printf "$msg_desktop_not_found" $wrkDir
     184                exit 1
     185        fi
    181186        for desktopFile in $desktopFiles
    182187        do
     
    194199                fi
    195200                metainfoDir=$metainfoDir"/metainfo"
     201                printf "$msg_gen_metainfo" $metainfoDir
    196202                mkdir $metainfoDir -p
    197203                parse_desktop $metainfoDir $desktopFile
     
    261267                                commentArrayIndex++
    262268                        } else if ($1=="Categories") {
     269                                customCat=0
     270                                countCat=0
    263271                                split($2,array,";",seps)
    264272                                for (catIndex in array)
     
    266274                                        if (array[catIndex]!="")
    267275                                        {
    268                                                 if (array[catIndex]~"LliureX-")
     276                                                if (array[catIndex]~"-")
    269277                                                {
     278                                                        customCat=1
    270279                                                        split(array[catIndex],lliurexCats,"-",seps)
    271280                                                        for (lliurexCatIndex in lliurexCats)
     
    277286                                                        categoryArray[catIndex]="<category>"array[catIndex]"</category>"
    278287                                                }
     288                                                countCat++
    279289                                        }
     290                                }
     291                                if (customCat==1 && countCat==1)
     292                                {
     293                                        if (substr($0,length($0),1)==";")
     294                                                $0=$0"GTK"
     295                                        else
     296                                                $0=$0;"GTK"
    280297                                }
    281298                        } else  if ($1=="Icon") {
     
    285302                                $0=$1"="iconBaseName
    286303        #                       split(iconBaseName,array,".",seps)
    287                                 tagIcon="<icon type=\"cached\">"iconBaseName"</icon>";
     304                                tagIcon="<icon type=\"stock\">"iconBaseName"</icon>";
    288305                        } else if ($1=="Exec") {
    289306                                if (execPrinted==0)
Note: See TracChangeset for help on using the changeset viewer.