Many improvements.
Installer mode now working
MakeShortCut and DeleteShortCut for Windows and Linux(alpha)
Full source tree available. Install UpdatePack and click [Download/Update component]
As promised, LazAutoUpdate has been rewritten and updated. (now V0.2.6)
The Update Pack has also been revamped.
LazAutoUpdate now works with SourceForge and GitHub.
It adheres to Windows 10 security policies
AutoUpdate is getting a rewrite due to SF's new download protocol.
All trayicon stuff updated Nov 2016
Cross-compiles Win 32/64 and Linux 32/64
Source re-written to support:
Laz 1.7 / fpc 3.1.1 (with UTF8 support)
New Sourceforge download protocols
Now available via getmem's Online Package Manager
Compiled versions of executables available from files section
The LazAutoUpdate component is now published under a Modified GPL licence.
This means that you can use and distribute it under the same conditions as any other component distributed with Lazarus. There is no requirement to distribute your source code for instance, with closed source commercial projects.
LazAutoupdate has been behaving stably in all my tests.
If you find any problems, please post a ticket on this site.
thank you,
minesadorada.
LazAutoUpdate component updated v0.1.23
Still improving the Bitrock installers.
Current installers for Windows and Linux are functional, but improvements to come:
1. Better support for Windows x64
2. Better shortcuts for Linux
as always... watch this space!
I'm currently in the process of cleaning up the folder structures and implementing a better deployment system for the various OS's
Windows 32-bit and 64-bit
Linux 32-bit and 64-bit
I'm using CodeTyphoon V5 to compile all the LazAutoUpdate projects to the multiple platforms.
There is one incompatability with 'standard' Lazarus:
The package 'laz_synapse' is replaced by 'pl_synapse'
If you wish to use standard Lazarus/fpc to compile the LazAutoUpdate code, just replace the dependency on pl_synapse with laz_synapse and it should compile just fine.... read more
The latest Linux installer is greatly improved.
Bitrock Installbuilder can be quite complicated!
LazAutoUpdate now uses Bitrock Installbuilder for its installers. So the Linux 64-bit version now has a proper installer :)
Bitrock kindly donated a free open source licence for this project.
Both apps are in final Windows testing phase. Minor bugfixes uploaded today, so 'check for updates'
Installers will shortly be changed to BitRock multiplatform installers. Bitrock was kind enough to donate a free license for the LazAutoUpdate project.
Thanks guys!
Due to a programming error, the Systray Service wasn't updating a running app correctly (including it's self-update)
This is now fixed. Updates to Windows and Linux versions posted.
Feedback to this project would be appreciated either via the Lazarus forum (http://forum.lazarus.freepascal.org/) or via a review on this site.
Due to a simple programming error, Systray Notifier <= 0.1.3.0 will not import downloaded configurations correctly.
Please re-install Update Pack to correct this error.
On another note, both UpdatePack and AutoUpdater Systray can now take the command-line parameter 'debug' which triggers the apps to record a detailed log of all operations. This can assist you in diagnosing any problems.
LazAutoUpdater is now incorporated into the Update Pack installer package.
Currently Windows 32-bit, but Linux version will follow very shortly.
LazAutoUpdate component has 2 new public methods to aid integration with the systray updater:
Now 99% done.
Working fine under windows. It updates on schedule whether the app-to-be-updated is running or not.
Linux - I need to finish the code for when the updated app is running.
UpdatePack will have an option whether to specify an updating schedule or not, and whether to override the User's preferences.
UpdatePack -> 0.0.11
* See the WhatsNew for details
LazAutoUpdater (alpha2) -> V0.1.1.0 (only available in updates until Beta)
There are still a few bugs to fix in LazAutoUpdater, and it is undergoing testing.
It's been a long hard road, but the Tray Updater code is operational at last.
Here's how it works:
* Initially it is deployed either with an application or standalone. It can go into any local folder.
* It holds a list of 'Update Profiles' in a local configuration file. The default entry is of course itself.
* Every minute or so, it takes a look in the Application Common data folder (varies from OS to OS) for the file 'lauimport.ini' If it finds it, the information is copied/updated as a profile entry in the local config file, and the lauimport.ini is deleted.
* A new app installation should deploy a 'lauimport.ini' in order to get the benefit of TrayIcon updates straightaway
* The UpdatePack will automatically make a lauimport.ini file as part of the package
* The LazAutoUpdate component has full support for silent updates using this system
* The updatehm updater, if it finds a 'lauimport.ini' in the update zip will automatically copy it to the correct location, ready for the SysTray Updater to pick up and use
* Each profile contains all the information requited to do a silent update at a specified interval.
* This information can be altered or configured by the user via a configuration form
* Each profile can check/update to it's own schedule - daily, weekly or monthly... read more
Version 0.0.10 of Updatepack is available for Linux 64-bit via Help/Check for updates
The LazAutoUpdate component is also at 0.1.10 with the addition of a new Public Function: AppIsActive(Exename:String):Boolean
This function works with both Windows and Linux
It marks another step closer to the TrayNotifier App, which needs to be able to do its update whether the app is running or not.
As usual; watch this space!
It's proving quite a task to code Tray Notifier.
Originally LazAutoUpdate was a simple process whereby it was 'grounded' in the directory of the application it was updating, but Tray Notifier needs the ability to do a 'remote' update from it's own directory.
Also, the check, download and install should be silent and automatic (it might happen at 3am!) so there have been some changes to the LazAutoUpdate component to accommodate this.... read more
Currently in the last stages of coding this app (Sept 2014)
TrayNotifier will it even easier for your users to keep your applications up-to-date.
If you are an UopdatePack user, you may have noticed that it makes a new INI file (lauimport.ini) to include in your Zipfile update. This is in anticipation of TrayNotifier deployment.
If lauimport.ini is present in the Zipfile, the updatehm updater will modify and copy it to your system's Application Data directory, in the subdirectory 'updatehm'... read more
Having developed the LazAutoUpdate system, the component itself is very easy to integrate into a Lazarus app - all well and good - but deploying an update still meant manually editing an INI file, making up an update zipfile and a new whatsnew textfile for every update.
So I made the UpdatePack GUI which automates the whole process.
The key to UpdatePack is profiles. Each profile contains all the information needed to deploy an update, so a new update deployment entails:
1. Fire up UpdatePack, and choose the appropriate profile
2. Update the version number of the app
3. Fire up the whatsnew editor, and update the text
4. Click the 'Create Update Pack' button... read more