| finalSize currentSize advancement downloadUrl | downloadUrl := 'https://datahub.io/dataset/06f27df3-ec88-47ea-b428-7ec138f7835e/resource/50a9bda8-e44a-4aac-b265-d07fabde5612/download/offshore-leaks.sqlite.zip'. finalSize := 54488249. advancement := 0. (FileLocator temp / 'offshore-leaks.sqlite.zip') ensureDelete. [ [ :bar | bar title: 'Downloading database...'. [ ZnClient new url: downloadUrl; signalProgress: true; downloadTo: FileLocator temp ] on: HTTPProgress do: [ :progress | (FileLocator temp / 'offshore-leaks.sqlite.zip') exists ifTrue: [ currentSize := (FileLocator temp / 'offshore-leaks.sqlite.zip') size. currentSize > 0 ifTrue: [advancement := (currentSize / finalSize) * 100] ]. bar current: advancement. progress resume ] ] asJob run ] fork.