Skip to content
Foggalong edited this page Nov 25, 2014 · 8 revisions

With the release of v1.0 I thought it wise to delete the many pre-releases that I issued on GitHub. For record keeping, here they all are.

Initial release of the project. The aim is to create some software that can reliably and safely fix the problem of hardcoded icons.

Basic functionality is now in place. Running the script will either fix or unfix icons depending on the flag and all online files are up to date. Still to be implemented are the complete fixing list, moving to bash for operating, online database and crucially icon copying to hicolor.

Improvement on readability courtesy of Phantom94.

  • Switched from python3 to bash
  • Improved functionality
  • Improved efficiency
  • Doesn't currently work

Everything is ready now. The script has been completely rewritten in bash, tidied and cleaned and checked for all the currently supported applications. All the documentation has been updated and now it's ready to go! This is the last pre-release version and all that stands between this and a full release is having all the .desktop files verified and a final round of bug checking.

Decided it would be better to add features and fix all known bugs before release. Thanks to Tom van der Lee and for their brilliant help with this release.

  • Added more support
  • Bash standards compliance
  • Existence checks on data files & directory
  • Checks wget is installed
  • Added proper flag support
  • Added helpful help page
  • Fixed root privileges being needed unnecessarily
  • Code clean up
  • Place holder "unfix" mode
  • Unfixing now implemented (known issues)
  • Removed Herobrine
  • Fixed broken unfixing mode
  • Restructured theme support lists
  • Added all four Numix icon themes
  • Added Nitrux support for all four icon themes
  • Added three new supported applications
  • Added support documentation for elementary XFCE
  • Fixed the beast - #15. May it never return.
  • Stopped launcher changing unnecessary parts of the icon line
  • Switched "unfix" for "revert"
  • Spelling and grammatical fixes
  • Laid path for Isis and KotusWorks support

Or "reverting" as we're supposed to call it.

  • Fixed problem with TimeShift
  • Fixed problem with reverting launchers
  • Added local mode that doesn't need root
  • Added local revert mode that doesn't need root
  • Update documentation
  • Added run log
  • Added smart reversion - knows whether it needs to be local or global
  • Added GNOME Weather (Arch)
  • Added support documentation for KotusWorks
  • Name not necessarily unique so switched to $launcher
  • Supported parallel Steam and non-Steam local launchers
  • Fixed a lot of the problems we were having with permissions
  • Permission problems still exist though, specifically with Arch users
  • To 1337 for us

This is a pretty hefty release. If you've used the script previously you'll be best to revert everything using your current version and then refix with this new version.

I was hoping to have the two major outstanding issues fixed for this release but it seems that is not to be so. Oh well.

  • Updated documentation
  • Support for more applications
  • Fixed echo errors
  • Updated fix.py (dev)

There's not much left to do now. There'll be a version where all the launchers are finally verified and fixed any remaining formatting problems but that's it. v0.8.3 will be the last prerelease as long as nothing else major crops up.

  • Finally works on elementary OS through reimplementing $IFS
  • Fixed issued with Arch through proper useage of $SUDO_USER
  • Added new Kotus icons
  • Added support for new applications

I've made a lot of changes, justifications for which are below.

  • Cleaned code

    • Switched to condensed if/while statements
    • Using 'if ! statement' rather than passing
    • Timeout as function
    • Repeated variables predefined
    • Formatting corrections as function
    • Consistent multiline echo format
    • Cleaner markdown
  • Removed smart reversion Smart reversion was initially introduced to make up for gaps in my bash knowledge. Now I have a better command of the language the new way thing are fixed means it doens't matter if a launcher is fixed multiple times.

  • Removed local storage We no longer utilise a data direcotry stored on the local computer. I made this decision while refactoring the fixing code and noticed that parts of the script required internet access but downloaded other files wither the logic that it would be good to have them stored offline.

  • Steamlined updating

    • fix.sh doesn't require a seperate file containing the date
    • app list doens't require a seperate file containing the date
    • Removed automatic fix.sh updating Because this script is packaged in the AUR, the bpkg, and potentially elsewhere in future having an internal update mechanism will only confuse things.
  • Better error handling

    • Function for error + timeout (gerror)
    • No longer removes data dir if error occurs

It occurred to me while working on 0.9.2 (previously to be 0.9.1) that every time I clone this repo I'm also cloning all of the documentation. To fix this I've switched to using for GitHub's inbuilt wiki feature for additional documentation.