diff --git a/suse_update_desktop_file.sh b/suse_update_desktop_file.sh index 23c48b0..5b1c4fe 100644 --- a/suse_update_desktop_file.sh +++ b/suse_update_desktop_file.sh @@ -275,26 +275,24 @@ done echo "" >> "${FILE}" CAT="${CAT#;}" if grep -q ^Categories= $FILE; then - sed -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^Categories=.*,Categories='${CAT}',' "$FILE" > "${FILE}.new" && - mv "${FILE}.new" "${FILE}" + sed -i -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^Categories=.*,Categories='${CAT}',' "$FILE" else if [ -n "${CAT%;}" ]; then - sed -e '/^\[Desktop Entry\]/a \ -'"Categories=${CAT%;};" $FILE > ${FILE}_ && mv ${FILE}_ $FILE + sed -i -e '/^\[Desktop Entry\]/a \ +'"Categories=${CAT%;};" $FILE fi fi if [ "$UNIMPORTANT" = "yes" ]; then if grep -q ^NoDisplay= $FILE; then - sed -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^NoDisplay=.*,NoDisplay=true,' "$FILE" > "${FILE}.new" && - mv "${FILE}.new" "${FILE}" + sed -i -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^NoDisplay=.*,NoDisplay=true,' "$FILE" else - sed -e '/^\[Desktop Entry\]/a \ -NoDisplay=true' $FILE > ${FILE}_ && mv ${FILE}_ $FILE + sed -i -e '/^\[Desktop Entry\]/a \ +NoDisplay=true' $FILE fi fi if [ "$DOCID" ]; then - sed -e '/^\[Desktop Entry\]/a \ -'"X-SuSE-DocTeamID=$DOCID" $FILE > ${FILE}_ && mv ${FILE}_ $FILE + sed -i -e '/^\[Desktop Entry\]/a \ +'"X-SuSE-DocTeamID=$DOCID" $FILE fi # @@ -324,8 +322,8 @@ if [ -n "$DOCPATH" ] ; then mv "${FILE}.new" "${FILE}" fi else - sed -e '/^\[Desktop Entry\]/a \ -'"DocPath=${DOCPATH}" $FILE > ${FILE}.new && mv ${FILE}.new $FILE + sed -i -e '/^\[Desktop Entry\]/a \ +'"DocPath=${DOCPATH}" $FILE if $DOCPATH_IS_GUESS ; then echo NOTE: suse_update_desktop_file: Guessing DocPath=$DOCPATH in $FILE fi @@ -338,41 +336,41 @@ if grep -q ^X-SuSE-translate= $FILE; then fi if [ "$NAME" != "no" ]; then - grep -v '^Name\[' $FILE > ${FILE}_ + sed -i -e '/^Name\[/d' $FILE if [ -n "$NAME" ]; then - if ! grep -q ^Name= ${FILE}_; then - sed -e '/^\[Desktop Entry\]/a '"Name=${NAME//,/\,}" ${FILE}_ > $FILE + if ! grep -q ^Name= ${FILE}; then + sed -i -e '/^\[Desktop Entry\]/a '"Name=${NAME//,/\,}" ${FILE} else - sed -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^Name=.*,Name='"${NAME//,/\,}"',' ${FILE}_ > $FILE + sed -i -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^Name=.*,Name='"${NAME//,/\,}"',' ${FILE} fi else - grep -v "^Name=" ${FILE}_ > $FILE + sed -i -e '/^Name=/d' $FILE fi fi if [ "$GNAME" != "no" ]; then - grep -v '^GenericName\[' $FILE > ${FILE}_ + sed -i -e '/^GenericName\[/d' $FILE if [ -n "$GNAME" ]; then if ! grep -q ^GenericName= ${FILE}_; then - sed -e '/^\[Desktop Entry\]/a '"GenericName=${GNAME//,/\,}" ${FILE}_ > $FILE + sed -i -e '/^\[Desktop Entry\]/a '"GenericName=${GNAME//,/\,}" ${FILE} else - sed -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^GenericName=.*,GenericName='"${GNAME//,/\,}"',' ${FILE}_ > $FILE + sed -i -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^GenericName=.*,GenericName='"${GNAME//,/\,}"',' ${FILE} fi else - grep -v "^GenericName=" ${FILE}_ > $FILE + sed -i -e '/^GenericName=/d' $FILE fi fi if [ "$COMMENT" != "no" ]; then - grep -v '^Comment\[' $FILE > ${FILE}_ + sed -i -e '/^Comment\[/d' $FILE if [ -n "$COMMENT" ]; then - if ! grep -q ^Comment= ${FILE}_; then - sed -e '/^\[Desktop Entry\]/a '"Comment=${COMMENT//,/\,}" ${FILE}_ > $FILE + if ! grep -q ^Comment= ${FILE}; then + sed -i -e '/^\[Desktop Entry\]/a '"Comment=${COMMENT//,/\,}" ${FILE} else - sed -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^Comment=.*,Comment='"${COMMENT//,/\,}"',' ${FILE}_ > $FILE - fi + sed -i -e '/^\[Desktop Entry\]/,/(\[.*|$)/ s,^Comment=.*,Comment='"${COMMENT//,/\,}"',' ${FILE} + fi else - grep -v "^Comment=" ${FILE}_ > $FILE + sed -i -e '/^Comment=/d' $FILE fi fi @@ -380,6 +378,6 @@ if [ "$I18N" = "no" ]; then # # this file will not get translated # - sed -e '/^\[Desktop Entry\]/a \ -X-SuSE-translate=false' $FILE > ${FILE}_ && mv ${FILE}_ $FILE + sed -i -e '/^\[Desktop Entry\]/a \ +X-SuSE-translate=false' $FILE fi diff --git a/update-desktop-files.changes b/update-desktop-files.changes index d04df9b..28fe7aa 100644 --- a/update-desktop-files.changes +++ b/update-desktop-files.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri Dec 16 09:49:24 UTC 2011 - coolo@suse.com + +- use sed with inline option to avoid leaving temporary files behind + ------------------------------------------------------------------- Thu Dec 15 12:44:49 UTC 2011 - coolo@suse.com diff --git a/update-desktop-files.spec b/update-desktop-files.spec index b993eec..0182a4d 100644 --- a/update-desktop-files.spec +++ b/update-desktop-files.spec @@ -15,7 +15,6 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # - Name: update-desktop-files Version: 12.1 Release: 0